天天看點

CB2201_MQTT_User_GuideC-SKY IoT開發闆(CB2201)快速上阿裡雲指南

C-SKY IoT開發闆(CB2201)快速上阿裡雲指南

本文基于 

AliOS Things

 1.3.x版本,手把手教你在C-SKY CB2201開發闆上使用MQTT通道上雲

https://github.com/alibaba/AliOS-Things/wiki/CB2201_MQTT_User_Guide#1-%E7%A1%AC%E4%BB%B6%E7%8E%AF%E5%A2%83%E6%90%AD%E5%BB%BA 1 硬體環境搭建

https://github.com/alibaba/AliOS-Things/wiki/CB2201_MQTT_User_Guide#11-%E5%BC%80%E5%8F%91%E6%9D%BF%E5%87%86%E5%A4%87 1.1 開發闆準備

https://github.com/alibaba/AliOS-Things/wiki/CB2201_MQTT_User_Guide#111-cb2201%E5%BC%80%E5%8F%91%E6%9D%BF%E4%BB%8B%E7%BB%8D 1.1.1 CB2201開發闆介紹

① CB2201開發闆是杭州中天微自主設計的一款用于開發 IoT 應用的開發闆。

② 闆上內建 CH2201 晶片,內建 CPU 調試器CKLink,隻需要一根 USB 線就可以進行供電、調試、下載下傳等操作。

③ 內建兩個子闆接口,每個子闆接口中都內建了UART/SPI/IIC/ADC/PWM/GPIO等外設,可以連接配接各類接口相容的功能子闆,包括中天微設計的ENC28J60 SPI有線網卡子闆,ESP8266-WiFi子闆,傳感器子闆等。

https://github.com/alibaba/AliOS-Things/wiki/CB2201_MQTT_User_Guide#112-ch2201%E8%8A%AF%E7%89%87%E4%BB%8B%E7%BB%8D 1.1.2 CH2201晶片介紹

① 内置32BIT C-SKY CK802T CPU@up to 48MHz

② 256KB XIP eFlash,80KB SRAM

③ REE/TEE運作環境隔離

④ 硬體加解密引擎,支援AES、RSA、SHA、TRNG等算法

⑥ 34個獨立可程式設計、複用通用輸入輸出接口,包括:SPI×2, UART×3, I2C×2, ADC×16, PWM×4, GPIO×34, I2S×1, ACMP×1

⑦ 定時器相關資源:CoreTIM×1, RTC×2, Timer×2, WDT×1

⑧ 待機功耗 <3uA

⑨ 使用QFP-64-0.4mm封裝

https://github.com/alibaba/AliOS-Things/wiki/CB2201_MQTT_User_Guide#113-esp8266-wifi%E5%AD%90%E6%9D%BF 1.1.3 ESP8266 WiFi子闆

WiFi子闆介紹:略

CB2201_MQTT_User_GuideC-SKY IoT開發闆(CB2201)快速上阿裡雲指南

https://github.com/alibaba/AliOS-Things/wiki/CB2201_MQTT_User_Guide#114-%E5%BC%80%E5%8F%91%E6%9D%BF%E8%8E%B7%E5%8F%96 1.1.4 開發闆擷取:

https://item.taobao.com/item.htm?id=570014022304

https://github.com/alibaba/AliOS-Things/wiki/CB2201_MQTT_User_Guide#12-%E5%BC%80%E5%8F%91%E6%9D%BF%E8%BF%9E%E6%8E%A5%E6%96%B9%E6%B3%95 1.2 開發闆連接配接方法

https://github.com/alibaba/AliOS-Things/wiki/CB2201_MQTT_User_Guide#121-wifi%E5%AD%90%E6%9D%BF%E8%BF%9E%E6%8E%A5 1.2.1 WiFi子闆連接配接

CB2201_MQTT_User_GuideC-SKY IoT開發闆(CB2201)快速上阿裡雲指南

https://github.com/alibaba/AliOS-Things/wiki/CB2201_MQTT_User_Guide#122-%E4%B8%B2%E5%8F%A3%E7%BA%BF%E8%BF%9E%E6%8E%A5 1.2.2 序列槽線連接配接

CB2201_MQTT_User_GuideC-SKY IoT開發闆(CB2201)快速上阿裡雲指南

https://github.com/alibaba/AliOS-Things/wiki/CB2201_MQTT_User_Guide#123-%E7%94%B5%E6%BA%90%E8%BF%9E%E6%8E%A5 1.2.3 電源連接配接

通過USB線供電,圖略

https://github.com/alibaba/AliOS-Things/wiki/CB2201_MQTT_User_Guide#2-%E4%BA%91%E7%AB%AF%E5%92%8C%E9%80%9A%E9%81%93%E7%8E%AF%E5%A2%83%E6%90%AD%E5%BB%BA 2 雲端和通道環境搭建

https://github.com/alibaba/AliOS-Things/wiki/CB2201_MQTT_User_Guide#21-%E5%9C%A8%E4%BA%91%E7%AB%AF%E4%B8%BB%E8%A6%81%E5%8C%85%E6%8B%AC%E4%BB%A5%E4%B8%8B%E5%87%A0%E6%AD%A5 2.1 在雲端主要包括以下幾步

參考連結( 

https://github.com/alibaba/AliOS-Things/wiki/Manual-Channel-MQTT

 ),做如下操作:

1、建立阿裡雲賬号

2、建立測試産品,拿到ProductKey

3、建立測試裝置,拿到DeviceName和DeviceSecret

4、下載下傳測試工具

注意:請無視該文檔中關于linuxhost的示例,編譯方式請參考下面章節。

https://github.com/alibaba/AliOS-Things/wiki/CB2201_MQTT_User_Guide#22-%E4%B8%89%E8%A6%81%E7%B4%A0%E8%AE%BE%E7%BD%AE 2.2 三要素設定

修改./framework/protocol/linkkit/iotkit/sdk-encap/imports/iot_import_product.h 中三個宏定義,修改為上一步驟中建立産品和裝置時拿到的三要素(ProductKey、DeviceName和DeviceSecret),如下:

#elif  MQTT_TEST

#define PRODUCT_KEY    "......"

#define DEVICE_NAME    "......"

#define DEVICE_SECRET  "......"

#define PRODUCT_SECRET ""

#else

           

注:mqttapp程式所在源碼為AliOS-Things/example/mqttapp/mqtt-example.c ( 

https://github.com/alibaba/AliOS-Things/blob/master/example/mqttapp/mqtt-example.c

 )。

此時在雲端擷取的三個參數ProductKey,DeviceName和DeviceSecret分别對應代碼中的PRODUCT_KEY,DEVICE_NAME和DEVICE_SECRET三個宏,宏PRODUCT_SECRET無需理會。

https://github.com/alibaba/AliOS-Things/wiki/CB2201_MQTT_User_Guide#3-mqttapp%E7%BC%96%E8%AF%91 3 mqttapp編譯

AliOS-Things可以通過指令行和AliOS-Things IDE開發,詳見下面說明。

https://github.com/alibaba/AliOS-Things/wiki/CB2201_MQTT_User_Guide#31-%E5%91%BD%E4%BB%A4%E8%A1%8C%E7%BC%96%E8%AF%91 3.1 指令行編譯

1、指令行環境搭建:

     參考

https://github.com/alibaba/AliOS-Things/wiki/Quick-Start

2、指令行編譯方式如下:

$ aos make mqttapp@cb2201

     build完成後可在out/mqttapp@cb2201/binary/ 目錄找到生成的bin檔案和hex檔案。

https://github.com/alibaba/AliOS-Things/wiki/CB2201_MQTT_User_Guide#32-alios-things-ide%E7%BC%96%E8%AF%91 3.2 AliOS-Things IDE編譯

1、AliOS-Things IDE環境搭建:

https://github.com/alibaba/AliOS-Things/wiki/Starter-Kit-Tutorial

2、開發環境搭建好後,導入Alios-Things源碼。

     導入方法1:滑鼠直接拖入;

     導入方法2:點選菜單欄 “檔案(F)” -> “打開檔案夾(F)”。

3、Build如下圖,選中mqttapp@cb2201,點選右側"√"

     build完成後可在out/mqttapp@cb2201/binary/ 目錄找到生成的bin檔案。

https://github.com/alibaba/AliOS-Things/wiki/CB2201_MQTT_User_Guide#4-%E5%9B%BA%E4%BB%B6%E7%83%A7%E5%BD%95 4 固件燒錄

https://github.com/alibaba/AliOS-Things/wiki/CB2201_MQTT_User_Guide#41-%E5%AE%89%E8%A3%85%E7%83%A7%E5%BD%95%E8%BD%AF%E4%BB%B6 4.1 安裝燒錄軟體

1、燒錄軟體擷取:連結:

https://pan.baidu.com/s/1CcbCXZ3SJwfBL13_MP9SIg

 密碼:s6j5

2、解壓後,輕按兩下CSKYFlashProgrammer.exe打開燒錄軟體

https://github.com/alibaba/AliOS-Things/wiki/CB2201_MQTT_User_Guide#42-%E7%83%A7%E5%BD%95 4.2 燒錄

1、選擇User Config: AliOS-Things-CB2201-MQTTAPP,并更改AliOS-Things存放路徑(即修改下圖中“G:\”)

CB2201_MQTT_User_GuideC-SKY IoT開發闆(CB2201)快速上阿裡雲指南

2、開發闆首次燒錄程式需要選擇 “Chip Erase” 用以擦除eFlash,之後開發則選擇 “Erase Sectors” 即可。

CB2201_MQTT_User_GuideC-SKY IoT開發闆(CB2201)快速上阿裡雲指南

3、點選下方 "Start Program" 按鈕燒寫(注意:燒寫前需要先退出CskyDebugServer)

https://github.com/alibaba/AliOS-Things/wiki/CB2201_MQTT_User_Guide#5-wifi%E9%85%8D%E7%BD%91%E5%8F%8A%E6%95%B0%E6%8D%AE%E8%BF%9E%E6%8E%A5%E9%98%BF%E9%87%8C%E4%BA%91 5 WiFi配網及資料連接配接阿裡雲

https://github.com/alibaba/AliOS-Things/wiki/CB2201_MQTT_User_Guide#51-wifi%E9%85%8D%E7%BD%91 5.1 WiFi配網

燒錄完成後,點選開發闆複位鍵重新開機,序列槽列印如下圖所示:

在序列槽指令行中敲入如下配網指令:

# netmgr connect <ssid> <password>

CB2201_MQTT_User_GuideC-SKY IoT開發闆(CB2201)快速上阿裡雲指南

正常聯網後,mqttapp會真正開始運作。下圖為mqttapp運作日志:

CB2201_MQTT_User_GuideC-SKY IoT開發闆(CB2201)快速上阿裡雲指南

https://github.com/alibaba/AliOS-Things/wiki/CB2201_MQTT_User_Guide#52-%E6%9F%A5%E7%9C%8B%E8%AE%BE%E5%A4%87%E6%98%AF%E5%90%A6%E5%9C%A8%E7%BA%BF 5.2 檢視裝置是否線上

點選下面連結,登入阿裡雲賬戶檢視:

http://iot.console.aliyun.com/#/product/newlist/region/cn-shanghai
CB2201_MQTT_User_GuideC-SKY IoT開發闆(CB2201)快速上阿裡雲指南

https://github.com/alibaba/AliOS-Things/wiki/CB2201_MQTT_User_Guide#6-%E8%B0%83%E8%AF%95 6 調試

https://github.com/alibaba/AliOS-Things/wiki/CB2201_MQTT_User_Guide#61-cskydebugserver%E5%AE%89%E8%A3%85%E5%92%8C%E4%BD%BF%E7%94%A8 6.1 CskyDebugServer安裝和使用

1、擷取CskyDebugServer(若已安裝CDS/CDK,則可略過1和2的步驟)

     連結:

https://pan.baidu.com/s/1lT7gIoJZylQEOUvXnrpFUg

 密碼:6bu9

2、安裝

     解壓後輕按兩下預設安裝。

3、端口設定,如下圖:

CB2201_MQTT_User_GuideC-SKY IoT開發闆(CB2201)快速上阿裡雲指南

4、連接配接開發闆

     點選 “紅色三角形” 按鈕,連接配接成功後,“紅色三角形” 按鈕會變成 “紅色圓形” 按鈕,如下圖:

CB2201_MQTT_User_GuideC-SKY IoT開發闆(CB2201)快速上阿裡雲指南

https://github.com/alibaba/AliOS-Things/wiki/CB2201_MQTT_User_Guide#62-vs-code%E8%B0%83%E8%AF%95%E8%AE%BE%E7%BD%AE 6.2 VS Code調試設定

根據已編譯并燒錄的app@board資訊,更新 AliOS-Things/.vscode/launch.json 調試配置檔案,比如:已編譯并燒錄 mqttapp@cb2201以後,更改相關配置如下圖:

https://github.com/alibaba/AliOS-Things/wiki/CB2201_MQTT_User_Guide#63-%E5%BC%80%E5%A7%8B%E8%B0%83%E8%AF%95 6.3 開始調試

1、點選 

CB2201_MQTT_User_GuideC-SKY IoT開發闆(CB2201)快速上阿裡雲指南

 按鈕,進入調試界面。

2、選擇 “CSKY DEBUG @ Windows/Linux”:

CB2201_MQTT_User_GuideC-SKY IoT開發闆(CB2201)快速上阿裡雲指南

3、點選左上方的 

CB2201_MQTT_User_GuideC-SKY IoT開發闆(CB2201)快速上阿裡雲指南

 按鈕(或F5)啟動調試。

4、啟動調試以後會自動停到已設定的斷點 application_start 函數處;

     同時上方會出現調試工具欄,提供常用的單步調試功能;

     左側邊欄可以檢視變量和函數調用棧。

CB2201_MQTT_User_GuideC-SKY IoT開發闆(CB2201)快速上阿裡雲指南

Home

 | 

Tutorial Hardware Porting Guide Utilities API Reference Technical Docs Certification

 |

Crafted with  by 

 Team.