新聞中心

EEPW首頁(yè) > 手機(jī)與無線通信 > 設(shè)計(jì)應(yīng)用 > 一種基于ZigBee技術(shù)的智能家居無線網(wǎng)絡(luò)系統(tǒng)

一種基于ZigBee技術(shù)的智能家居無線網(wǎng)絡(luò)系統(tǒng)

作者: 時(shí)間:2009-11-19 來源:網(wǎng)絡(luò) 收藏

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

本文引用地址:http://butianyuan.cn/article/157765.htm

端口初始化結(jié)束之后,進(jìn)行串行通訊UART接口初始化,打開UART接收中斷使能,使其能響應(yīng)網(wǎng)關(guān)發(fā)送給子節(jié)點(diǎn)的命令。定時(shí)器連續(xù)工作在計(jì)數(shù)模式,打開計(jì)數(shù)器溢出中斷使能。
單片機(jī)各部分初始化結(jié)束后,進(jìn)入LPM3休眠模式,只有ACLK始終保持工作,因此在串行通訊UART和定時(shí)器初始化中,將其工作時(shí)鐘定義為ACLK是十分重要的,否則進(jìn)入LPM3休眠模式后,串口和定時(shí)器將停止工作和相應(yīng)中斷。進(jìn)入LPM3休眠模式后,系統(tǒng)的功耗最低。
系統(tǒng)可響應(yīng)I/O中斷,當(dāng)其作為脈沖量輸入端口時(shí),脈沖量上升沿觸發(fā)中斷,經(jīng)過去抖處理后,脈沖量計(jì)數(shù)增1,遇到進(jìn)位時(shí),調(diào)用函數(shù)處理進(jìn)位,最后將計(jì)數(shù)值寫入FRAM,進(jìn)入LPM3休眠模式。當(dāng)其作為開關(guān)量輸入端口時(shí),開關(guān)量下降沿觸發(fā)中斷,停止計(jì)數(shù)器計(jì)數(shù),打開電源,打開串行通訊,重復(fù)發(fā)送報(bào)警信息,直到收到網(wǎng)關(guān)應(yīng)答信息時(shí)才停止報(bào)警,恢復(fù)定時(shí)器計(jì)數(shù),進(jìn)入LPM3休眠模式。
數(shù)據(jù)發(fā)送要遵循通訊協(xié)議,由于文章篇幅所限,這里就不多述了。
本文介紹的,由于其具有低成本、低功耗、較遠(yuǎn)的覆蓋范圍及通用性的特點(diǎn),將成為系統(tǒng)中的又一亮點(diǎn),必將給現(xiàn)代系統(tǒng)帶來一場(chǎng)新的變革。


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

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉