<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è) > 嵌入式系統 > 設計應用 > 基于ZigBee技術(shù)的智能家居無(wú)線(xiàn)網(wǎng)絡(luò )系統

基于ZigBee技術(shù)的智能家居無(wú)線(xiàn)網(wǎng)絡(luò )系統

作者: 時(shí)間:2012-04-20 來(lái)源:網(wǎng)絡(luò ) 收藏


  4.2 鐵電存儲器

  存儲器采用RAMTRON公司的FM24CL16,它是一種串行非易失性存儲器,其特點(diǎn)是可無(wú)限次地讀寫(xiě),掉電數據可保護10年;寫(xiě)數據無(wú)延時(shí);使用二線(xiàn)制串行總線(xiàn)及其傳輸規范進(jìn)行雙向傳輸,這種方式占用腳位少,占用線(xiàn)路板空間小,總線(xiàn)速度可以達到1MHz,靜態(tài)工作電流僅為1μA。這些特點(diǎn)使其十分適合本設計對功耗低、體積小、數據讀寫(xiě)頻繁的要求。

  4.3 磁保持繼電路

  磁保持繼電器采用松下公司的TQ2-L2—3V,通過(guò)MSP430F1232的輸出管腳DO_S、DO_R控制開(kāi)關(guān)管Q1、Q2的開(kāi)關(guān)狀態(tài),實(shí)現繼電器線(xiàn)圈電流的通斷控制,從而控制繼電器觸點(diǎn)的動(dòng)作。如果采用傳統繼電器,需要一直提供電流來(lái)維持繼電器狀態(tài),這樣功耗很難降低。磁保持繼電器具有鎖存功能,觸點(diǎn)動(dòng)作后無(wú)需繼續提供電流,從而降低了功耗。其開(kāi)關(guān)兩端可耐壓直流220V,交流250V,滿(mǎn)足了通斷市電的要求。

  4.4 收發(fā)模塊

  該模塊特點(diǎn)是體積小、內嵌網(wǎng)絡(luò )通訊協(xié)議,符合網(wǎng)絡(luò )層的標準,為IEEE.802.15.4標準兼容產(chǎn)品,可實(shí)現高效率發(fā)射、高靈敏度接收,無(wú)線(xiàn)數據速率高達76.8kbit/s。通過(guò)串口與MSP430F1232進(jìn)行通訊,將獲得的數據無(wú)線(xiàn)發(fā)送出去。

  4.5 撥碼開(kāi)關(guān)

  八位撥碼開(kāi)關(guān)的狀態(tài)決定該子節點(diǎn)的節點(diǎn)號和其實(shí)現的功能。

  5 無(wú)線(xiàn)節點(diǎn)軟件設計

  鑒于節點(diǎn)使用的通用性要求,需要上電后根據撥碼開(kāi)關(guān)確定子節點(diǎn)號及其所要完成的功能。其主要功能包括水電氣三表的數據采集和存儲、報警信息的獲取、設防撤防狀態(tài)的獲取和以上信息數據的無(wú)線(xiàn)發(fā)送。根據撥碼開(kāi)關(guān)的狀態(tài)確定節點(diǎn)需要完成的其中一項或幾項工作,并調用相應的初始化程序。由于無(wú)線(xiàn)通訊模塊的功耗較大,CPU大部分時(shí)間都處于休眠狀態(tài),通過(guò)各級中斷喚醒CPU和恢復無(wú)線(xiàn)通訊模塊的正常工作。數據的無(wú)線(xiàn)發(fā)送和接收要遵守家庭網(wǎng)關(guān)通訊協(xié)議。

  系統主程序流程圖如圖3所示。系統上電后,先關(guān)閉看門(mén)狗定時(shí)器,開(kāi)關(guān)電源進(jìn)入SNOOZE節功狀態(tài),同時(shí)關(guān)閉無(wú)線(xiàn)通訊模塊電源,進(jìn)行I2C接口的初始化,讀取撥碼開(kāi)關(guān)狀態(tài),并根據撥碼開(kāi)關(guān)的狀態(tài)進(jìn)行單片機通用I/O口的初始化,以確定其作為脈沖量輸入端口還是開(kāi)關(guān)量輸入端口,或是撤防設防輸入端口。其中,若作為脈沖量輸入端口,則調用相應脈沖量初始化程序,設置其端口為上升沿觸發(fā);若作為開(kāi)關(guān)量輸入端口,則調用相應開(kāi)關(guān)量初始化程序,設置其端口為下降觸發(fā);若作為撤防設防輸入端口,則調用設防撤防初始化程序,當前端口狀態(tài)為設防狀態(tài)時(shí),進(jìn)行撤防初始化,設置其端口為上升沿觸發(fā)。當前端口狀態(tài)為撤防狀態(tài)時(shí),進(jìn)行設防初始化,設置其端口為下降沿觸發(fā)。



  端口初始化結束之后,進(jìn)行串行通訊UART接口初始化,打開(kāi)UART接收中斷使能,使其能響應網(wǎng)關(guān)發(fā)送給子節點(diǎn)的命令。定時(shí)器連續工作在計數模式,打開(kāi)計數器溢出中斷使能。

  單片機各部分初始化結束后,進(jìn)入LPM3休眠模式,只有ACLK始終保持工作,因此在串行通訊UART和定時(shí)器初始化中,將其工作時(shí)鐘定義為ACLK是十分重要的,否則進(jìn)入LPM3休眠模式后,串口和定時(shí)器將停止工作和相應中斷。進(jìn)入LPM3休眠模式后,系統的功耗最低。

  系統可響應I/O中斷,當其作為脈沖量輸入端口時(shí),脈沖量上升沿觸發(fā)中斷,經(jīng)過(guò)去抖處理后,脈沖量計數增1,遇到進(jìn)位時(shí),調用函數處理進(jìn)位,最后將計數值寫(xiě)入FRAM,進(jìn)入LPM3休眠模式。當其作為開(kāi)關(guān)量輸入端口時(shí),開(kāi)關(guān)量下降沿觸發(fā)中斷,停止計數器計數,打開(kāi)電源,打開(kāi)串行通訊,重復發(fā)送報警信息,直到收到網(wǎng)關(guān)應答信息時(shí)才停止報警,恢復定時(shí)器計數,進(jìn)入LPM3休眠模式。



  數據發(fā)送要遵循通訊協(xié)議,圖4所示為數據發(fā)送程序流程圖。由于文章篇幅所限,這里就不多述了。

  本文介紹的基于技術(shù)的系統,由于其具有低成本、、較遠的覆蓋范圍及通用性的特點(diǎn),將成為系統中的又一亮點(diǎn),必將給現代系統帶來(lái)一場(chǎng)新的變革。

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

評論


相關(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>