国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于STC單片機(jī)的超低功耗LoRa發(fā)射機(jī)設(shè)計

2022-09-23 01:39王先武何純靜
電子制作 2022年16期
關(guān)鍵詞:模組低功耗功耗

王先武,何純靜

(空軍通信士官學(xué)校,遼寧大連,116600)

1 STC單片機(jī)的低功耗模式

STC系列單片機(jī)工作電壓較寬,加密能力較強(qiáng), 不需任何外圍器件,串口下載調(diào)試方便。片內(nèi)FLASH ROM、EEPROM、ADC、PWM、SPI、UART、時鐘、復(fù)位等資源豐富。本設(shè)計選用的STC15子系列支持的工作電壓范圍為5.5~3.8V,可與La-01射頻模組(典型工作電壓3.3V)相匹配,采用兩節(jié)電池(3V)供電。

STC系列單片機(jī)支持三種省電模式,分別是低速模式、空閑模式和掉電模式。其中的低速模式通過對主時鐘進(jìn)行分頻,降低時鐘頻率的方式實現(xiàn),不常采用。這兩種方式常用于實現(xiàn)低功耗設(shè)計。

1.1 空閑模式

空閑模式是指主時鐘和CPU停止工作的狀態(tài)。此時外部中斷、外部低壓檢測電路、定時器、A/D轉(zhuǎn)換、串行口等仍正常運(yùn)行。在空閑模式下,RAM、堆棧指針(SP)、程序計數(shù)器(PC)、程序狀態(tài)字(PSW)、累加器(A)等寄存器都保持原有數(shù)據(jù)。I/O口保持著空閑模式被激活前那一刻的邏輯狀態(tài),所有的外圍設(shè)備都能正常運(yùn)行。STC15系列單片機(jī)芯片手冊給出的空閑模式的靜態(tài)電流是1.8mA。

1.2 掉電模式

當(dāng)單片機(jī)進(jìn)入掉電模式時,外部晶振停振、CPU、定時器、串行口全部停止工作,只有外部中斷繼續(xù)工作。使單片機(jī)進(jìn)入休眠模式的指令將成為休眠前單片機(jī)執(zhí)行的最后一條指令,進(jìn)入休眠模式后,芯片中程序未涉及的數(shù)據(jù)存儲器和特殊功能寄存器中的數(shù)據(jù)都將保持原值。

掉電模式可由外部中斷或者硬件復(fù)位等方式喚醒。需要注意的是,使用中斷喚醒單片機(jī)時,程序從原來停止處繼續(xù)運(yùn)行,當(dāng)使用硬件復(fù)位喚醒單片機(jī)時,程序?qū)念^開始執(zhí)行。STC15系列單片機(jī)芯片手冊給出的掉電模式的靜態(tài)電流為小于0.1μA,與實測值相當(dāng)。

1.3 低功耗設(shè)置

控制單片機(jī)進(jìn)入空閑模式和休眠模式的是電源管理寄存器PCON。這個寄存器的最低兩位IDL和PD分別用來設(shè)定是否使單片機(jī)進(jìn)入空閑模式和掉電模式。將IDL/PCON.0位置1,單片機(jī)進(jìn)入空閑(IDLE)模式。將PD/PCON.1位置1,單片機(jī)進(jìn)入掉電(Power Down)模式。

STC系列單片機(jī)的省電模式可通過外部中斷、CCP中斷、內(nèi)部掉電喚醒計時器、串口輸入等方式喚醒。本設(shè)計通過使發(fā)射機(jī)在短時發(fā)射后,即時進(jìn)入掉電模式的策略,最大程度地降低靜態(tài)功耗,并采用外部中斷方式喚醒,重新啟動發(fā)射。

可將CPU從休眠模式喚醒的外部管腳有:外部中斷0、外部中斷1、定時器0、定時器1、RxD、PWM0/PCA0/P3.7、PWM2/PCA2/P2.0、PWM3/PCA3/P2.4。各中斷可獨立喚醒單片機(jī)。喚醒后,CPU將繼續(xù)執(zhí)行進(jìn)入空閑模式語句的下一條指令。外部RST引腳復(fù)位時,單片機(jī)也可喚醒,從用戶程序的0000H處開始正常工作。本機(jī)通過外部中斷1,以下降沿觸發(fā)方式實現(xiàn)喚醒。

2 LoRa射頻模組的低功耗模式

LoRa技術(shù)指的是SEMTECH公司的LoRa專利擴(kuò)頻調(diào)制技術(shù)。借助基于LoRa專利擴(kuò)頻調(diào)制技術(shù)的LoRa調(diào)制解調(diào)器,LoRa射頻芯片的靈敏度可達(dá)-148dBm,功率輸出可達(dá)+22dBm,具有超高靈敏度和極低功耗,同時具有良好的選擇性和抗阻塞特性,在解決通信距離與功耗的矛盾方面實現(xiàn)了突破。用于長距離通信,能夠最大限度降低系統(tǒng)中可移動終端的功耗。

LoRa射頻芯片一般支持的工作頻率范圍為137~ 1020MHz,最大帶寬為500Kbps,支持的調(diào)制方式包括FSK/ MSK /OOK/LoRa,其中LoRa模式下的接收靈敏度最高可達(dá)-148dbm。

2.1 LoRa射頻芯片

LoRa射頻芯片主要分為節(jié)點芯片和網(wǎng)關(guān)芯片兩類。節(jié)點芯片包括SX127x/6x、SX128x和 LLCC68三個系列。其中LLCC68支持的速率較高,但傳輸距離較小,主要針對室內(nèi)定位等應(yīng)用。SX128x系列工作于2.4G頻段,與WiFi等的應(yīng)用場景類似。

SX127x/6x系列則面向長距離、低功耗應(yīng)用,可最大程度地發(fā)揮LoRa擴(kuò)頻技術(shù)的優(yōu)勢。其中SX126x是SX127x的升級產(chǎn)品,其速率更高、功率更大、功耗更低、尺寸更小。兩代芯片可以互相通信,但二者軟件、硬件均不完全兼容,尤其是軟件代碼,需要較大修改才可實現(xiàn)移植。

網(wǎng)關(guān)芯片也可分為SX1301、SX1302兩個系列。其中1301(1308)為第一代,提供8個上行信道和1個下行信道。SX1302為第二代,提供16個上行信道(含8個模擬信道)和2個下行信道。

需要注意的是,SX1301本身并不具備射頻收發(fā)功能,所以一般還要外接一個以上SX1257(或SX1255)射頻前端芯片,共同構(gòu)成網(wǎng)關(guān)。

本設(shè)計采用SX1278芯片,其可在3.3V供電的條件下,實現(xiàn)最大+20dbm(100mW) 的輸出功率,此時的工作電流小于125mA。

2.2 LoRa射頻模組

本設(shè)計所采用的 LoRa模組(Ra-01)由安信可科技設(shè)計開發(fā)的純射頻模組。工作頻段 410MHz~525MHz,調(diào) 制 方 式 FSK、GFSK、MSK、GMSK、LoRa及 OOK,工作電壓為 3.3V,最大輸出功率+20dBm,最大工作電流為 125mA。接收狀態(tài)下具有低功耗特性,接收電流為 12.15mA,待機(jī)電流為 1.6mA,接收靈敏度優(yōu)于-140dBm。

該模組支持SPI 接口,半雙工方式,帶 CRC的256 字節(jié)的數(shù)據(jù)包引擎,采用小體積雙列郵票孔貼片封裝,帶屏蔽,焊接天線。

2.3 LoRa射頻模組的低功耗設(shè)置

LoRa射頻模塊的工作模式有8種,分別是休眠模式、待機(jī)模式、FSTx模式、FSRx模式、TX模式、RX鏈接模式、RX單一模式和CAD模式。通過變更RegOpMode寄存器的值,就可以在各種模式之間進(jìn)行切換。本機(jī)LoRa射頻單元的功耗高低主要與TX模式的工作電流和休眠模式下的靜態(tài)電流有關(guān)。

TX模式即發(fā)射模式。此模式激活后,射頻模塊先后打開發(fā)送所需要的各個單元,打開功率放大器(PA),發(fā)送數(shù)據(jù)包,發(fā)送結(jié)束后自動切換回待機(jī)模式。SX1278射頻芯片最大功率發(fā)射時的電流約為125mA。

休眠模式為低功耗模式,在這種模式下,僅SPI和配置寄存器可以訪問,而LoRa FIFO則不能訪問。休眠模式下的工作電流小于0.1μA。

3 超低功耗LoRa發(fā)射機(jī)實現(xiàn)策略

LoRa終端的功耗決定于各單元的靜態(tài)功耗。降低功耗的策略主要是通過軟件編程,使各單元工作于第一時間進(jìn)入靜態(tài)功耗低的工作模式。其中,接收端的省電策略主要是CAD前導(dǎo)碼檢測、定時接收和短時窗口接收三種方式;發(fā)射端的省電策略是降低占空比,終端MCU通過“中斷+定時器超時”方式控制射頻模組,發(fā)射后即進(jìn)入掉電模式;收發(fā)一體終端則綜合運(yùn)用上述兩種省電策略。

3.1 工作模式優(yōu)化

LoRaWan推薦的LoRa終端工作模式共分為三種,第一種叫Class A,A可理解為All,是所有LoRaWAN節(jié)點都必須支持該工作方式。第二種叫Class B,B可理解為Beacon,周期性地接收數(shù)據(jù)。第三種叫Class C,C可理解為Continuously,Class C工作方式的節(jié)點幾乎是持續(xù)不斷地打開接收窗口。其中,功耗最低的是Class A模式,特點是一次啟動工作流程包括一次發(fā)射和兩個接收窗口。然后進(jìn)入省電模式,直至兩次啟動。

本文所實現(xiàn)的超低功耗LoRa發(fā)射機(jī)除了采用類似LoRaWan推薦的Class A類終端工作模式外,但根據(jù)工作場景需要,沒有開啟接收窗口,并對硬件設(shè)計進(jìn)行了極限優(yōu)化,進(jìn)一步降低了功耗。

3.2 硬件設(shè)計優(yōu)化

典型的LoRa終端的應(yīng)用電路由射頻模組、LDO供電電路、主控MCU、輸入輸出電路以及電源濾波電容等組成。在典型電路在基礎(chǔ)上,本機(jī)主要進(jìn)行了以下幾方面優(yōu)化。

3.2.1 選用低功耗器件

首先是采用純射頻模組。純射頻模組的好處可自選主控MCU,且支持二次開發(fā)。其次是選用低功耗MCU。如前所述,STC單片機(jī)具有較低的掉電電流,同時還可根據(jù)需要,確定FLASH和片內(nèi)EEPROM空間,無需擴(kuò)展外部存儲設(shè)備,進(jìn)一步降低功耗。此外,還要選用優(yōu)質(zhì)電容,用于各單元電源濾波和退耦。

3.2.2 減少供電電路和外設(shè)器件

為進(jìn)一步降低功耗,可去除LDO供電電路,以3~3.7V電池供電;也可去除射頻模組側(cè)的電源濾波電容。本機(jī)的外部設(shè)備只有兩個功能指示燈和一只用于喚醒并啟動發(fā)射的按鍵。優(yōu)化后的LoRa發(fā)射終端電路如圖1所示。

圖1 LoRa發(fā)射終端電路

3.3 軟件設(shè)計優(yōu)化

3.3.1 配置MCU端口

LoRa終端主控MCU的I/O端口模式需要進(jìn)行動態(tài)切換。在MCU進(jìn)入低功耗時,應(yīng)將主控MCU的端口設(shè)置為省電模式;而在退出低功耗時,再將其配置成所需模式。一般來說,輸出和輸入端口應(yīng)分別配置成輸出上拉和輸入懸浮模式。

由于動態(tài)切換需要一定時間,所以只適用于占空比較小的情況,不適合快速切換。復(fù)雜應(yīng)用開發(fā)還應(yīng)注意采用合適的數(shù)據(jù)結(jié)構(gòu),便于通過修改數(shù)據(jù)來改變MCU端口模式。

本機(jī)涉及的P1和P3端口工作模式寄存器無需動態(tài)切換,保持0X00即可。

3.3.2 進(jìn)入休眠或掉電模式

對于射頻單元,在進(jìn)入低功耗模式時,應(yīng)該確保LoRa芯片進(jìn)入休眠模式。如果忘記關(guān)閉RF開關(guān),通常會有百微安量級的漏電。如果LoRa芯片采用有源晶振,需要拉低有源晶振的供電引腳。

對于主控MCU,則應(yīng)該關(guān)閉所有外設(shè),包括串口、ADC、定時器等,然后再使MCU進(jìn)入掉電模式。

本機(jī)相關(guān)代碼及說明如下:

P11 =1;P34=0;//設(shè)置端口電平降低功耗

SX1276LoRaSetOpMode(Sleep_mode);//LoRa模組進(jìn)入休眠模式

PCON |= 0x02; //MCU進(jìn)入掉電模式

_nop_();_nop_(); //喚醒后,首先執(zhí)行此語句,然后再進(jìn)入中斷服務(wù)程序

進(jìn)入休眠或掉電模式,對降低功耗有不同的貢獻(xiàn)。以下給出了幾種情況下的實測結(jié)果。

圖2為靜態(tài)工作電流(LoRa模組及MCU均不休眠或掉電),其平均值為24.23 mA。

圖2 LoRa終端靜態(tài)工作電流(無休眠)

圖3 為LoRa模組進(jìn)入休眠模式時的工作電流,其平均值為19.85 mA,與無休眠相比降低4.38mA。

圖3 LoRa休眠狀態(tài)下的工作電流

圖4為MCU進(jìn)入掉電模式的工作電流,其平均值為11.77 mA,與無休眠相比降低12.46mA。

圖4 MCU休眠狀態(tài)下的工作電流

3.3.3 提高算法效率

在各種單片機(jī)控制系統(tǒng)中,MCU一般都要持續(xù)耗能。因此相應(yīng)的省電策略就是通過軟件設(shè)計優(yōu)化,使MCU盡早進(jìn)入省電模式。有效的做法是在發(fā)送完成后,直接令MCU進(jìn)入掉電模式。需要再次發(fā)射時,再通過外部中斷或RTC中斷實現(xiàn)喚醒。此外,對于CRC16計算等的代碼段要充分優(yōu)化,減少運(yùn)行時間。本機(jī)通過查表簡化了CRC16計算。

提高代碼效率可使整機(jī)工作電流顯著降低。圖5顯示MCU零代碼情況下的工作電流的9.33mA,與靜態(tài)工作電流24.23 mA相比,降低14.9mA。由于不同工程的代碼復(fù)雜度差異,提高代碼效率對靜態(tài)工作電流的貢獻(xiàn)也有較大差異。

圖5 MCU零代碼情況下的靜態(tài)工作電流

4 仿真計算與實測結(jié)果分析

4.1 系統(tǒng)廣播時間

系統(tǒng)的廣播時間(Time on Air,TOA)用Tpacket表示,可根據(jù)Semtech給出的公式計算。這里將其整合為以下兩式:

為了實現(xiàn)較高靈敏度并降低功耗,本機(jī)采用信號帶寬BW=125kHz,最小載荷 PL=3,最大擴(kuò)頻因子SF=12,隱式報頭IH=1,最快數(shù)據(jù)率 CR= 4/5,啟用檢驗CRC=1,最短前導(dǎo)碼npreamble=2,并根據(jù)數(shù)據(jù)手冊開啟低速優(yōu)化DE=1。

由此計算得出的TOA為:

這與實測結(jié)果(使用EK850低功耗測試儀測量,發(fā)射機(jī)供電電壓為3V,下同)相接近(見圖1)。

其中,圖6 記錄了兩次發(fā)射過程。圖中峰值為115mA,對應(yīng)于發(fā)射電流。其持續(xù)時間對應(yīng)于系統(tǒng)的廣播時間Tpacket,實測值與理論值相近。最小電流為0.74μA,對應(yīng)于待機(jī)電流。

圖6 發(fā)射機(jī)實時功耗

4.2 平均功耗與待機(jī)時間

根據(jù)上述TOA計算與實測結(jié)果,按照最大發(fā)射功率為+20 dBm、發(fā)射頻度為每小時發(fā)射一次進(jìn)行仿真計算,得出的功耗如圖7所示。

圖7 發(fā)射機(jī)平均功耗

圖中給出的發(fā)射時工作電流為115mA(圖中藍(lán)線),每小時發(fā)射一次的平均電流為16.31μA(圖中紅線)。對于發(fā)射時長占比更低的系統(tǒng),若按照每天發(fā)射一次測算,則可計算出平均工作電流為0.78μA(含MCU掉電電流0.1μA),低于電池的自放電電流。

系統(tǒng)的待機(jī)時間可根據(jù)電池容量和平均工作電流來測算。采用容量500mAh的堿性電池供電時,若每小時發(fā)射一次,系統(tǒng)的待機(jī)時間為3.10年。若每天發(fā)射一次,待機(jī)時間為77.94年。而按照每天發(fā)射一次的發(fā)射頻度和0.74μA的實測待機(jī)電流計算,系統(tǒng)的待機(jī)時間也超過了優(yōu)質(zhì)電池10年的保存期限。因此可以認(rèn)為,在這樣的使用頻度下,基本可以保證10年的待機(jī)時間。

5 結(jié)論

LoRa終端可以實現(xiàn)極低的靜態(tài)功耗。采用ST系列低功耗單片機(jī)加LoRa模組構(gòu)成的LoRa終端待機(jī)電流一般不低于3μA本機(jī)采用STC單片機(jī)加Ra-01模組構(gòu)成LoRa發(fā)射終端,工作于LoRaWan ClassA類終端模式以控制功耗,并通過對工作場景、硬件和軟件等的極限優(yōu)化設(shè)計,進(jìn)一步降低靜態(tài)功耗,最終實現(xiàn)的靜態(tài)電流在1μA以下,從而使得LoRa終端的長時間工作甚至全生命周期免維護(hù)運(yùn)行成為可能。

猜你喜歡
模組低功耗功耗
移遠(yuǎn)通信:以利潤換市場
核芯互聯(lián)發(fā)布高性能ADC模數(shù)轉(zhuǎn)換器
萊迪思發(fā)布全新低功耗FPGA技術(shù)平臺
高通聯(lián)發(fā)科等公司與阿里達(dá)成合作
揭開GPU功耗的面紗
物聯(lián)網(wǎng)產(chǎn)業(yè)離不開低功耗藍(lán)牙通信技術(shù)
全模組電源選購
環(huán)保之功,從主板做起
μCOS-Ⅱ?qū)崟r操作系統(tǒng)在μ’nSPTM中的低功耗研究
基于Chirp擴(kuò)頻的超寬帶信號傳輸性能分析
会理县| 常德市| 准格尔旗| 潜山县| 汉阴县| 来安县| 南澳县| 论坛| 商河县| 丁青县| 樟树市| 乐昌市| 博乐市| 东乡| 九龙城区| 沛县| 秀山| 陇南市| 教育| 拉孜县| 巴东县| 普兰店市| 阿拉善右旗| 象山县| 襄垣县| 景泰县| 鹤峰县| 吉木乃县| 荣昌县| 黎城县| 重庆市| 肃北| 宁波市| 山阳县| 靖江市| 内乡县| 大冶市| 民权县| 静乐县| 北辰区| 雷波县|