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