簡介
對單片機最早的認識是大一的時候刷到的C51單片機,那時候玩了一陣子感覺可玩性不高,后來有了解到Arduino,買了兩Uno回來用Arduino開發感覺可玩性和快速開發都比C51強多了,再后來了解了NodeMCU這玩意,又入手了Esp8266、Esp32、Esp32 Cam、STM32,當時還是用的Arduino軟體去參考各個帖子(自己做了些修以備自查)配置三者的開發環境,單單是一個esp8266的開發環境當時就配置了很久,更不用說Esp32、cam、stm32了,以至于后面配置的stm32都無法使用,,,,
而且換電腦之后就不想再折騰環境了,,,,真的耗費時間,現在2020年啊,怎么還會有那么愚蠢的軟體環境設計???于是在經過一番查找了解了PlatformIO,支持跨平臺開發世界上的絕大多數板子,一鍵配置開發環境,這么香
這里以Esp8266為例
安裝PlatformIO
首先要安裝VS code,然后在VS code里面安裝PlatformIO IDE即可

裝開發板 與 第一個Demo


Framework講解
在選擇NodeMCU 1.0之后,框架就有四種選擇 Arduino、Simba、ESP8266 RTOS SDK、ESP8266 Non-OS SDK
Arduino框架用過Arduino開發的盆友都知道是啥東西;
Simba真不了解,,,,
最后兩是樂鑫自家推出的框架,
ESP8266 RTOS SDK是基于FreeRTOS,在GitHub上開源,
RTOS版本SDK使用FreeRTOS系統,引入OS多任務處理機制,用戶可以使用FreeRTOS的標準介面實作資源管理、回圈操作、任務內延時、任務間資訊傳遞和同步等面向任務流程的設計方式,RTOS版本兼容non-OS SDK中WiFi介面、SmartConfig介面、Sniffer相關介面、系統介面、定時器介面、FOTA介面和外圍驅動介面,不支持AT實作,
Non-OS 是不基于作業系統的SDK,提供IOT_Demo和AT的編譯,Non-OS SDK主要使用定時器和回呼函式的方法實作各個功能事件的嵌套,達到特定條件下觸發特定功能函式的目的,
那選擇困難癥來了,選哪一個???
ESP8266_RTOS_SDK’s framework is quite outdated and different from the current esp-idf and we are planning to migrate ESP8266_RTOS_SDK to esp-idf eventually after v2.0.0.
根據基友站點的描述,樂鑫認為 ESP8266_RTOS_SDK已經過時了,,,樂鑫打算在Esp-IDF v2之后把 ESP8266_RTOS_SDK納入IDF中,但截至2020,10,23在Esp12系列的Framework中還沒出現IDF選項,,,
However, we will firstly provide a new version of ESP8266 SDK (ESP8266_RTOS_SDK v3.0), which shares the same framework with esp-idf (esp-idf style), as a work-around, because the multi-CPU architecture is not supported by esp-idf for the time being.
后面又說道先推出具有和IDF相似架構的ESP8266_RTOS_SDK v3.0,阿哲,那我還是先選擇Arduino框架吧

選擇好引數、設定好專案名稱之后就可以點擊Finish完成了,然后等待第一次自動配置環境,8:45-8:47,這速度感人嗎??反正我是感到了


#include <Arduino.h>
void setup() {
// put your setup code here, to run once:
pinMode(LED_BUILTIN, OUTPUT);
}
void loop() {
// put your main code here, to run repeatedly:
digitalWrite(LED_BUILTIN, LOW);
delay(1000);
digitalWrite(LED_BUILTIN, HIGH);
delay(1000);
}
編輯完成代碼之后點擊最下面的鉤鉤開始編譯,編譯完成之后(當然要把開發板插上啦)點擊水平箭頭上傳


效果
開發板上的燈一閃一閃的,別問我為什么我圖里的沒有閃,

References
- NodeMCU開發環境搭建之PlatformIO (ESP8266)
- PlatformIO Esp8266 Esp32 Arduino 解決庫下載失敗問題(Libraries: Could not install library)
- ESP32-S2 support status in ESP-IDF
- ESP32 物聯網開發框架 ESP-IDF 版本推薦
- espressif/ESP8266_RTOS_SDK - Github
- ESP8266_RTOS_SDK (IDF Style) Programming Guide
- 聊聊ESP8266的SDK(ESP8266_RTOS_SDK v3.3 環境搭建)
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/191579.html
標籤:python
