ESP8266_NONOS_SDK--UART實驗

語言: CN / TW / HK

圖文手把手教程--ESP8266 SDK開發環境搭建及HelloWorld顯示(使用安信可AiThinkerIDE_V1.5.2程式設計)

https://blog.csdn.net/felix_tao/article/details/106364860

1.復份一份0_SDK_Template,並重命名為1_UART。
2.匯入工程:
  1)開啟軟體->File->Import->C/C++->Existing Code as MakeFile Project。
  2)選擇工程所在路徑,例如:D:\ESP8266_NONOS_SDK\1_UART,去掉C++打勾,編譯工具選擇Cross GCC。
3.修改屬性:
  1)選中工程->Project->Properties->C/C++ Build->Build command中輸入命令:
    make COMPILE=gcc BOOT=none APP=0 SPI_SPEED=40 SPI_MODE=DIO SPI_SIZE_MAP=6
  2)Build directory:${workspace_loc:/1_UART}/,工程所在路徑是對的,不用修改。
4.編譯工程:程式如果有修改先按儲存->清除專案->編譯專案。
5.編譯成功標誌:eagle.flash.bin--->0x00000,eagle.irom0text.bin--->0x10000。
6.刪除多餘的.c/.h檔案
  1)app->user->只保留user_main.c和Makefile,其餘的.c檔案刪除
  2)app->driver->只保留uart.c和Makefile,其餘的.c檔案刪除
  3)app-include->driver->只保留uart_register.h和uart.h,其餘的.h檔案刪除
  4)app-include->只保留user_configh.h,其餘的.h檔案刪除和ssl資料夾刪除
7.修改user_main.c
  1)刪除#include "user_devicefind.h"和#include "user_webserver.h"等沒有用到的標頭檔案包含。
  2)增加#include "driver/uart.h"
  3)註釋掉標頭檔案包含#include "user_esp_platform.h"。
  4)user_init()函式,清空裡面的內容,增加:uart_init(115200, 115200)和os_printf("Hello World!\r\n")。
  5)其它程式碼不變。
8.重新編譯工程。
9.程式下載:
 1)將GPIO0連線GND
 2)開啟燒錄工具flash_download_tools_v3.6.6,燒錄4個檔案,在bin目錄下分別為:
 eagle.flash.bin->0x00000
 eagle.irom0text.bin->0x10000
 esp_init_data_default_v08.bin->0x3FC000
 blank.bin->0x3FE000
10.下載完成後,開啟串列埠助手,設定波特率74880,將GPIO0斷開GND的連線,並重新復位ESP8266,在串列埠助手看到列印資訊




























配套程式碼的下載:https://download.csdn.net/download/felix_tao/14109802


注意:
1.例程demo的改名:需要先改好名,再匯入工程,如果在匯入工程後重命名會出錯,出錯後需要重新複製demo到app目錄下,原因?
2.當串列埠助手波特率不等於74880時,ESP8266復位後,會列印一些亂碼資訊,這是正常的,因為核心在初始化時,
會預設從UART0列印一些初始化資訊,使用40MHZ晶振時,該段列印波特率為115200,使用26MHZ晶振時,該段列印
波特率為74880。