250
阿裏雲
C-SDK使用(µC/OS)__SDK使用參考_設備端接入手冊_阿裏雲物聯網套件-阿裏雲
準備工具
- KEIL工具 版本是Keil V4.10
- SecureCRT,用來抓取開發板的uart log,用戶可以從SecureCRT官網下載。
- NL6621 WIFI開發板,可以通過在淘寶購買。
- USB轉RS232串口線,可以通過淘寶購買。
移植說明
- MQTT數據傳輸支持通過TCP(明文傳輸)或TLS(密文傳輸),如果開發板上麵可用的RAM資源不足,可以不添加Mbedtls編譯到開發板SDK中。如果開發板自帶TLS庫,這樣也可以不用IoT SDK自帶的Mbedtls庫,用開發板自帶的SSL庫實現aliyun_iot_network_ssl.c裏麵的函數即可。
- 本文檔介紹的是MQTT+TCP的方式和阿裏雲交互。
- 本文檔隻是以NL6621開發板為例,客戶可以選擇其它支持µC/OS的開發板。
- 驗證通過的OS版本是µC/OS-II。
添加SDK MQTT協議源文件到Keil工程
- 需要添加MQTT協議的源文件路徑有
sdk/common/src
sdk/examples/ucos/mqtt
sdk/platform/ucos/src
sdk/src/mqtt/MQTTClient-C/src
sdk/src/mqtt/MQTTClient-C/nettype/tcp
sdk/src/mqtt/MQTTPacket/src
- 設定Keil工程頭文件路徑
編譯和download
- 右鍵工程,選擇 build target。
- 生成的bin文件,用開發板自帶的下載工具NuDevTool ver1.11通過uart download。
- 燒錄步驟流程,具體參考開發板文檔說明。
注意事項
- MQTT+TCP這種方式需要的RAM大小為 16K= 4K stack + 12K heap。
- 因為μC/OS-II每個task的優先級都不能相同,所以需要根據平台來修改下麵的兩個宏,賦予一個唯一的優先級。
#define IOT_MQTT_TASK_PRIO (OS_TASK_TMR_PRIO + 22)
#define IOT_MQTT_MUTEX_PRIO (OS_TASK_TMR_PRIO + 15)
常見問題
下麵出現的問題都是和開發板相關,如果不是用NL6621開發板可以忽略以下錯誤。
運行出現 SIGRTMEM: Out of heap memory錯誤。
- 解決方法:修改文件CortexM3_startup.s,調整下麵的兩個參數的值。
Stack_Size EQU 0x2000 // stack大小
Heap_Size EQU 0x4000 // heap大小
鏈接出現錯誤:
- 解決方法是: 編譯該文件syscall到工程裏麵
運行遇到下麵錯誤
- aliyun_iot_platform_network.c:163 aliyun_iot_network_settimeout()| setsockopt error, errno = 109 ret = -1 fd = 1
- 解決方法是:修改lwipopts.h, 添加下麵的兩個宏。
#define LWIP_SO_SNDTIMEO 1
#define LWIP_SO_RCVTIMEO 1
最後更新:2016-12-01 13:11:01
上一篇:
C-SDK使用(Mico)__SDK使用參考_設備端接入手冊_阿裏雲物聯網套件-阿裏雲
下一篇:
C-SDK使用(threadx)__SDK使用參考_設備端接入手冊_阿裏雲物聯網套件-阿裏雲
域名展示頁常見問題FAQ___域名展示頁_域名交易_域名-阿裏雲
創建流控策略__流量控製相關接口_API_API 網關-阿裏雲
提交模板分析作業__預置智能模版推薦接口_API使用手冊_媒體轉碼-阿裏雲
隊列方式接收通知__接收消息通知_開發人員指南_視頻點播-阿裏雲
ColumnUpdate__DataType_API 參考_表格存儲-阿裏雲
HBase 開發手冊__開發人員指南_E-MapReduce-阿裏雲
結合雲解析實現跨地域負載均衡__最佳實踐_負載均衡-阿裏雲
阿裏雲發布數十款新產品,彈性靈活不止於計費
查詢流控曆史__直播流操作接口_API 手冊_CDN-阿裏雲
金融雲特性__金融雲介紹_金融雲-阿裏雲
相關內容
常見錯誤說明__附錄_大數據計算服務-阿裏雲
發送短信接口__API使用手冊_短信服務-阿裏雲
接口文檔__Android_安全組件教程_移動安全-阿裏雲
運營商錯誤碼(聯通)__常見問題_短信服務-阿裏雲
設置短信模板__使用手冊_短信服務-阿裏雲
OSS 權限問題及排查__常見錯誤及排除_最佳實踐_對象存儲 OSS-阿裏雲
消息通知__操作指南_批量計算-阿裏雲
設備端快速接入(MQTT)__快速開始_阿裏雲物聯網套件-阿裏雲
查詢API調用流量數據__API管理相關接口_API_API 網關-阿裏雲
使用STS訪問__JavaScript-SDK_SDK 參考_對象存儲 OSS-阿裏雲