基于單片機的智能家居安防系統(tǒng)設(shè)計方案
通話電路使用電話機專用通話集成電路TEA1062。送話時, 語音信號(來自ISD1420)通過M IC + 引腳輸入, DTMF信號(來自MT8880)通過DTMF引腳輸入, 經(jīng)過TEA1062 放大后從LN 引腳一起送到電話外線上。受話時, 信號通過消側(cè)音網(wǎng)絡(luò), 從IR 引腳輸入, 放大后從引腳QR 輸出, 分兩路: 一路送到ISD1420的ANA IN 端供語音錄制用,另一路送到MT8880的IN - 端提取DTMF信號。
3. 4 CAN 總線數(shù)據(jù)傳輸單元
CAN 總線數(shù)據(jù)傳輸單元由兩部分構(gòu)成, 一部分是CAN 控制器, 實現(xiàn)對總線數(shù)據(jù)的交互與控制, 另一部分是CAN 數(shù)據(jù)收發(fā)器, 實現(xiàn)數(shù)據(jù)的網(wǎng)絡(luò)傳輸。
單片機AT89S52通過控制CAN 控制器來實現(xiàn)對總線的訪問, 同時還負(fù)責(zé)功能單元的測量和控制, CAN 總線接口電路如圖3所示。
圖3 CAN總線接口電路
AT89S52 通過中斷方式訪問CAN 控制器SJA1000, 為了增強CAN 總線節(jié)點的抗干擾能力,SJA1000通過高速光耦6N137 與CAN 總線驅(qū)動器PCA82C50 相連。PCA82C50 的CANH 和CANL引腳各自接了一個5 的電阻與CAN 總線相連, 可以起到限流作用, 以免PCA82C50受到過電流沖擊。
4 軟件設(shè)計
系統(tǒng)的軟件采用模塊化設(shè)計, 主要包括主程序模塊、CAN 通信模塊、振鈴檢測模塊、語音報警模塊、DTMF收發(fā)模塊等, 這里主要介紹主程序和CAN通信模塊設(shè)計。
4. 1 主程序設(shè)計
主程序主要完成各功能模塊的調(diào)用, 檢測系統(tǒng)輸入, 然后根據(jù)系統(tǒng)狀態(tài)進行判斷處理。程序進行主循環(huán)之前還要進行必要的初始化, 如MT8880、ISD1420、SJA1000、相關(guān)標(biāo)志位等。主程序流程如圖4所示。
圖4 主程序流程圖
4. 2 CAN 通信模塊設(shè)計
CAN 通信模塊包括控制器初始化、數(shù)據(jù)接收和發(fā)送子程序。SJA1000有復(fù)位模式和工作模式兩種狀態(tài), 兩種狀態(tài)下寄存器配置不同。當(dāng)參數(shù)設(shè)置完后, CPU 發(fā)出命令, SJA1000 處于工作狀態(tài), 進行正常通信。如果通信出錯, CPU 會使SJA1000 回到復(fù)位模式。接收模塊負(fù)責(zé)節(jié)點報文的接收及相關(guān)處理。接收過程中CPU 會讀數(shù)據(jù), 根據(jù)命令字判斷數(shù)據(jù)幀的類型進行不同處理。發(fā)送模塊負(fù)責(zé)報文的發(fā)送, SJA1000 發(fā)送數(shù)據(jù)前, 要判斷是否滿足發(fā)送條件, 如果滿足, 則把報文幀信息、標(biāo)識符和要發(fā)送的數(shù)據(jù)寫入緩沖區(qū), 即可發(fā)送。JA 1000的收發(fā)流程圖如圖5所示。
圖5 JA 1000的收發(fā)流程圖
5 結(jié)束語
本系統(tǒng)以AT89S52單片機為核心, 不用對電話網(wǎng)進行任何改造, 實現(xiàn)對家居設(shè)防點進行自動檢測和語音報警。設(shè)計中用CAN 總線結(jié)構(gòu)組成安防系統(tǒng),有較好的靈活性和擴展性, 同時利用CAN 總線引入實時的數(shù)據(jù)處理, 提高了系統(tǒng)的可靠性??蓪怯羁梢晫χv、智能小區(qū)管理、門禁管理等有較大的應(yīng)用推廣價值。
評論