前書き
MCUの最初の知識は、新入生の年にブラッシングしたC51 MCUです。そのとき、しばらく遊んでいて、プレイアビリティが高くないと感じていました。その後、Arduinoについて学び、Unoを2つ購入して、Arduinoで開発に戻り、プレイアビリティと急速な発展を感じました。それらはC51よりもはるかに優れています。後でNodeMCUについて学び、Esp8266、Esp32、Esp32 Cam、STM32から始めました。そのときも、Arduinoソフトウェアを使用してさまざまな投稿を参照していました(自己診断のためにいくつかの変更を行いました)。構成3開発者の開発環境は、esp8266開発環境だけであり、Esp32、cam、stm32は言うまでもなく、長い間構成されていたため、後で構成されたstm32は使用できません。。。。
そして、コンピュータを変更した後、私はもう環境を投げたくありません。。。。本当に時間がかかります。2020年に、なぜこんなに馬鹿げたソフトウェア環境の設計があるのでしょうか。??そこで、いくつか検索した後、クロスプラットフォーム開発の世界でほとんどのボードをサポートするPlatformIOと、ワンクリックの構成開発環境について学びました。
これがEsp8266の例です
PlatformIOをインストールします
最初にVSコードをインストールし、次にVSコードにPlatformIOIDEをインストールします
開発ボードと最初のデモをインストールします
フレームワークの説明
。アルドゥイーノ、シンバ、ESP8266 RTOS SDK、いESP8266非OS SDK誰でも:NodeMCU 1.0を選択した後、フレームワークは、4つの選択肢がある開発するのArduinoを使用
Arduinoの、フレームワークは、それが何であるかを知っている
シンバは本当に理解していませんが。。。。
最後の2つは、
Espressifによって起動されたフレームワークです。ESP8266RTOSSDKはFreeRTOSに基づいており、GitHubのオープンソースです。
RTOSバージョンSDKは、FreeRTOSシステムを使用し、OSマルチタスクメカニズムを導入しています。ユーザーは、FreeRTOS標準インターフェイスを使用して、リソース管理、サイクル操作、タスク内遅延、タスク間情報転送および同期などのタスク指向の設計方法を実装できます。RTOSバージョンは、非OS SDKのWiFiインターフェイス、SmartConfigインターフェイス、Sniffer関連インターフェイス、システムインターフェイス、タイマーインターフェイス、FOTAインターフェイス、およびペリフェラルドライバインターフェイスと互換性があり、AT実装をサポートしていません。
Non-OSは、オペレーティングシステムに基づかないSDKであり、IOT_DemoとATのコンパイルを提供します。Non-OS SDKは、主にタイマーとコールバック関数を使用して、さまざまな機能イベントのネストを実装し、特定の条件下で特定の機能機能をトリガーする目的を達成します。
選択は難しいですが、どれを選択しますか???
ESP8266_RTOS_SDKのフレームワークはかなり古く、現在のesp-idfとは異なります。最終的には、v2.0.0以降にESP8266_RTOS_SDKをesp-idfに移行する予定です。
ベースフレンドサイトの説明によると、EspressifはESP8266_RTOS_SDKが古くなっていると考えています。。。Espressifは、Esp-IDFv2の後にESP8266_RTOS_SDKをIDFに組み込むことを計画しています。ただし、2020、10、および23の時点では、IDFオプションはEsp12シリーズのフレームワークにまだ表示されていません。。。
ただし、回避策として、esp-idf(esp-idfスタイル)と同じフレームワークを共有するESP8266 SDKの新しいバージョン(ESP8266_RTOS_SDK v3.0)を最初に提供します。これは、マルチCPUアーキテクチャがサポートされていないためです。とりあえずesp-idfで。
後で、IDFと同様のアーキテクチャを持つESP8266_RTOS_SDK v3.0を最初に起動すると言いました。Azhe、次にArduinoフレームワークを選択する必要があります。
パラメータを選択してプロジェクト名を設定したら、[完了]をクリックして完了し、最初の自動構成を待ちます。環境、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);
}
コードを編集した後、下部のフックをクリックしてコンパイルを開始し、コンパイル後(もちろん、開発ボードを接続する必要があります)、水平矢印をクリックしてアップロードします
効果
開発ボードのライトが点滅しているので、写真に点滅がない理由を聞かないでください。
参考文献
- NodeMCU開発環境によって構築されたPlatformIO(ESP8266)
- PlatformIO Esp8266 Esp32 Arduinoは、ライブラリのダウンロード失敗の問題を解決します(ライブラリ:ライブラリをインストールできませんでした)
- ESP-IDFでのESP32-S2サポートステータス
- ESP32IoT開発フレームワークESP-IDFバージョンの推奨
- espressif / ESP8266_RTOS_SDK-Github
- ESP8266_RTOS_SDK(IDFスタイル)プログラミングガイド
- ESP8266のSDK(ESP8266_RTOS_SDK v3.3環境ビルド)について話します