<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 基于A(yíng)RM及GPRS的智能家居系統的實(shí)現

基于A(yíng)RM及GPRS的智能家居系統的實(shí)現

作者: 時(shí)間:2008-03-06 來(lái)源: 收藏
SN75LBC184是RS485驅動(dòng)芯片。我們將S3C44B0的第二個(gè)串口(UART1)擴展為系統的RS485總線(xiàn)接口。該接口是CPU與“三表”及刷卡器等設備的通信接口。CPU按照主從模式與“三表”進(jìn)行通信。CPU定義為主設備,“三表”為從設備。主從設備都有唯一的設備地址,通信時(shí),主設備向指定地址的從設備發(fā)查詢(xún)命令,從設備返回當前數據給主設備。
        
4.系統軟件設計
        
4.1終端軟件
        
傳統的單片機程序設計基本上都采用順序結構,實(shí)時(shí)性低且CPU對資源的利用率不高。這里,我們采用了嵌入式實(shí)時(shí)操作系統VxWorks,它是美國風(fēng)河(WindRiver)公司于1983年設計開(kāi)發(fā)的一種嵌入式實(shí)時(shí)操作系統(RTOS)。終端軟件設計包括針對系統硬件平臺進(jìn)行的操作系統的移植和在VxWorks平臺上應用程序的設計兩部分。操作系統的移植的重點(diǎn)也即難點(diǎn)是BSP(Board Support Package)的設計。VxWorks本身提供了針對許多處理器的BSP,但針對S3C44B0的BSP并未提供。在設計系統BSP時(shí),我們首先仔細研究了其中一種BSP代碼范例,了解并掌握了BSP的結構,然后在風(fēng)河公司針對ARM處理器提供給用戶(hù)的BSP模板的基礎上設計了本系統的BSP,限于篇幅,對操作系統的移植部分本文將不作闡述。
        
監控終端的應用程序采用模塊化的設計思想。由于VxWorks支持多任務(wù),我們將每個(gè)功能模塊以一個(gè)任務(wù)來(lái)實(shí)現。從時(shí)間上看,各個(gè)任務(wù)處于并行運行的狀態(tài),極大地提高了系統對事件響應的速度,有效地提高了CPU對資源的利用率。終端應用程序包含五個(gè)任務(wù),分別是:消息處理任務(wù)、傳感器檢測任務(wù)、GPRS通信任務(wù)、RS485總線(xiàn)設備通信任務(wù)、按鍵檢測及處理任務(wù)。除消息處理任務(wù)以外,其它五個(gè)任務(wù)優(yōu)先級相同。VxWorks中任務(wù)優(yōu)先級從0到255,0為最高優(yōu)先級,255為最低優(yōu)先級。我們將消息處理任務(wù)優(yōu)先級設定為90,其它四個(gè)任務(wù)優(yōu)先級都設定為100。這樣可使消息處理任務(wù)盡快的處理其它任務(wù)發(fā)送來(lái)的消息,提高系統對外部事件的響應速度。下面分別對各個(gè)任務(wù)所實(shí)現的功能進(jìn)行簡(jiǎn)要的介紹。
      
(1)消息處理任務(wù)
        
該任務(wù)循環(huán)檢測自己的消息隊列,當有其它任務(wù)發(fā)送來(lái)的消息時(shí),讀取消息,對消息進(jìn)行解析,確定事件類(lèi)型,然后調用事件相應的處理函數進(jìn)行處理。本系統定義了多種事件類(lèi)型,主要有如下幾種事件:傳感器告警事件、設置終端參數事件、傳感器狀態(tài)請求事件、刷卡開(kāi)門(mén)事件、水表數據查詢(xún)事件、電表數據查詢(xún)事件、煤氣表數據查詢(xún)事件和按鍵設置事件。
      
(2)傳感器檢測任務(wù)
       
在任務(wù)運行的時(shí)間片內,首先判斷系統當前所的處狀態(tài),如果系統處于設防狀態(tài),那么CPU將對室內所有已安裝傳感器進(jìn)行循環(huán)檢測。如果系統工作在撤防狀態(tài)下,那么只對煙霧、煤氣傳感器進(jìn)行檢測。當任務(wù)檢測到某一傳感器的輸出達到系統設定的告警閾值時(shí),將向消息處理任務(wù)的消息隊列發(fā)送一條傳感器告警消息,消息中包含傳感器通道編號。
       
(3)GPRS通信任務(wù)
       
此任務(wù)完成GPRS模塊的初始化、終端與監控中心建立連接以及數據通信功能。
       
(4)RS485總線(xiàn)設備通信任務(wù)
       
任務(wù)完成“三表”數據的讀取以及用戶(hù)刷卡檢測功能。
       
(5)按鍵檢測及處理任務(wù)
       
該任務(wù)完成對終端上三個(gè)功能鍵的掃描。當其中某個(gè)按鍵被按下時(shí),CPU檢測到鍵值,向消息處理任務(wù)發(fā)送消息,消息任務(wù)將調用相應的處理函數進(jìn)行處理。
       
4.3監控中心軟件
       
監控中心軟件采用Borland C++ Builder 6.0開(kāi)發(fā)。它使用WinSock控件接收和發(fā)送數據。中心軟件采用模塊化的設計思想,分別實(shí)現系統參數設置、操作員權限管理、用戶(hù)管理、告警事件處理、數據庫的維護以及數據打印和系統幫助等功能。
       
5.結束語(yǔ)
       
本系統實(shí)現了對住宅小區內多用戶(hù)室內安全狀況的集中監控與管理,還實(shí)現了對用戶(hù)家中的水表、電表、煤氣表的遠程無(wú)線(xiàn)抄送。該系統在實(shí)用性、可靠性以及成本等方面取得了較為滿(mǎn)意的效果。目前,本系統已經(jīng)完成最后調試,即將進(jìn)入現場(chǎng)試運行。由于系統在硬件設計上充分考慮到了不同的應用場(chǎng)合,留有較大的擴展空間,因此相信該系統將會(huì )有較為廣闊的應用前景。
       
參考文獻
       
[1]鐘章隊、蔣文怡、李紅君等.GPRS通用分組無(wú)線(xiàn)業(yè)務(wù),人民郵電出版社。2001.12.
       
[2]王慶剛,楊佃福. GPRS技術(shù)在嵌入式系統中的應用[J]. 微計算機信息,2005,21-5:69-70.
       
[3]Samsung Electronics. Samsung S3C44B0 RISC microprocessor Reference.
      
[4] BenQ Corporate. M22 GSM/GPRS module datesheet.2005.6.

上一頁(yè) 1 2 下一頁(yè)

關(guān)鍵詞:

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>