PIC单片机在电话远程控制器中的低功耗设计
控制器进入电话接收状态,开始接收远程传输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信号发送以及接收子程序。
;初始化寄存器
F0EQU0H
RTCCEQU01H
PCEQU02H
STATUSEQU03H
FSREQU04H
RAEQU05H
RBEQU06H
RCEQU07H
RDEQU08H
REEQU09H
TRISAEQU85H
TRISBEQU86H
TRISCEQU87H
TRISDEQU88H
TRISEEQU89H
DAIFSEQU0X50;待发送的数据放在50开始的区域
RECEEQU0X21
SENDEQU0X22
DAIJSEQU0X40;数据暂存在从40H开始的区域
;MT8880设置子程序
;置MT8880为DTMF接收状态
R8880:MOVLW0X0D
MOVWFREVE;写控制寄存器A(接收模式)
MOVLW0X00
MOVWFREVE;写控制寄存器B(突发模式)
REIURN
;置MT8880为DTMF接收状态
T8880:MOVLW0X0F
MOVWFSEND;写控制寄存器A(发送模式)
MOVLW0X00
MOVWFSEND;写控制寄存器B(突发模式)
RETURN
;DTMF发送子程序
TELEPHON:CALLT8880;设置为发送模式
LOOP:MOVFDAIFS,0;拔号
MOVLWSEND
INCFDAIFS,1;检查是否发送结束
LL1:BTFSSSEND,1
GOTOLL1;已经发送完毕
CALLDELAY200;延时200ms
DECFDATALENGTH
GOTOLOOP;发送完毕
RETURN
《PIC单片机在电话远程控制器中的低功耗设计(第2页)》
本文链接地址:http://www.oyaya.net/fanwen/view/143370.html
*当控制器作为报警器,并处于警备状态时,报警探头时刻检测防范区域的情况;当探头向控制器发出警情信息,输入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信号发送以及接收子程序。
;初始化寄存器
F0EQU0H
RTCCEQU01H
PCEQU02H
STATUSEQU03H
FSREQU04H
RAEQU05H
RBEQU06H
RCEQU07H
RDEQU08H
REEQU09H
TRISAEQU85H
TRISBEQU86H
TRISCEQU87H
TRISDEQU88H
TRISEEQU89H
DAIFSEQU0X50;待发送的数据放在50开始的区域
RECEEQU0X21
SENDEQU0X22
DAIJSEQU0X40;数据暂存在从40H开始的区域
;MT8880设置子程序
;置MT8880为DTMF接收状态
R8880:MOVLW0X0D
MOVWFREVE;写控制寄存器A(接收模式)
MOVLW0X00
MOVWFREVE;写控制寄存器B(突发模式)
REIURN
;置MT8880为DTMF接收状态
T8880:MOVLW0X0F
MOVWFSEND;写控制寄存器A(发送模式)
MOVLW0X00
MOVWFSEND;写控制寄存器B(突发模式)
RETURN
;DTMF发送子程序
TELEPHON:CALLT8880;设置为发送模式
LOOP:MOVFDAIFS,0;拔号
MOVLWSEND
INCFDAIFS,1;检查是否发送结束
LL1:BTFSSSEND,1
GOTOLL1;已经发送完毕
CALLDELAY200;延时200ms
DECFDATALENGTH
GOTOLOOP;发送完毕
RETURN
《PIC单片机在电话远程控制器中的低功耗设计(第2页)》