實(shí)驗(yàn)六:
基于LiteOS實(shí)現(xiàn)端到端物聯(lián)試驗(yàn)
步驟1 移殖光敏傳感器盛撑,通過傳感器采集光照亮度
在Keil環(huán)境中右擊IOT-Demo,選擇Manage Project Items...
在Project Items標(biāo)簽下的Groups中添加Hardware捧搞,并在該group下添加光敏傳感器代碼
N3B(4(X0`XNZOF[I1L]S)KC.png
添加光敏傳感器代碼的頭文件路徑
QQ圖片20191125220727.png
在“main.h” /*USER CODE BEGIN includes /與 /USER CODE END includes /之間添加引用定義標(biāo)準(zhǔn)擴(kuò)展整數(shù)類型的頭文件代碼
QQ圖片20191125221228.png
在“main.h” /USER CODE BEGIN Private defines /與 /USER CODE END Private defines /之間添加全局變量“msg_for_BH1750”與“BH1750_send”定義的代碼
QQ圖片20191125221556.png
在main.c的USER CODE BEGIN Incldes/與USER CODE BEGIN Incldes/之間添加引用光敏傳感器頭文件的代碼BH1750數(shù)據(jù)的全局變量抵卫,并添加光敏傳感器數(shù)據(jù)上報(bào)是攜帶的messageld的代碼
QQ圖片20191125222115.png
在“main.c” /USER CODE BEGIN 0 /與 /USER CODE END 0 /之間添加引用光敏傳感器任務(wù)代碼狮荔;定義光敏傳感器任務(wù)名為“LightSensor_task”,優(yōu)先級為 0介粘;通過該任務(wù)殖氏,對光敏傳感器進(jìn)行初始化,并打印任務(wù)信息與光敏傳感器數(shù)據(jù)
QQ圖片20191125223741.png
在“main.c”的/USER CODE BEGIN 2 /與 /USER CODE END 2 */之間生成的代碼姻采,添加創(chuàng)建光敏傳感器任務(wù)的代碼雅采,并注釋創(chuàng)建task1 與task 2的代碼
QQ圖片20191125224059.png
點(diǎn)擊Rebuild,編譯工程
QQ圖片20191125224447.png
點(diǎn)擊“Download”,下載程序至開發(fā)板
QQ圖片20191125224700.png
打開QCOM串口調(diào)試助手慨亲,根據(jù)對應(yīng)的串口婚瓜,選擇對應(yīng)的串口號,配置相應(yīng)信息刑棵,按下“MCU_RST”,開發(fā)板運(yùn)行程序
image.png
步驟2
移植NB入網(wǎng)代碼巴刻,通過NB模組將數(shù)據(jù)上報(bào)至平臺
登陸OceanConnect平臺,參照實(shí)驗(yàn)三的方式注冊設(shè)備
打開Keil蛉签,在Keil中右擊Lot-Demo選擇Manage Project Items...
在Project Items標(biāo)簽下的Application/User中添加Iot-Demo-LiteOS/targets/Src目錄下的at_hal.c文件
image.png
在Projects Items標(biāo)簽下的Groups中添加at_device胡陪,并在該group下添加基于LitesOS的NB模組代碼,添加Iot-Demo-LiteOS\components\net\at_device\bc95目錄下的bc95.c文件
image.png
QQ圖片20191125230304.png
添加完成后督弓,在Keil的Project導(dǎo)航欄會出現(xiàn)相應(yīng)文件
QQ圖片20191125230438.png
在main.c的/USER CODE BEGIN Include/與/USER CODE BEGIN Include/之間添加調(diào)用AT框架與BC95頭文件的代碼,并聲明BC95入網(wǎng)的全局變量
QQ圖片20191125230616.jpg
點(diǎn)擊Rebuild乒验,編譯工程
點(diǎn)擊Download愚隧,下載程序至開發(fā)板
打開QCOM串口調(diào)試助手,根據(jù)對應(yīng)的串口號锻全,配置對應(yīng)信息狂塘,通過跳線帽將開發(fā)板的UART1的RX和TX與CH340的TX和RX連接,將開發(fā)板上的UART2的RX和TX與NB-IOT的TX和RX連接鳄厌,點(diǎn)擊MCU_RST,開發(fā)板運(yùn)行程序荞胡。此時(shí)在QCOM上可以看到打印任務(wù)的信息
image.png
登陸平臺,在我的設(shè)備中進(jìn)行命令下發(fā)
點(diǎn)擊我的設(shè)備中的歷史命令了嚎,可以看到命令已下發(fā)并執(zhí)行泪漂,此時(shí)光敏傳感器上的LED燈點(diǎn)亮
同樣,選擇value為OFF歪泳,即下發(fā)關(guān)燈命令萝勤,點(diǎn)擊緩存發(fā)送;在歷史命令中呐伞,可以看到命令已下發(fā)并執(zhí)行敌卓,此時(shí)光敏傳感器上的LED燈熄滅