已阅读5页,还剩46页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
目录摘要IABSTRACTII第一章 引言11.1 课题背景11.2 课题设计目标2第二章 系统方案选择32.1系统整体方案选择32.2 模块方案选择32.2.1 DTMF解码32.2.2 语音芯片42.2.3 主控制器选择4第三章 系统总体设计和主要芯片选择53.1 系统总体设计53.2 主要芯片介绍73.2.1 AT89C5173.2.2 DTMF芯片概述93.2.3 AT24C0210第四章 系统硬件设计114.1 振铃检测和模拟摘机114.2 声音监听和语音提示电路124.3 单片机控制和密码存储电路134.4 DTMF检测电路144.5 继电器控制电路15第五章 系统软件设计175.1 系统软件设计基本思路175.2 单片机初始化程序185.2.1振铃计数模块205.2.2语音提示模块205.2.3控制电器模块215.2.4密码修改模块22第六章 系统调试236.1 整体系统调试236.2 硬件的调试236.3 软件调试23参考文献26附录27附录一:元器件清单27附录二:控制器原理图28附录三:子程序代码29 第一章 引言1.1 设计背景20世纪90年代初,美国、欧洲等经济比较发达的国家先后提出了“智能住宅”的概念。基本思想是:将家庭中各种与信息相关的通信设备家用电器和家庭保安装置通过家庭总线技术连接到一个家庭智能化系统上,以进行集中的或异地的监视控制和家庭事物性管理,并保持这些家庭设备与住宅环境的和谐及协调。因此,住宅智能化即是通过家庭总线这个通信网络,把住宅的安全防范系统,能源管理系统,公共服务系统,信息系统集成起来。随着经济的发展,人们对生活质量的追求越来越高,在人们快节奏工作和学习的同时,迫切希望在家中有一个灵活自如的,能为人们提供方便的环境。由于现代家庭中设备或电器越来越多,且通讯线路高速发展,所以利用现有的通讯线路对家中的设备或电器进行控制,已成为未来家居自动化发展的趋势。远程电话控制有其优越性,利用电话进行远程控制不需要专门布线,不占用无线电频率资源,不受距离和环境影响,可跨省市、甚至跨越国家进行远程控制。所以设计一种远距离电话控制的电路,必然给人们的生活带来诸多方便。用手机远距离控制家用电器智能化家庭信息中心平台已成为国家“八六三”计划重点课题。目前家庭的网络化是住宅的热点。国外的同类产品的性能虽然很好,但是其价格很难让中国百姓所接受,而国内的系统开发商、房地产开发商只青睐于新建住宅,而对旧有住宅的网络化需求关注不够。问题的症结在于住宅内部及其与外界信息交换的通信网络。电力线载波和无线通信可做为住宅内部通信手段,但电力线载波通信的可靠性较差,无线通信的价格偏高,故应用较少,目前主流产品均采用单独布线的通信方式,但对已建住宅,不免会使重新布线困难重重。由于DTMF(双音多频)编码通信技术的发展,使得借助低压电力线进行数据通信成为可能。电话远程控制器主要接收电话线上传来的控制家电的信息,译码后经并行通信向智能控制器发控制家电指令;接收由智能控制器传来的报警或求援信息(经并行通信),自动拨号(可由键盘预先设置)后,以语音形式将信息传送给用户或直接报警。都是在线调试,已经在宿舍连接电话经过真正的交换机实验并且成功。本作品的各种电器接口、各项标准都严格遵循国家有关标准,为以后的产品化提供了良好的基础。家庭网络系统主要由电话远程控制器、智能控制器、一些功能模块组成。电话远程控制器主要接收电话线上传来的控制家电的信息,译码后经并行通信向智能控制器发控制家电指令;接收由智能控制器传来的报警或求援信息(经并行通信),自动拨号(可由键盘预先设置)后,以语音形式将信息传送给用户或直接报警。1.2 课题设计目标本课题的设计目的:当用户不在家时,通过随身携带的移动电话、身边的固定电话,或者其他通信设备依照事先规定的一些规则,进行不同的操作来完成对不同家电的控制和监听家里的情况,达到用户的预期目的,统筹管理,让家居生活更加舒适、安全、有效。设计目标: (1)控制系统能对家中电器实现远程控制;(2)控制系统可以实现双方通信;(3)控制系统主人的身份校验、在线密码修改及存储;(4)控制系统有语音功能提示,以方便主人操作;(5)控制系统有声音监听功能,随时了解家中情况;(6)控制系统外加了电器延时开、关的功能。 第二章 系统方案选择随着科技的进步,远程控制家用电器逐渐在生活中应用起来,现在通信网络的发达,嵌入式单片机的应用都可以来控制家电,各个方案固然有他们的优点和缺点,下面来比较下各个方案。2.1系统整体方案选择利用电话实现家电控制该系统利用遍及千家万户的电话线来传输信息,这是目前可以实现住宅内与住宅外信息交换最有效的方法。主要应用于电话遥控控制的家用电器,用户在户外可通过任意一部双音多频电话(包括手机、电话分机),根据语音提示可以对各种电器(如电饭锅、微波炉等电器)进行远程控制,使人们的生活更加便捷与享受。该系统可以使用单片机配合新型的DTMF解码芯片和语音电路来实现了电话对家用电器的远程控制。在使用时只需先将电话线的进线插入本装置,用户使用本装置时只要拨打家中的电话,装置检测到有铃流(可以设定30S以后还有铃流),装置发出模拟摘机信号,并控制语音处理电路提示用户输入密码(预先设定),用户听到这一提示音后就在自己所使用的双音频电话机或手机上按下密码所对应的数字键即可,密码所对应的双音频信号经电话线传给双音频接收发送电路,检测译码,传给主控单元,识别正确后,语音芯片再提示用户进行控制家用电器的操作,最后,主控单元把控制家电的信息译码,经并行通信传给智能控制器,由控制器执行控制家电的操作。2.2 模块方案选择2.2.1 DTMF解码采用MT8870芯片DTMF解码8870芯片它集成了陷波滤波器和数字解码功能。在滤波器部分,使用了开关电容技术;解码部分,用数字计数的方法检测所有16种DTMF音频对,并将它们编成4bits的码。通过在芯片上放置差分输入放大器,时钟晶振和可锁存的三态输出,可以使外围元器件最少。信号经过输入放大,过滤掉噪声,再被由6阶高频组带通滤波器和8阶低频组带通滤波器组成的陷波滤波器滤出DTMF信号,然后经过平滑滤波,再由过零检测器将模拟信号转换成数字信号,进入数字部分。信号在数字部分分为两路,一路直接送到频率检测部分,分别对信号进行高频和低频检测。如果输入信号频率在预先设置的范围内,则将检测结果送到编码部分进行编码,并等待D触发器的同步输出信号;如果输入信号频率不在预先设置的范围内,检测结果维持为0不变。另一路则送到频率平均算法部分,分别经过4,8分频,以初步检测信号的持续时间,将诸如噪声之类的干扰消除掉;同时,进一步设置更为严格的频率检测范围。如果充电时间不够长,这就是说即使被检测信号的频率在DTMF频率范围内,但它的持续时间不足以满足DTMF的工业标准,输出同步脉冲保持为0,编码结果不输出。2.2.2 语音芯片ISD2560语音芯片美国ISD公司的2500芯片,按录放时间60秒。ISD2500系列和1400系列语音电路一样,具有抗断电、音质好,使用方便等优点。它的最大特点在于片内E2PROM容量为480K(1400系列为128K),所以录放时间长;有10个地址输入端(1400系列仅为8个),寻址能力可达1024位;最多能分600段;设有OVF(溢出)端,便于多个器件级联。2.2.3 主控制器选择单片机控制单片机就是在一块芯片上集成了CPU、RAM、ROM(EPROM或EEPROM)、时钟、定时/计数器、多种功能的串行和并行I/O口。如Intel公司的8051系列等。除了以上基本功能外,有的还集成有A/D、D/A,如Intel公司的8098系列。概括起来说,单片机具有如下特点:具有位处理能力,强调控制和事务处理功能。价格低廉。如低档单片机价格只有人民币几元钱。开发环境完备,开发工具齐全,应用资料众多。后备人才充足。国内大多数高校都开设了单片机课程和单片机实验。综上所述,选择了用MT8870DTMF解码芯片、ISD2560、单片机AT89C51来完成这个系统。第三章 系统总体设计和主要芯片选择3.1 系统总体设计本系统是一个用来控制各种家电的设备,它通过来自电话的控制信号来实现对家电的控制。当用户不在家时,通过随身携带的移动电话或者身边的固定电话,拔通家里的电话,依照事先规定的一些规则,通过在电话里的语音提示,进行不同的数字按键操作来完成对不同家电的控制,达到用户的预期目的。系统的功能以确定设计具体要求如下: (1)控制系统能通过电话终端通信设备对家中电器实现远程控制;(2)控制系统可以实现自动模拟摘挂机,以实现双方通信;(3)控制系统主人的身份校验、在线密码修改及存储;(4)控制系统有语音功能提示,以方便主人操作;(5)控制系统有声音监听功能,随时了解家中情况;(6)控制系统外加了电器延时开、关的功能。本系统由单片机构成主控部分,进行主要的信息处理,接收外部操作指令形成各种控制信号,并完成对于各种信息的记录;接口电路提供单片机与电话外线的接口。其中包括铃流检测、摘挂机控制、双音频DTMF识别、语音提示电路及电器控制。总体电路框图如图3-1所示。模拟摘机振铃检测电路单片机电话机端口监 听 电 路DTMF解码电路继电器2继电器1语音提示电路电源电路3-1 系统总体框图系统主要由AT89C51单片机、DTMF解码芯片MT8870和语音芯片ISD2560组成。AT89C51单片机完成电话机振铃信号次数的检测、控制和加密。此系统具有以下单元功能模块:(1)铃音检测、计数;(2)自动模拟摘挂机;(3)密码校验;(4)在线修改密码;(5)双音频信号解码;(6)输入信息分析;(7)控制电器开关;(8)电器状态查询;根据电话机和交换机发出的不同信号音以及电话线各种状态的不同要求,结合实际情况对具体的单元功能模块作出软件或硬件上的不同分工,具体如下。 理论上交换机所发出的各种信号音都可以通过软件编程而识别,即通过单片机发出的脉冲信号来检测信号音单位时间内的脉冲个数计算出其频率,从而完成信号音识别。但是从系统的可靠性和程序的结构设计上分析,我选择了硬件来解决振铃音检测、忙音检测、双音频信号解码等功能模块。自动摘挂机和电器的控制必须使用具体硬件电路来实现。振铃音计数、忙音计数、密码校验、在线修改密码、输入信息分析、电器状态查询等功能模块使用软件编程方式要比硬件电路简单的多,实现也很容易。 综上所述,本系统信号音检测、自动摘挂机、控制电器、双音频解码等功能模块使用硬件电路实现。而信号音计数、密码校验、在线修改密码、信息分析、电器状态查询等功能模块使用软件编程完成。系统为突出电话遥控的信息反馈功能,并使产品达到非常高性价比。故未对电话装置的其他功能进行进一步的扩展,而且所有使用的集成电路和其它元器件都尽量选择廉价的。譬如:在各路终端上接上传感器即可实现对环境声响的监听;加上留言电路,主人不在家时客人留言。利用遥控方式可使主人很方便地在异地提取留言信息;在各路终端上接上传感器即可实现对环境声响的监听;接上自动拨码电路可定时将预定信息转至主人传呼机或特定电话,从而达到定时提醒主人的目的。本系统还可以应用于工厂企业的自动化控制等领域。3.2 主要芯片选择3.2.1 AT89C51AT89C51是美国ATMEL公司生产的低电压、高性能CMOS8位单片机,片内含4K bytes的可反复擦写的Flash只读程序内存和128bytes的随机存取数据存储器,器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置用8位中央处理器和Flash存储单元,功能强大的AT89C51单片机可以提供许多高性价比的应用场合,可灵活应用各种控制领域。其引脚如图3.2所示。AT89C51主要性能参数:1、与MCS-51产品指令系统完全兼容;2、4K字节可反复擦写Flash闪速内存;3、1000次擦写周期;4、全静态操作:0Hz24Hz;5、三级加密程序内存;6、1288字节内部RAM;7、32个可编程I/O口线;8、2个16位定时、计数器;9、6个中断源;10、低功耗空闲和掉电模式。图3.2 AT89C51单片机引脚AT89C51是标准的40引脚双列直插式集成电路芯片。它具有32个外部双向输入/输出(I/O)端口,2个外部中断口,2个16位可编程定时计数器,1个全双工串行通信口。按其功能可分为电源、时钟、控制和I/O接口四大部分:1、电源引脚VCC:芯片主电源,外接+5V。GND:电源地线。2、时钟引脚XTAL1:振荡器反相放大器的及内部时钟发生器的输入端。XTAL2:振荡器反相放大器的输出端。3、控制引脚(1)ALE/:地址锁存控制信号。当访问外部内存时,地址锁存允许输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。 (2):外部程序内存读选信号。在由外部程序内存取指期间,每个机器周期两次有效。但在访问外部数据存储器时,这两次有效的信号将不出现。(3)/VPP:访问程序内存控制信号。当信号为低电平时,只访问片外程序内存;而当为高电平时,则对ROM的读操作是从内部程序内存开始,并可延续至外部程序内存。(4)RST/VPD:复位/掉电保护信号输入。当输入的复位信号延续2个机器周期以上高电平即为有效,用以完成单片机的复位操作。4、I/O引脚P0口(P0.0P0.7):8位双向并行I/O接口。扩展片外内存或I/O口时,作为低8位地址和8位数据总线的分时复用接口,它为双向三态。P0口可带8个TTL负载电流。P0口作为I/O输出口使用时,由于P0口为开漏输出,必须外接上拉电阻才能有高电平输出。P1口(P1.0P1.7):8位准双向并行I/O接口。P1口每一位都可以独立设置成输入输出位,P1口可以驱动4个TTL电路。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。P2口(P2.0P2.7):8位准双向并行I/O接口。扩展外部数据、程序内存时,作为高8位地址输出端口。P2口可以驱动4个TTL电路。P3口(P3.0P3.7):8位准双向接口并行I/O。除了与P1口有一样的I/O功能外,每一个引脚还兼有第二功能。如表3-1所示。P3口的第二功能信号都是单片机的重要控制信号,因此,在实际使用时,先按需要选用第二功能信号,剩下的才以第一功能的身份作为数据位的I/O使用。表3-1 P3口各引脚对应的第二功能P3.0P3.1P3.2P3.3P3.4P3.5P3.6P3.7RXDTXD T0T1P1、P2、P3口片内均含有固定的上拉电阻,故称为准双向并行I/O接口。P0口片内无固定的上拉电阻,由两个MOS管串接,既可开路输出,又可处于高阻的“悬空”状态,故称为双向三态并行I/O接口。3.2.2 DTMF芯片概述MT8870是一个完整的DTMF接收解码电路。和其它电路,如LCD驱动电路一起,可实现CALLERID功能。它集成了陷波滤波器和数字解码功能。在滤波器部分,使用了开关电容技术;解码部分,用数字计数的方法检测所有16种DTMF音频对,并将它们编成4bits的码。通过在芯片上放置差分输入放大器,时钟晶振和可锁存的三态输出,可以使外围元上件最少。 信号经过输入放大,过滤掉噪声,再被由6阶高频组带通滤波器和8阶低频组带通滤波器组成的陷波滤波器滤出DTMF信号,然后经过平滑滤波,再由过零检测器将模拟信号转换成数字信号,进入数字部分。信号在数字部分分为两路,一路直接送到频率检测部分,分别对信号进行高频和低频检测。如果输入信号频率在预先设置的范围内,则将检测结果送到编码部分进行编码,并等待D触发器的同步输出信号;如果输入信号频率不在预先设置的范围内,检测结果维持为0不变。另一路则送到频率平均算法部分,分别经过4,8分频,以初步检测信号的持续时间,将诸如噪声之类的干扰消除掉;同时,进一步设置更为严格的频率检测范围。如果信号通过了检测,就使ESt端输出高电平,通过外围RC回路对St端充电(R,C的值可以根据不同的工业标准进行选择),如果ESt端高电平持续时间足够长,使充电后Vc=Vtst(235V,这是通过比较器比较),这就意味着所检测的信号满足DTMF的工作标准,则使引导逻辑部分的输出同步脉冲到编码部分,使4位编码输出,经过延迟单元,锁存进三态输出单元,输出正确的码;同时,引导逻辑部分产生StD端高电平信号,同时使GT维持儿高电下。如果充电时间不够长,这就是说即使被检测信号的频率在DTMF频率范围内,但它的持续时间不足以满足DTMF的工业标准,输出同步脉冲保持为0,编码结果不输出。3.2.3 AT24C02 AT24C02是美国ATMEL公司的低功耗CMOS串行EEPROM,它是内含2568位存储空间,具有工作电压宽(2.55.5V)、擦写次数多(大于10000次)、写入速度快(小于10ms)等特点。 AT24C02的1、2、3脚是三条地址线,用于确定芯片的硬件地址。在AT89C51试验开发板上它们都接地,第8脚和第4脚分别为正、负电源。第5脚SDA为串行数据输入/输出,数据通过这条双向I2C总线串行传送,在AT89C51试验开发板上和单片机的P3.5连接。第6脚SCL为串行时钟输入线,在AT89C51试验开发板上和单片机的P3.6连接。SDA和SCL都需要和正电源间各接一个5.1K的电阻上拉。第7脚需要接地。24C02中带有片内地址寄存器。每写入或读出一个数据字节后,该地址寄存器自动加1,以实现对下一个存储单元的读写。所有字节均以单一操作方式读取。为降低总的写入时间,一次操作可写入多达8个字节的数据。 I2C总线是一种用于IC器件之间连接的二线制总线。它通过SDA(串行数据线)及SCL(串行时钟线)两根线在连到总线上的器件之间传送信息,并根据地址识别每个器件:不管是单片机、存储器、LCD驱动器还是键盘接口。 第四章 系统硬件设计本系统使用了大量的硬件电路完成部分功能模块,其目的就是充分利用硬件电路的可靠性、稳定性,使整体电路达到比较高的稳定性。此电路主要包括电话线路摘机检测和线路振铃信号的检测电路,语音提示电路,单片机控制和密码存储电路,DTMF检测电路及电器驱动电路。4.1 振铃检测和模拟摘机振铃检测的功能是检测有无铃流,当用户被呼叫时,电话交换机发来铃流信号。振铃为253HZ的正弦波,谐铃失真不大于10%,直流48V,振铃时电压有效值为9015V V左右,摘机时约为10V左右的直流电压。振铃信号以5秒为周期,即1秒送,4秒断。振铃检测电路如图4-1所示。 图4-1 振铃检测与模拟摘机电路P3.7是振铃信号检测端,根据振铃信号电压比较高的特点,可以先使用高压稳压二极管进行降压,然后输入至光电耦合器。经过RC回路进行滤波,输入给光电耦合器的波形,经过光电耦合器的隔离转换输出很标准的方波。方波信号就可以直接输出至单片机的端口,完成整个振铃音检测和计数的过程。模拟摘机电路的功能是当电话振铃到一定时间后接通电话,其电路如图4-1所示。如果电话线路上出现了振铃信号,90VPP的振铃电压使得光电耦合器U2输出端按振铃频率导通和截止,单片机在每次振铃信号结束后进行振铃次数计数,并将单片机振铃次数计数器中的数据与已经设定的振铃摘机数据比较,两者相等P3.1下拉,光电耦合器U1导通,则Q1和Q2也导通,从而实现模拟摘机。监测电路是为了监测电话机是否模拟摘机,电路如图4-1所示。电路中的DW1、R2、R13、C6、Q3组成电话线路摘机检测,平时电话线路电压使得DW1击穿,使Q3的基极电位为高,三极管导通,P3.0脚被下拉成低电平,此时单片机主要任务是监测P3.0脚的电压升高变化。当该系统接收到振铃信号,且达到规定的振铃次数后模拟摘机,电话线路上电压均由原来的48V下降到7-8V,此时DW1截止,P3.0被本身的上拉电阻上拉成高电平。单片机测试到P3.0脚的高电平后,开启外部中断0,单片机随时接收MT8870发出的选通信号,单片机根据选通信号的到来及时接收MT8870数据端11-14脚上的双音多频信号数据。4.2 声音监听和语音提示电路语音提示电路是此系统的重要组成部分,能提供给用户直观的的反馈信息,为了使系统更加人性化,语音提示直接采用了语音芯片,将一些操作规则事先存于芯片中,根据不同的DTMF信号产生不同的提示信息,从而来完成控制整个系统的目的,由于需要存储的信息容量比较大,电路采用了ISD2560,此芯片可录一分钟的语音信息,对本系统以足够使用,电路如图4-2所示。 图4-2 语音提示电路声音监听和语音提示都由P3.6控制,声音信号是由MIC话筒产生的,而语音信号是由ISD2560语音芯片输出的。当P3.6为高电平时,三极管Q6截止,因此对声音信号和语音信号没有放大功能;当P3.6为低电平时,三极管Q6导通,对信号有放大作用,此时可以监听声音或者自动语音提示。语音提示电路包括语音芯片及外围电路,语音放大反馈回路,反馈信息由单片机控制,2500系列最多可分为600段,只要在分段录/放音操作前(不少于300纳秒),给地址A0A9赋值,录音及放音功能均从设定的起始地址开始,录音结束由停止键操作决定,芯片内部自动在该段的结束位置插入结束标志(EOM);而放音时芯片遇到EOM标志即自动停止放音。使用操作模式时需要注意两点:1、所有操作模式下的操作都是从0地址开始,以后的操作根据模式的不同,而从相应的地址开始工作。当电路中录音转放音或进入省电状态时,地址计数器复位为0。2、操作模式位不加锁定,可以在MSB(A8、A9)地址位为高电平时,CE电平变低的任何时间执行操作模式操作。如果下一片选周期MSB(A8、A9)地址位中有一个(或两个)变为低电平,则执行信息地址,即从该地址录音或放音,原来设定的操作模式状态丢失。4.3 单片机控制和密码存储电路本电路单片机采用了AT89C51作为控制芯片,并采用EEPROM作为密码的存储。为了减小电路的体积及单片机I/O口,存储器采用了24C02,有2K的存储空间,当系统掉电后密码也不会丢失。密码存储电路如图4-3所示。图4-3密码存储电路AT24C02的1、2、3脚是三条地址线,用于确定芯片的硬件地址。在与AT89C51连接时它们都接地,第8脚和第4脚分别为正、负电源。第5脚SDA为串行数据输入/输出,数据通过这条双向I2C总线串行传送,和单片机的P1.7连接。第6脚SCL为串行时钟输入线,和单片机的P1.6连接。SDA和SCL都需要和正电源间各接一个10K的电阻上拉。可以通过软件编程对密码进行修改和存储。4.4 DTMF检测电路此部分是整个系统的关键,它的工作情况直接决定了系统的可靠性。DTMF编、解码方式在电话拨号系统中应用非常广泛,其突出的优点是抗干扰能力很强。经过翻阅大量的文献资料,发现使用电话专用的双音频编解码芯片进行输入双音频信号的解码,是比较常用的一种方法。使用集成电路不但外围电路简单,而且可靠性强。经过专用集成电路的解码,信号转换成为不同的码制信号,可以直接被单片机读取。一般常用的电话双音频编解码集成电路有8870、8880、8888等,经过反复论证比较,决定使用双音频解码集成片MT8870来完成此功能模块。DTMF检测电路如图4-4所示。 图4-4 DTMF检测电路P3.2为单片机的中断引脚,当MT8870接收来自电话线的双音多频信号并准备好输出时,产生中断信号。MT8870的2、3脚接收来自电话机的双音多频脉冲信号,该双音多频信号先经其内部的拨号音滤波器,滤除拨号音信号,然后经前置放大后送入双音频滤波器,将双音频信号按高、低音频信号分开,再经高、低群滤波器,幅度检测器送入输出译码电路,经过数字运算后,在其数据输出端(1114脚)输出相对应的8421码。MT8870的数据输出端Q1 Q4连到AT89C51的P1口的P1.0 P1.3,CPU经P1口识别4位代码。电话按键与相应译码(Q4Q1)输出见表4-1。其中,A,B,C,D 4个按键常被当作R/P,REDIAL,HOLD,HANDSFREE等功能使用。注意,需要特别指出的是,对于“0”号码,MT8870输出的8421码并非是“0000”,而是“1010”;另外,“*”,“#”字号码,MT8870输出的8421码分别为“1011”和“1100”。为了使单片机AT89C51获取有效数据,MT8870的STD有效端经反相后接CPU的/INT0引脚。当MT8870获取有效双音多频信号后,STD电平由低变高,再反相为低,CPU检测后,指示P1口接收有效二进制代码。而无效的双音频信号(电话线路杂音、人们的语音信号等)是不会引起MT8870的STD端变化的。DTMF数据输出如表4-1所示。表4-1 电话键盘按键与DTMF信号的对应关系电话键按盘键高频组(Hz)1209133614471633低频组(Hz)697123A770456B852789C941*0#D4.5 继电器控制电路电器控制可采用继电器,可控硅等来控制强电的通与断,为了达到电话机能控制家用电器的开关作用,此设计采用了继电器,一共设定了两路继电器开关,电器控制电路如图4-5所示。 图4-5 电器控制电路继电器的开关由单片机控制,并可设定延时开延时关的功能。在系统中还设置了三个当地按键,其中两个控制两路继电器的开和关,另一个用于复位初始密码的,当用户忘记自己设定的密码时,可以用此按键进行密码的复位,初始密码为123456。第五章 系统软件设计5.1 系统软件设计基本思路软件设计过程中采用模块化设计方法,便于程序的阅读、调试和改进。程序的基本流程如图5.1所示。 挂机信号音提示模拟摘机振铃检测操作完成?密码正确?5次正常振铃 开始功能操作NYNYNY图5-1 系统软件流程图为提高控制系统的可靠性、可维护性和编程的效率性,控制系统的软件采用模块化结构,用汇编语言编写,简洁、明了。在硬件的基础上,智能型电话遥控器的所有功能都是由软件实行的,通过软件编程可以控制电器的开关、延时开关、声音监听、密码修改和语音提示等等。因此,电路的设计中,软件编程也起到了关键性的作用。软件设计包括振铃检测、模拟摘机、语音提示、密码存储、各功能操作、8870中断作这些模块。在图5-1系统软件流程图中,功能操作包括了很多的功能,如图5-2所示。无延时开关电器2无延时开关电器1 功能操作状态查询修改密码开关监听延时开关电器图5-2系统功能图5.2 单片机初始化程序单片机的存储系统的分配利用在其工作过程中起非常大的作用,所以就必须对其进行必要的初始化。程序代码:(1)片内RAM初始化子程序IBCLR: MOV A,R0MOV R1,ACLR AIBC1 : MOV R1,AINC R1DJNZ R7,IBC1RET(2)片外RAM初始化子程序EBCLR1: MOV A,ADDPLMOV DPL,AMOV A,ADDPHMOV DPH,ACLR CEBC11: MOVX DPTR,AINC DPTRDJNZ R7,EBC11RET5.2.1 振铃计数模块本单元是通过计数器T0的外部中断方式来计数的。程序代码:ORG 0090HTT0: SETB 7DHRETI5.2.2语音提示模块本功能模块主要是产生信号提示音,方便不同的使用者。根据普通人耳的反应频率为20Hz至20KHz的范围,而CCITT规定的电话话音信号的频率范围是300Hz至3400Hz,所以在本功能单元的发声频率定为500Hz和1000Hz两种。主要分为五种提示音:1、一声低音,表示装置已经摘机,请输入密码,其参数:频率f=500Hz,延时t=0.5秒/声;2、两声低音,表示密码已经通过,请选择电器,其参数:频率f=500Hz,延时t=0.5秒/声;3、三声低音,表示电器已经选定,请控制(开/关),其参数:频率f=500Hz,延时t=0.5秒/声;4、三声高音,表示密码输入错误,其参数:频率f=1000Hz,延时t=0.3秒/声;5、一声高音,表示控制已经完成,其参数:频率f=1000Hz,延时t=0.3秒/声;提示音发生是使用有限循环,反复使单片机的RXD口的电平反转,从而形成方波信号 。程序见附录三:子程序代码A 音3:控制开关摘机:进入密码修改初始化电器选定?密码正确? 结束 开始音1:输入密码控制完成?音4:密码错误重输音2:选择电器音5:控制完成 Y YNYNYNY5.2.3 控制电器模块本系统首先通过外围双音频解码电路解码的信息(选择电器)判断所选择的电器,然后跳转到对应的子程序,通过单片机向P1口的八位发送控制命令,这些控制信息表示对不同的电器进行控制的控制字。为了简单表示,在这里只写出了控制一路电器的控制子程序,其它子程序都相似,不再累述。程序见附录三:子程序代码B5.2.4 密码修改模块本系统是通过在线输入密码而改变特定存储器中的密码值的。程序见附录三:子程序代码C音提:设置成功输入新密码音提:输入密码初始化两次输入相同?是否5位?密码正确? 结束 开始再次输入启动计数 器 器是否到3次 N Y NN YY NYY第六章 系统调试6.1 整体系统调试根据控制系统调试的需要,我们自己准备了一些调试设备. (1)5V直流电源一个 (2)数字万用表一个 (3)电话线 两根 (4)SmartPROX5编程器 一个 (5)PC机一台6.2 硬件的调试由于采用单片机程序控制,所以硬件调试工作量不大,只要保证硬件电路的电源和时钟、复位能正常就行。 首先完成DTMF双音多频信号解码和振铃信号检测电路的调试。 第一步:检查实验电路的焊接是否正确,用万用表检查是否有短路和断路的地方。 第二步:连接好电源,静态检查MT8870芯片和AT89C51芯片的电源是否正常。AT89C51芯片的时钟和复位是否正常,振铃电路能否检测到振铃信号。 第三步:用SmartPROX5编程器将目标下载到AT89C51单片机中,然后利用手机(或电话机)发送的DTMF信号,看是否能成功的解码。不断的检查硬件和程序,找出原因,解决问题。 在调试DTMF双音多频信号解码电路时,首先怀疑MT8870芯片损坏,更换后,还是不完成解码。一天,偶然发现用公司电话拨号时,发现解码电路能解码,后来换到带来电显示服务的电话线,实验成功。 6.3 软件调试根据遥控系统的要 求写了软件后,修改一些错误后,再与硬件一起调试。由于软件的正常运行是建立在硬件的基础上,所以软件的调试,放在硬件部分调试中完成和优化。 参考文献1 张大明.单片机控制实训M.机械工业出版社2007。2 李朝青,单片机原理及接口技术J.北京航空航天大学出版社.2010。3 李广地,朱月秀,王秀山.单片机基础M.北京航空航天大学出版社,2005。4 吕仁礼,周金和,李茂详电话DTMF数据收发模块的设计J电子技术应用1998,(4):4648。5 李雪梅,李秋红AT85C51单片机在电话远程控制器中的应用J现代电子技术2006,20(4):3641。6 姜凤武基于AT89C51单片机的家用电器电话遥控装置J自动化技术与应用2006,(08):9497。7 何琳琳,张海军.基于电话网络的家用电器远程控制系统的实现J.单片机开发与应用,2006,(6):7476。8 谢孝良用AT89C2051实现电话远程控制家用电器J单片机与嵌入式系统应用2003,(01):2427。9 杨为理现代通讯集成电路应用技术手册M电子工业出版社,2002,(1):2528。 10MT8870数据手册。附录附录一:元器件清单名称规格数量名称规格数量单片机AT89C511语音芯片ISD25601DTMF芯片CM88701存储芯片AT24C02 1光耦P5212继电器HK4100F2 发光二极管LED4二极管40024驻级话筒HX034P1开关4二极管41482三极管55511三极管90144三极管90123三极管54011电阻3K1电阻100K 3 电阻4701电阻120 1电阻681电阻4.7K 2电阻220K1电阻220K1电阻12K1电阻5.1K1电阻10K3电阻470K2电阻39K1电阻39K1电阻62K1电阻1K1电容1u4电容0.1u5电容0.01u2瓷片电容30p2电解电容10u1电解电容1u4底座40p1底座8p1底座18p1底座28p1附录二:电话远程控制器原理图附录三:子程序代码程序代码A:ORG 1100HRING10:MOV R6,#20 ;请输入密码,RING11:MOV R7,#20 ;500Hz,RING12:LCALL DL10 ;发出提示音,1CPL P3.0 ;延时0.5sDJNZ R7,RING12DJNZ R6,RING11CLR P3.0RETORG 1150HRING20:MOV R3,#03RING21:MOV R6,#20 ;选择电器,RING22:MOV R7,#20 ;500Hz,RING23:LCALL DL20 ;发出提示音2,CPL P3.0 ;延时0.3sDJNZ R7,RING23DJNZ R6,RING22CLR P3.0MOV R7,#200RING24:LCALL DL10DJNZ R7,RING24DJNZ R3,RING21CLR P3.0RETORG 1200HRING30:MOV R3,#02RING31:MOV R6,#20 ;电器控制,RING32:MOV R7,#20 ;500Hz,RING33:LCALL DL10 ;发出提示音3,CPL P3.0 ;延时0.3sDJNZ R7,RING33DJNZ R6,RING32CLR P3.0MOV R7,#200RING34:LCALL DL10DJNZ R7,RING34DJNZ R3,RING31CLR P3.0RETORG 1250HRING40:MOV R3,#03RING41:MOV R6,#20 ;输入的密码错误,RING42:MOV R7,#20 ;1000Hz,RING43:LCALL DL10 ;发出提示音4,CPL P3.0 ;延时0.3sDJNZ R7,RING43DJNZ R6,RING42CLR P3.0MOV R7,#100RING44:LCALL DL10DJNZ R7,RING44DJNZ R3,RING41CLR P3.0RETORG 1300HRING50:MOV R6,#40 ;操作完成,RING51:MOV R7,#20 ;1000Hz,RING52:LCALL DL20 ;发出提示音5,CPL P3.0 ;延时0.3sDJNZ R7,RING52DJNZ R6,RING51CLR P3.0RETORG 1500HDL10: MOV R5,#25;delay1.25ms,f=500HZ,fosc=12MHzDL12: MOV R4,#2DL11: DJNZ R4,DL11DJNZ R5,DL12RETORG 1600HDL20: MOV R5,#12;delay0.625ms,f=1000HZ,fosc=12MHzDL22: MOV R4,#25DL21: DJNZ R4,DL21DJNZ R5,DL22RETORG 165
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 新材料在交通领域的应用:以碳陶刹车盘为例
- 重庆市开州区法院书记员招聘笔试真题2025
- 常德烟草机械有限责任公司招聘考试真题2025
- 2025年黄石市公益性岗位招聘真题
- 云南水利安全员题库及答案解析
- 保温放料阀建设项目可行性分析报告(总投资22000万元)
- 世界古代文学知识竞赛试题及答案
- 智能化健康档案管理系统建设方案
- 校园文化品牌建设方案
- 企业员工内部认购流程与规范
- 微生物基础知识培训新员工
- 2023年商务沟通与谈判的心得体会(四篇)
- GA/T 148-2019法医学病理检材的提取、固定、取材及保存规范
- 《智慧机场发展研究(论文)》
- 《糖尿病教学查房》课件
- DB4401-T 102.1-2020 建设用地土壤污染防治+第1部分:污染状况调查技术规范-(高清现行)
- 2022年公安基础知识考试试题及答案
- 低压电力电缆招标技术规格书
- 2021新苏教版六年级上册科学14探索宇宙-课件
- 动物遗传学遗传信息的改变
- 中国债券市场投资手册(2022)
评论
0/150
提交评论