藍牙在無(wú)線(xiàn)溫度傳感中的應用
本系統是基于藍牙的串口應用模型SPP(SerialPortProfile)實(shí)現無(wú)線(xiàn)數據的透明傳輸,在核心協(xié)議棧之上編寫(xiě)自己的上層應用程序。CSR的藍牙核心協(xié)議棧包括HCI、LZCAP、SDP、RFCOMM等,以固件的形式提供給開(kāi)發(fā)人員,用戶(hù)編寫(xiě)的應用程序和協(xié)議棧一起運行在CSR嵌人式環(huán)境中。在CSR程序中,不同任務(wù)之間可以異步地發(fā)送消息,每一個(gè)任務(wù)在創(chuàng )建的時(shí)候可以讓其中一個(gè)擁有消息隊列,其它的就把發(fā)給任務(wù)的消息提交給該消息隊列,由任務(wù)調度程序自動(dòng)運行獲得任務(wù)的消息。藍牙模塊上層應用程序流程如圖3所示。
4 低功耗設計
作為無(wú)線(xiàn)傳感器,低功耗運行可以最大限度地延長(cháng)設備的有效使用時(shí)間,為了獲得最佳性能,設計時(shí)在電源損耗和可用性方面必須根據情況權衡使用,除了選用低功耗器件外,筆者從以下幾個(gè)方面設計了電源管理程序以盡量減少無(wú)線(xiàn)溫度傳感器的功耗。
?。?)由于無(wú)線(xiàn)溫度傳感器負責向控制終端傳輸數據,因此何時(shí)進(jìn)行數據采集、何時(shí)進(jìn)行數據傳輸可以由控制終端決定,非常適合使用休眠模式和呼吸模式,通過(guò)減少藍牙設備在微微網(wǎng)中的活動(dòng)達到節電的目的,并且控制終端一般接有持久的電源,所以電源管理的開(kāi)銷(xiāo)由終端來(lái)負責比較合適。把控制終端作為主設備,將電源管理程序設計在終端的應用控制層中,并由控制終端完成設備的查詢(xún)、配對、建鏈等工作,當無(wú)線(xiàn)傳感器與控制終端配對成功并建立RFCOMM連接后進(jìn)人休眠模式,此時(shí)主從設備仍然保持著(zhù)RFCOMM信道,只是不能發(fā)送和接收數據,休眠模式下信標間隔可設為15,電流大概在lmA左右。當需要進(jìn)行數據傳輸時(shí),退出休眠模式進(jìn)人呼吸模式,通過(guò)呼吸時(shí)隙發(fā)送數據,呼吸間隔可設為20~40ms,間隔過(guò)大會(huì )帶來(lái)明顯延遲,當數據傳輸結束后再次進(jìn)人休眠模式,從而盡可能地降低能耗。
?。?)CSR的BlueCore芯片提供T獨特的硬件節能方法—深度睡眠(Depslep)模式,進(jìn)人和退出深度睡眠模式至少需要10ms,通過(guò)按鈕或事件進(jìn)人深度睡眠模式很大程度上降低了損耗。當用戶(hù)確定將有較長(cháng)時(shí)間不使用無(wú)線(xiàn)溫度傳感器時(shí),可通過(guò)控制終端發(fā)送事件消息進(jìn)人深度睡眠模式,需要使用時(shí)再通過(guò)消息快速退出。在深度睡眠模式下電流一般可控制在50拼A左右。
?。?)凌陽(yáng)單片機SPCE06lA也可以應用CPU的睡眠模式,且A口具有鍵喚醒功能,將BCM02的PIOS與單片機的IOA7相連接,當藍牙模塊退出休眠模式,發(fā)送指令進(jìn)行數據采集時(shí),PIOS輸出高電平,通過(guò)IOA7電平的變化產(chǎn)生中斷來(lái)喚醒CPU進(jìn)人工作狀態(tài)。
評論