基于单片机实现远距离dtmf通讯设计内容摘要:

8倍,很难从系列电阻中选取,帮精度较差。 典型的R2R T 型D/A电阻网络,虽然电阻选取方便,精度较高,但需要18只电阻。 现作者参考多方面资料给出的D/A电阻网络,集权电阻D/A网络电路简洁和T型D/A电阻网络电阻选取方便,精度高之优点于一身,理论推算和实验均验证了该电路的合理性。 当图2中的电阻R=10KΩ时,不难求得其输出电压的交流分量表达式:式中的Vout为D0位至D7位输出高电平时的电压值。 图3中的R1,R2,C1,C2和运放组成你通平滑滤波网络,参数的选取应使该网络具有最佳的阻率和最平坦响应的Butterworth滤波特性。 由图可求是其传递函数为:图3 第3节 系统的软件设计本系统的软件系统主要可分为主程序、定时计数中断程序、基于PWM实现DTMF信号程序等。 在程序设计过程中,加强了部分软件抗干扰措施,下面对部分模块作介绍。 程序功能如下: l 通信中断开话要可减少干扰,提高通信可靠性。 l 摘机后不能即拨号,要延时或检测到拨号音后再拨号。 l 通信中不允许无限等待,可限时接收,超时应退出通信。 l 判断是用户呼出摘机还是外线呼入用户接听摘机。 l 判断是主机呼入还是他人呼入。 l 判断是用户正常拨号还是用户完成功能设置。 l 具有振铃检测和自动摘机功能。 振铃4次无人接听电路即自动摘机。 3.1 系统主程序设计退出通信断开话机 电路摘机延时待拨号音拨叫主机号码进入通信程序是否收到应答。 等待时间到否。 通信开始电路挂机,接上话机 图4 系统流程图3.2 数据通信程序设计程序功能如下:l 采用固定格式报文方式,方便接收。 l 采用固定字节接收方式和简单异或校验方式即可实现可靠通信。 l 出错重发一次可提高通信成功率。 从机发送通信发送报文数据发送校验码接收应答。 时间到。 置重发标志已重发退出通信重发请求。 通信完成退出通信 图5 数据通信程序框图3.3 发送电路程序设计发送数据时,数据总线上D0~D3四位二进制码被锁存在发送数据寄存器中,发送的DTMF信号频率由3.58 MHz的晶振分频产生。 分频器首先从基准频率分离出8个不同频率的正弦波,行列计数器根据发送数据寄存器中的数据,以八取二方式分离出一个高频信号和一个低频信号,经开关电容做D/A转换,在加法器中合成DTMF信号,并从TONE端输出。 程序框图如图6所示。 开始发送 图6 发送程序流程图50ms延时相应数据初始化 串口初始化 R1=1。 接收数据 R1清“0”N Y 3.4 接收电路程序设计接收数据时,DTMF信号经由IN+和IN-输入,经过运算放大滤除信号中的拨号音频率,然后发送到双音频滤波器,分离出低频组和高频组信号,通过数字计数的方式检出DTMF信号的频率,并且通过译码器译成4位二进制码。 4位二进制编码被锁存在接收数据寄存器中,此时状态寄存器中的延时控制识别位复位,状态寄存器中的接收数据寄存器满标识位置位,对外而言,当寄存器中的延时控制识别位复位时,IRQ/CP由高电平变为低电平。 如果用IRQ/CP作为单片机的中断信号,IRQL由高电平变为低电平,向CPU发出中断请求,当CPU响应中断,读出寄存器中的数据后,IRQ返回高电 平。 程序流程图如图7所示。 开始接收 相应数据初始化 串口初始化 N =1。 Y 接收数据 N T1=1。 Y 发送数据 T1清“0”图7 接收程序流程图第4节 系统调试与测试结果分析软硬件结合后,本系统也大致完成了,但还有一个重要的环节那就是调试和测试。 使用的仪器仪表 数字万用表        DT9203单片机仿真器       WAVE6000烧写器 GF2100双踪稳压稳流电源     DH1718E5数字示波器      TDS1002。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。