毕业设计论文 - 基于51单片机 下载本文

TR1=1; //开启计数器 while(!TF1) {

if(P0==0x7f) //在有电话来之前检测是否修改密码 { delay(120); if(P0==0x7f) {

code_signal=1;///code_signal修改密码标志 while(P0==0x7f); break; } } }

TF1=0; //软件清除中断标志位 }

3.2 双音多频模块的设计

双音多频模块的主要器件为MT8870,它主要用来对电话网络信号解码编码。

3.2.1 MT8870工作原理

MT8870是Mitei公司生产的一种功能较强的DTMF发送与接收器。它体积小、抗干扰性强。晶振频率为3.58 MHz。输出为二进制编码信号,便于与计算机接口,是目前国际流行的DTMF解码器件。

发送:当MT8870作为DTMF发送器时,数据总线Q1~Q4上四位二进制码被锁存在发送数据寄存器中,发送的DTMF信号频率由3.58 MHz的晶振分频产生。当按下相应的键时,MT8870会按照表1输出相对应的一组高低频率的信号送到电话网络中去。

表1 MT8870解码表

数字键盘 697 低频组/Hz 770 852 941 1209 1 4 7 0 高频组/Hz 1336 2 5 8 * 1477 3 6 9 # 1633 A B C D 13

接收:当MT8870作为DTMF发送器时,MT8870会检测出电话网络传送来的一组高低频率信号,并按表1解码,再根据表2进行编码,编码后的数据从MT8870的数据总线Q1~Q4输出,由此便实现了解码。

表2 MT8870编码表 Digit ANY 1 2 3 4 5 6 7 8 9 0 * # A B C D A B C D

TOE L H H H H H H H H H H H H H H H H H H H H INH X X X X X X X X X X X X X L L L L H H H H EST H H H H H H H H H H H H H H H H H L L L L Undetected putput code will remain the same as the previous detected code Q4 Z 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 Q Z 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 Q2 Z 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 Q1 Z 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 14

3.2.2 双音多频模块硬件原理图

+5D2.2R12C3D3R18123456789IN+IN-GSVrefINHPWDNOSC1OSC2VssVDDSt/GtEstStDQ4Q3Q2Q1TOE181716151413121110R21G1STDQ4Q3Q2Q1+5

图5 双音多频电路

3.2.2 双音多频模块有关软件设计

MT_8870解码程序如下:

void MT_8870(uchar *TAB) // MT_8870解码电话中输入的数字 {

uchar i;

for(i=0;;i++) {

while(!start) //等待P3.2电平置高 { no_signal=check_15s(); if(no_signal) break; }

time_no=0; //未超时而检测到信号即刻清除 time_s=0; // 计时数据 if(no_signal) break; //15s内没有操作就跳出循环

/****************************************************/ TAB[i]=translate(); //存储MT8870解码数据 while(start); //等待一次解码过程的结束 if(TAB[i]==0x0a) break;//密码含有#键即刻结束解码 } }

15

3.3 自动摘机及超时挂机模块的设计

在本系统中,摘机和挂机实际上就是对家用电器控制的“开始”和“结束”:自动摘机表示系统启动控制;超时挂机表示对家用电器操作结束。 3.3.1 自动摘机及超时挂机模块硬件设计 1.摘机及超时挂机模块硬件原理图

LINE1K1.7RVMYL-150/100AC411N40041N4004T1R5XP13213PINSP3V41N400465R4V2LINE224V3C5D1C+5D2.2Line1138K1TN2-5VU1E740610PICK11104279K1.7

图6 自动摘机及延时挂机电路

2 .动摘机及超时挂机模块硬件原理

由于该设备为家用电器电话远端遥控设备,当设备检测到铃流信号的振铃次数达到规定的次数(大约8次)时以达到接受控制信号的能力,设备应该有一个模拟摘机的功能;同时为了不影响电话功能的正常使用,在遥控电器操作结束后设备应该能够自动挂机。根据系统设计有关技术指标,自动摘机及超时挂机电路设计如图6所示。

自动摘机:当单片机计数器计到8次时给P3.7口输出高电平,这一高电平即为模拟摘机脉冲控制信号PICK,PICK信号经一非门驱动控制继电器K1吸合,继电器K1吸合使模拟电话机电阻RV接入电话线路中,使回路电流变大,交换机检测到电话线路的电流变化后便停止铃流发送,并将线路电压变为十几伏的直流,完成模拟摘机过程。

超时挂机:当遥控电器操作过程结束后,如果用户未执行挂机动作,则设备在用户停止操作以后,自动延时20s后挂机。延时时间由软件编写时设定。

16