日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

休眠后gpio状态_浅谈Digi XBee模块的休眠模式

發布時間:2025/3/8 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 休眠后gpio状态_浅谈Digi XBee模块的休眠模式 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

淺談Digi XBee模塊的休眠模式

2020-3-25

Digi XBee S2C模塊,如果僅連接電源線可以測得,在待機情況下,大約是10.5mA左右的電流,在休眠時的功耗可以低到0.5uA。可以知道,休眠幾乎不耗電。在Spec上標的待機功耗會比實測只接電源線耗電更高,這時因為實際應用中我們還常接上UART等IO引腳。實際上,終級的低功耗控制往往也和通信引腳和控制引腳(比如休眠使能線)密切相關,不同的CPU串口功耗也不盡相同。一般說來,CMOS的UART省電些,TTL的耗電些。此外Digi模塊內部有上拉電阻(29K),除非為了電平轉換,否則沒必要在通信線上再加上拉電阻,以免并聯后消耗更多靜態電流。對于一些CPU本身串口比較耗電,則應在通信線上加電壓型的隔離器,以盡可能減少功耗,GPIO控制線如果不需要請不要接上拉或是用管子隔離,以減少引腳休眠線的電流。

XBee ZB支持三種休眠模式:

  • 引腳休眠 (SM = 1);

  • 周期休眠 (SM = 4);

  • 周期休眠加引腳喚醒 (SM = 5)。

一個ZigBee的休眠節點在醒來后馬上和醒來時每隔100ms去向父節點索取緩存的數據包(這個過程我們稱為polling)。

當休眠節點進入睡眠模式時:

  • On/Sleep拉低(de-asserted)以宣示模塊進入睡眠模式;

  • 如果CTS硬件流控被啟用,CTS拉高(de-asserted)來提示串口數據不該再送往模塊;

  • 如果入網指示Associate引腳被配置使用,它將被拉低以防止電源用于點亮聯網提示燈;

  • 如果用到引腳喚醒,睡眠請求引腳Sleep_RQ(D8)被配置為下拉輸入口以便外部設備可以拉高來使模塊休眠(僅用于 SM = 1 或 SM =5);

  • 其它引腳則不會有任何變化,以便按用戶配置方式應用。

當XBee模塊從睡眠中醒來:

  • On/Sleep引腳被拉高以宣示模塊醒來;

  • 如果CTS流控被啟用,CTS引腳拉低表示模塊準備好接收串口數據;

  • 如果入網指示Associate引腳被配置使用,它拉高繼續之前的預配置行為;

  • 其它引腳則不會有任何變化,以便按用戶配置方式應用。

休眠指令:

命令

描述

參數范圍

默認值

SM

Sleep mode:

0-不休眠;

1-管教休眠;通過SLEEP_SQ管腳來控制模塊的休眠/喚醒狀態SLEEP_SQ Line。

4-異步周期休眠;

5-異步周期休眠;

6-7-休眠支持模式;

7-8-同步周期休眠模式

SO

Sleep option休眠選型

對于同步休眠模式:

Bit0=首選休眠協調器;

Bit1=非休眠協調器;

Bit2=使能API休眠狀態消息;

Bit3=關閉提早喚醒;

Bit4=開啟節點類型平等;

Bit5=關閉單獨協調器同步重發;

對于異步休眠節點:

Bit8=總是在ST時間內喚醒。

SN

Number of sleep periods休眠周期數

1~0xFFFF

1

SP

Sleep period休眠周期

此命令定義了每個輪換周期內模塊休眠的時間。

1~1440000

2s

ST

Wake time喚醒時間

0x45~0x36EE80

0xD0(2s)

WH

Wake host喚醒主機

0~0xFFFF

0

休眠診斷命令:

SS

Sleep status休眠狀態:

bit0:

Bit1:

Bit2:

Bit3:

Bit4:

Bit5:

Bit6:

只讀

0x40

OS

Operational sleep period運行的休眠周期

只讀

0x12C

OW

Operational wake period運行的喚醒周期

只讀

0

MS

Number of missed syncs丟失同步數

只讀

0

和休眠相關的IO設置命令:

D8

DIO8/SLEEP_RQ配置:

0=輸入,不監測;

1=休眠請求;

3=數字輸入,監測;

4=數字輸出低;

5=數字輸出高。

D9

DIO9配置:

0=輸入,不監測;

1=ON/SLEEP;

3=數字輸入,監測;

4=數字輸出低;

5=數字輸出高。

周期休眠的參數

參數

名稱

默認值

描述

SP

休眠周期

0x20,即320ms

模塊的休眠周期

SN

休眠周期數量

配置SP的倍數以擴展休眠時間

ST

醒來時間

定義醒著時,在結束數據收發后保持醒著的時間

SO

休眠選項

定義休眠模式行為的選項: 0x02 不管有無數據總是醒ST;0x04 啟用擴展休眠 SN*SP

* commissioning按鍵會喚醒設備30s * 模塊醒來后先poll數據,除非用SO強制它總是醒一定時間,否則無活動會立即休眠,ST實際上是數據活動結束后的計時器,在計時期間有數據會重置這個計時器。?

關于睡眠的幾個常見問題:

1、xbee 短睡眠周期(SP)是多少?

SP的范圍值是320毫秒到28秒。

2、xbee 最長睡眠周期是多少?

SP最大可設置28s,加上擴展休眠的設置,最長一次休眠可達21天左右,計算如下:T=SN*SP=FFFF*AF0*10MS=65535*2800*10=1,834,980,000毫秒=1834980秒=509.7小時=21.2天。

3、xbee 引腳休眠相關的管腳是什么狀態?

Sleep_RQ(pin9 置高),CTS(pin12 置高),On/Sleep(pin13置低)指示模塊處于休眠狀態。

4、xbee喚醒期間多長時間輪詢一次父節點?

digi 的xbee從休眠到喚醒后,每100毫秒輪詢一次父節點,輪詢一次要用10毫秒。

5、如何讓Xbee模塊快速進入休眠模式?

Xbee 模塊在接收完數據后,發送SI這個指令,進入休眠,節約功耗。

6、Digi ZB引腳休眠切換到喚醒發數據要多長時間?

ZB引腳休眠的時候,從休眠到喚醒發送數據,要有一個時間的過程。就是有的客戶反映的是:發送數據慢。

測試結果一:5秒

測試條件:

協調器:VERSION =2164;SC=4;PANID=1234;AR=0

節點:VERSION=2864;SC=4;PANID=1234;SM=1

軟件:X-CTU;?秒表

測試結果二:10秒

協調器:VERSION =2164 缺省值

節點:VERSION=2864;SM=1

軟件:X-CTU;?秒表

測試方法一:

1. ??按上述條件,配置好兩個模塊的參數,并且能正常通訊。

2. ??節點這端,從Modem Configuration 切換到Terminal,并敲字符”a” ,同時秒表開始計時。

3.???協調器這端,始終在Terminal這欄內,等待接收字符

4. ??等協調器這端收到字符,立即停止秒表,就是這次測試從休眠到喚醒后能發數據的時間。

測試方法二:

利用JN=1,節點切換到喚醒,協調器收到節點上電通知。

用XCTU來測試休眠行為:

XCTU上的終端窗口有部分9針串口引腳電平指示和引腳電平控制,只是許多人不知道這個特性。?

指示電平用深色背景時表示低電平,控制電平當選中時表示啟用。當然模塊也不是并不是默認有對應的引腳或是有把GPIO往串口對應信號去接。畢竟這些信號是有些類型的調制解調器和計算機通信時用的。

電平

說明

/CTS

D7,由模塊控制的指示電平,低電平有效,默認為低電平,表示通知電腦要送數據,休眠變高平,流控時變高電平

CD

模塊無對應引腳,表示有載波,無用

DSR

模塊無對應引腳,通知計算機,可以發信息過來,無用

/DTR或

Sleep_RQ

D8,計算機或主控對模塊的控制電平,低電平有效(默認),通知模塊可進行傳輸,或是喚醒模塊

/RTS

D6,計算機控制,表示請求發送,低電平有效(默認),高電平表示流控,不要再收了,模塊默認不啟用以防止緩沖溢出

*休眠時,在XCTU上對DTR/Sleep_RQ去掉勾選狀態,即拉高該引腳,表示讓模塊進入休眠狀態,此時CTS也會變高電平,說明在休眠中。

*RTS是主控的流控,不可長時間啟用以防止接收數據沒法發給主機,所以默認不對主控進行流控,而最多是對模塊進行流控(CTS)。

總結

以上是生活随笔為你收集整理的休眠后gpio状态_浅谈Digi XBee模块的休眠模式的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。