|
系統振蕩電路的設計對系統的穩定性、功耗等影響很大。一般情況下,系統從Sleep狀態下喚醒時,振蕩電路最難啟動(尤其系統工作在高溫、低壓、低頻的情況下)。此時,電阻Rs有利于振蕩電路的啟動,因為廉價的碳膜電阻容易產生白噪聲,從而幫助電路起振。此外,選擇C2稍大于C1以增大相移,也有利于電路起振。
 2 具體應用例子 2.1 系統組成及框圖 系統主要由PIC單片機、雙音頻解碼拔號電路、語音集成電路、接口電路、Vcc電源控制電路、射頻發射電路和EEPROM組成,可完成對家用電器的控制和對報警求援語音信息的自動傳送,如圖3所示。 2.2 控制器工作方式 *當與控制器相串聞的電話機(以下稱為本地機)處于摘機時,電話線輸入電壓發生變化,引起CD40106的2腳輸出電平變化,輸入到CPU的RB0端口產生中斷信號,喚醒CPU,控制器進入工作狀態。通過本地機的拔號盤對控制器的各種功能進行控制。如控制電視、音響、照明燈等電器電源的開關。 *當控制器接收到振鈴信號時,CD40106的4腳輸出電平變化,輸入CPU的RB6端口產生中斷信號,喚醒CPU進入工作狀態,并對振鈴信號進行計數;達到設定鈴聲數后,使控制器進入電話接收狀態,開始接收遠程傳輸DTMF信號,經MT8880解調得到的信號通過IRQ向單片機發出中斷信號,將數據存入寄存器,經CPU運行,對控制器的各種功能進行控制。 *當控制器作為報警器,并處于警備狀態時,報警探頭時刻檢測防范區域的情況;當探頭向控制器發出警情信息,輸入CPU的RB5中斷產生信號,控制器進入工作狀態,從EEPROM芯片讀出預先設置的報警電話號碼,經MT8880轉換為DTMF信號,自動撥號,以語音形式將信息傳送給用戶或直接報警。 2.3 應用電路 (1)電話接口電路 電話機與控制器采用控制器在前,電話機在后的串聯方式,可實現電話機對控制器各種功能的控制。接口電路由過壓保護電路、極性轉換電路和中斷請求電路組成,如圖4所示。 ①過壓保護電路。在電話線回路上加入了一個壓敏電阻R,它的作用是當它兩端的電壓大于其工作電壓時呈短路狀態,從而保護后級電路免受高壓危害。當加到它的兩端的電壓小于其工作電壓,壓敏電阻呈開路狀態,對后級電路的工作沒有任何影響。在本設計中,壓敏電阻的工作電壓為220V。 ②極性轉換電路。由于在電話線上傳輸的是交流信號,為了使信號的極性固定,在電路中加入電橋,進行全波整流。 ③中斷請求電路。為延長電池工作時間,CPU在待機時處于休眠的省電狀態,在實現遠程電話機和本地機對控制器功能控制時,由中斷請求電路將CPU喚醒。
 (2)語音電路 語音電路如圖5所示。它以ISD4000語音芯片為核心,主要是存儲報警語音,輸出經功率放大后傳送到電話線上。 (3)MT8880與PIC單片機的接口電路 MT8880是Mitel公司的DTMF收發器,具有功能強、功耗低、工作穩定、可靠等性高優點,因此在DTMF信號調制的場合得到了廣泛的應用。MT8880與PIC單片機的接口電路如圖6所示。 ①MT8880與單片機的接口電路。D0~D3為4根數據線,MT8880對經過前置處理的DTMF信號進行解調,將解調得的信號存入片內寄存器中,并通過IRQ向單片機發出中斷信號。單片機相應中斷請求后,在R、W、RS0、RD的控制下,通過D0~D3讀出解調出的數據。 ②DTMF信號放大電路。當微處理器將要發送的DTMF數據寫入MT8880相應的寄存器時,MT8880從TONE引腳發出DTMF信號,信號經過放大電路放大后,送往變壓器進行電壓變化。 3 程序設計 程序在運行時:①為電器控制器,若是遠程電話機對控制器進行操作,是根據電話的振鈴聲數來判斷;若本地電話機對控制器進行操作,是根據本地電話機的摘機情況來判斷。②為報警器,報警探頭隨時檢測到警情并發出信號給控制器,而控制器則是根據用戶的設置情況,是處于警備與否來判斷是否拔出報警電話。圖7是程序流程圖。 下面主要介紹初始化程序、MT8880設置子程序和DTMF信號發送以及接收子程序。 ;初始化寄存器 F0 EQU 0H RTCC EQU 01H PC EQU 02H STATUS EQU 03H FSR EQU 04H RA EQU 05H RB EQU 06H RC EQU 07H RD EQU 08H RE EQU 09H TRISA EQU 85H TRISB EQU 86H TRISC EQU 87H TRISD EQU 88H TRISE EQU 89H DAIFS EQU 0X50;待發送的數據放在50開始的區域 RECE EQU 0X21 SEND EQU 0X22 DAIJS EQU 0X40 ;數據暫存在從40H開始的區域 ;MT8880設置子程序 ;置MT8880為DTMF接收狀態 R8880:MOVLW0X0D MOVWF REVE ;寫控制寄存器A(接收模式) MOVLW 0X00 MOVWF REVE ;寫控制寄存器B(突發模式) REIURN ;置MT8880為DTMF接收狀態 T8880:MOVLW 0X0F MOVWF SEND;寫控制寄存器A(發送模式) MOVLW 0X00 MOVWF SEND;寫控制寄存器B(突發模式) RETURN ;DTMF發送子程序 TELEPHON:CALL T8880 ;設置為發送模式 LOOP:MOVF DAIFS,0 ;拔號 MOVLW SEND INCF DAIFS,1 ;檢查是否發送結束 LL1:BTFSS SEND,1 GOTO LL1 ;已經發送完畢 CALL DELAY200 ;延時200ms DECF DATALENGTH GOTO LOOP ;發送完畢 RETURN ;DTMF接收子程序 RECEIVE:CALL R8880 ;設置為接收模式 RWT:MOVF DJIJS,0 MOVLW REVE BTFSS REVE,2 GOTO RWT ;查詢是否收到數據 MOVLW REVE ANDLW 0XOF MOVF REVE INCF DAIJS,1 DECE DATALENGTH RETURN 結語 利用PIC單片機低功耗方式設計電話遠程控制器,待機時由電池供電,工作時由電話網供電,系統用4節5號電池可供控制器工作一年,產品可實現對家用電器控制,又具有報警及緊急求助功能,可進行遠程控制和本地機的控制,且不影響電話正常使用。在電話遠程控制器的原理基礎上,設計的有線防盜報警產品更具市場前景,成本更低,已批量投入市場,市場反映良好。 |