2017年1月18日 星期三

DIY - ESP8266:NONOS SDK 在 Windows IDE 整合開發環境測試(八)

DIY - ESP8266:NONOS SDK 在 Windows IDE整合開發環境測試(八):

安裝完成了安信可(Ai-Thinker) ESP8266 IDE 2.0(整合開發環境),便可使用來測試 NONOS SDK Source。首先下載 ESP8266_NONOS_SDK (測試原程式碼版本:ESP8266_NONOS_SDK_v1.5.4)原程式碼,然後導入 Eclipse,再測試編譯程式。

ESP8266_NONOS_SDK_v1.5.4 原程式
Espressif Non-OS SDK:
Non-OS SDK 是不基於作業系統的 SDK,提供 IOT_Demo 和 AT 的編譯。Non-OS SDK 主要使用計時器和回調函數的方式實現各個功能事件的嵌套,達到特定條件下觸發特定功能函數的目的。Non-OS SDK 使用 espconn 介面實現網路操作,用戶需要按照 espconn 介面的使用規則進行軟體發展。

從版本 ESP8266_NONOS_SDK_V1.5.0 起,AT 固件所需空間增大,無法再使用 4Mbit (512KB) Flash,請使用 8Mbit (1MB) 或以上容量 Flash。 

app: 用戶工作主目錄,用戶級代碼及頭檔均放在此目錄下編譯。
bin: 編譯生成的 BIN 檔,可直接下載到 Flash 中。
documents: SDK 相關的文檔或鏈結。
driver_lib: 外設驅動的庫文件,如:UART、I2C 和 GPIO 等。
examples: 可供用戶二次開發的示例代碼,如 IoT Demo 等。
include: SDK 自帶頭檔,包含了用戶可使用的相關 API 函數及其他巨集定義,用戶無需修改。
ld: 鏈結時所需的腳本檔,若無特殊需求,用戶無需修改。
lib: SDK 提供的庫檔。
tools: 編譯 BIN 檔所需的工具,用戶無需修改。

※ 首先使用樂鑫(Espressif)原廠固件  
1‧需要將 driver_lib Directory 移動 MOVE 到 app目錄下。
2‧需要將 examples/IoT_Demo/*.* 下的 Files 拷貝COPY 到 app目錄下,並代替舊 Files。 

雙擊啓動 ESP8266IDE.exe,通入 Eclipse
Select Exiting Code as Makefile Project Next
New Project Unclick C++ Cygwin GCC Browse 選擇 Code Location = ESP8266_NONOS_SDK Finish
Right Click → Clean Project → Build Project
編譯後,看程式有沒有報錯,如果沒有便成功編譯!
編譯成功後系統顯示生成的 BIN 檔及其下載到 Flash 中的地址
※ 20170520 添加
ICACHE_FLASH_ATTR 巨集的函數:
對於 ESP8266_Non-OS_SDK 添加了 ICACHE_FLASH_ATTR 巨集的函數,將存放在 IROM 中,CPU 僅在調用到它們的時候,將它們讀到 cache 中運行;沒有添加到 ICACHE_FLASH_ATTR 巨集的函數,將在一開始上電運行時,就載入到 IRAM 中運行;由於空間有限,我們無法將所有代碼都一次性載入到 IRAM 中運行,因此在大部分函數前添加到ICACHE_FLASH_ATTR 宏,放在 IROM 中。
如果需要在 IRAM 中執行功能,就不需要加ICACHE_FLASH_ATTR 的宏,那麼該功能就是放在 IRAM 中執行。
 
2017年 1月 18日 天氣報告
氣溫:19.3@ 20:40
相對濕度:百分之 91%
天氣:多雲

沒有留言:

張貼留言