這幾天在玩ti的cc2530,測試其zigbee協議棧的低功耗模式,ti確實花了不少功夫在這套協議棧上以及支撐的操作的系統osal,非常好用。做了幾個簡單的配置即可進入低功耗模式,並且資料採集、通訊均正常。
/ 這個我有研究過,如果不配置dev_hold,裝置會一直加網,直到有網路。如果想要裝置隔一段時間再加網,可以參照下面的做法(需要注意的是,我只驗證了裝置會按照設定的時間起來加網,並不能說明降低了功耗)。
#define nwk_init_fail_max 5{……
if ( events & zdo_network_init )
zdo_startdevice( (uint8)zdo_config_node_descriptor.logicaltype, devstartmode,
default_beacon_order, default_superframe_order );
// return unprocessed events
return (events ^ zdo_network_init);}……
}這樣更改以後,裝置上電會首先嘗試5次加網,如果都失敗,其後就會每1分鐘起來加網一次。
另外,由於osal_start_timerex()第二個引數為uint16型別的,這樣就限制了延遲時間的大小,我想問下,怎麼設定5分鐘或更長時間的延遲?
//另外的網友答覆:最新的協議棧中osal_start_timerex函式的時間引數已經是32位的了,可以定義更長時間的定時器了。
外部中斷 CC2530
中斷在計算機組成中都有詳細介紹。中斷分為外部中斷和內部中斷。對於cc2530片上系統來說,通用i o引腳設定為輸出時候,可以用於產生中斷,可以設定為外部訊號的上公升或下降沿出發。p0,p1,p2都有中斷使能位。對於ien1 2暫存器內的埠所有的位都是公共的。此外還包括其他很多態別的中斷 除了公共中斷...
CC2530學習筆記
第四單元 定時器計數器應用 1 定時器 計數器的分類 cc2530中共包括5個定時器 計數器,分別是定時器1 定時器2 定時器3 定時器4和睡眠定時器。2 定時器 計數器的作用 1 計數器功能 對任意時間間隔的輸入訊號的個數進行計數,一般用來對外界事件進行 計數。其輸入訊號一般來自微控制器外部開關型...
CC2530之時鐘源
系統時鐘 相關暫存器 32 mhz 晶振 16 mhzrc振盪器 注意 2mhz晶振啟動時間對一些應用程式來說可能比較長 16mhzrc振盪器功耗低於晶振,但是由於不像晶振那麼精確,不能用於rf收發器操作 32 khz 晶振 32 khzrc振盪器 注意 相對於32 khzxosc解決方案32 kh...