PIC单片机在电话远程控制器中的低功耗设计
语音电路如图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是程序流程图。javascript:window.open(this.src);" style="cursor:pointer;"/>
下面主要介绍初始化程序、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号电池可供控制器工作一年,产品可实现对家用电器控制,又具有报警及紧急求助功能,可进行远程控制和本地机的控制,且不影响电话正常使用。在电话远程控制器的原理基础上,设计的有线防盗报警产品更具市场前景,成本更低,已批量投入市场,市场反映良好。