伴隨著物聯(lián)網(wǎng)行業(yè)的發(fā)展,越來越多的物聯(lián)網(wǎng)設(shè)備都逐漸趨于低成本、小型化、高集成的模式,傳統(tǒng)的MCU+物聯(lián)網(wǎng)模組的方式已經(jīng)很難滿足需求。利爾達NB860系列模組推出OpenCPU方案,滿足客戶低代碼開發(fā)需求,可以縮短開發(fā)周期,提高產(chǎn)品性價比,降低能耗,是物聯(lián)網(wǎng)應(yīng)用開發(fā)的不二之選。
+利爾達NB860_X0A模組
??本文將分享基于NB860系列模組通過Lierda NB860 OpenCPU SDK驅(qū)動常見外設(shè)傳感器、入網(wǎng)、接入CTwing云平臺、發(fā)送傳感器數(shù)據(jù)、接收下發(fā)指令控制等操作。
??下圖給大家展示了基于利爾達NB860_X0A模組組裝驅(qū)動DEMO板,DEMO板涵蓋多個外設(shè)傳感器:
??SPI : SSD1306顯示屏、W25Q64 SPI FLASH
??I2C : OPT3001光照傳感器、MPU6050六軸傳感器
??ADC : PS2搖桿
??PWM : RGB LED
??TIMER : HCSR04超聲波傳感器、EC11旋轉(zhuǎn)編碼器
??※ GPIO
??嵌入式開發(fā)從點燈開始,利爾達NB860模組支持GPIO操作,每一個用戶IO都可以復(fù)用為GPIO,最大支持27路GPIO,可以配置上拉、下拉、輸入輸出、速率等,特定IO口還可作為低功耗喚醒源,滿足客戶低功耗應(yīng)用場景需求。我們利用NB860模組IO 11復(fù)用為GPIO并點亮了LED燈,通過模組TIMER配合GPIO定時掃描EC11旋轉(zhuǎn)編碼器,獲取旋轉(zhuǎn)編碼器的按動狀態(tài),實現(xiàn)通過按動控制LED燈開關(guān),通過旋轉(zhuǎn)方向可以控制RGB LED的亮度大小。
??※ SPI
??SPI是串行外設(shè)接口Serial Peripheral Interface的縮寫,是一種高速、全雙工、同步總線通訊協(xié)議,使用兩根數(shù)據(jù)收發(fā)線、一根時鐘線、一個片選線就可以與其總線上的設(shè)備進行通訊。利爾達NB860模組最大支持3路SPI,在此我們將SSD1306 Oled顯示屏與外掛W25Q64 SPI FLASH連接到同一個SPI總線上,并由NB860模組SPI外設(shè)進行驅(qū)動。
A:我們利用NB860模組SPI驅(qū)動OLED屏幕顯示數(shù)據(jù)內(nèi)容。
B:使用SPI驅(qū)動外掛SPI FLASH往其特定地址(0x004000)寫入字符串,并利用NB860模組SPI讀取外掛SPI FLASH該地址內(nèi)存,并將讀取到的字符串打印到串口,下圖是串口日志信息。
??※ I2C
??I2C又稱IIC,全名為Inter-Integrated Circuit,是由Philips公司開發(fā)的一種簡單、雙向二線制同步串行總線,僅由一個時鐘線,一根數(shù)據(jù)線就可以與總線線上的各設(shè)備進行通訊。NB860模組最大支持4路I2C,我們利用NB860模組將OPT3001光照傳感器與MPU6050六軸傳感器連接到到模組同一個I2C總線上進行驅(qū)動,如下展示效果。
??利用NB860模組驅(qū)動OPT3001光照傳感器,讀取光照數(shù)據(jù)顯示到OLED屏幕,當光照改變時,該數(shù)據(jù)可同步發(fā)生變化。
??利用NB860模組驅(qū)動MPU6050六軸傳感器,讀取六軸數(shù)據(jù)顯示到OLED屏幕,當DEMO板發(fā)生傾斜移動時,六軸傳感數(shù)據(jù)同時發(fā)生變化。
??※ ADC
??ADC即模擬數(shù)字轉(zhuǎn)換器,又稱作A/D轉(zhuǎn)換器,可以將輸入的模擬電壓信號轉(zhuǎn)換為一個輸出的數(shù)字信號。NB860模組支持12位ADC,最大支持4路ADC,這里利用NB860的ADC外設(shè),對一個PS2搖桿進行測量。
??利用NB860模組ADC測量PS2搖桿X,Y軸數(shù)據(jù),并顯示到OLED屏幕。當撥動遙感時,屏幕數(shù)據(jù)將會發(fā)生變化。
??※ PWM
??PWM即脈沖寬度調(diào)制,是用數(shù)字信號對模擬信號編碼的方法之一,通過方波的占空比來對一個具體的模擬電壓值進行編碼。NB860最大支持3路PWM,其中一路為低功耗PWM,在模組睡眠情況下仍可使用,這里我們使用NB860模組的PWM外設(shè)控制RGB LED的顏色。
??利用NB860模組PWM驅(qū)動RGB LED,控制紅綠藍三種顏色燈光亮度,可以通過接收AEP平臺的數(shù)據(jù)調(diào)整顏色,也可以通過旋轉(zhuǎn)編碼器旋轉(zhuǎn)控制其亮度。
??※ TIMER
??定時器是現(xiàn)在主流微控制器都有配備的片上外設(shè),通過配置定時器的裝載值來設(shè)定時間,并在在定時結(jié)束后進入中斷,來處理相應(yīng)的任務(wù)。NB860支持HRTIMER(High-Rate)主要實現(xiàn)高精度的定時(μs級)及計數(shù)功能,最多可同時創(chuàng)建16個高精度定時器。同時,NB860擁有RTC定時器,支持低功耗場景下定時器的使用。
??這里我們將使用NB860模組定時器配合GPIO輸入,通過HCSR04超聲波傳感器來獲取距離信息。
??利用NB860模組TIMER配合GPIO驅(qū)動HCSR04超聲波傳感器,測量超聲波傳感器換回的脈寬值,將其顯示到OLED屏幕,用戶使用過程中可將其進一步轉(zhuǎn)換成實際距離數(shù)據(jù)。
??※ AEP平臺的使用
??物聯(lián)網(wǎng)的應(yīng)用使能平臺(AEP)是為了人與物、物與物的連接統(tǒng)一到一起所設(shè)計出一種便于開發(fā)者開發(fā)、管理、部署物聯(lián)網(wǎng)應(yīng)用的平臺。NB860支持Lwm2m、UDP/TCP、MQTT等多種通信協(xié)議,支持對接AEP(CTWING)、OceanConnect、OneNET、阿里云、Lierda X等多種云平臺。這里我們將NB860模組連接到AEP平臺,將以上所提及的傳感器數(shù)據(jù)打包上傳,并且可通過平臺下發(fā)指令,控制RGB LED的顏色。
??利用NB860模組的通訊功能,將各個傳感器讀到的數(shù)據(jù)打包成Json格式數(shù)據(jù)并上發(fā)到AEP平臺,可以在AEP平臺看到上發(fā)的數(shù)據(jù)。
??利用NB860模組的通訊功能,接收AEP平臺下發(fā)的指令,可以控制RGB LED的顏色,以及顯示模式。
??值得注意的是,以上所有功能主控均在一個NB-IoT模組上實現(xiàn)。利爾達基于第三代5G NB-IoT芯片推出的NB860模組OpenCPU方案,通過與芯片原廠的通力配合,站在終端開發(fā)者的角度上,封裝了大量的API接口,編寫了大量技術(shù)文檔,實現(xiàn)了將NB-IoT芯片開放給客戶使用的目的,用戶可通過撰寫自己的代碼進行應(yīng)用開發(fā)。
??OpenCPU的優(yōu)勢包括但不限于:
??*降低BOM成本—OpenCPU方案為您去掉一顆MCU成本。
??*更高的集成度—OpenCPU方案減小產(chǎn)品尺寸,更適用于消費類產(chǎn)品。
??*遠程差分升級(FOTA)—OpenCPU方案客戶應(yīng)用集成在芯片應(yīng)用核,基于LwM2M的差分升級,應(yīng)用部署更放心,維護升級更容易。
??*更低的功耗—OpenCPU方案去掉MCU部分的能耗,更少的中間資源占用,更高的交互效率。
??*更高的安全性—OpenCPU方案避免近端攻擊竊取的可能,不再需要通過UART傳遞關(guān)鍵業(yè)務(wù)數(shù)據(jù)。
??OpenCPU方案的引入更加凸顯了NB-IoT的優(yōu)勢所在,是眾多物聯(lián)網(wǎng)應(yīng)用核心競爭力的關(guān)鍵因素,OpenCPU方案的開發(fā)可以使您的產(chǎn)品在眾多同類型產(chǎn)品中脫穎而出。
-
物聯(lián)網(wǎng)
+關(guān)注
關(guān)注
2902文章
44122瀏覽量
370423 -
NB-IoT
+關(guān)注
關(guān)注
412文章
1445瀏覽量
184323 -
OpenCPU
+關(guān)注
關(guān)注
1文章
13瀏覽量
4320
發(fā)布評論請先 登錄
相關(guān)推薦
評論