资源预览内容
第1页 / 共29页
第2页 / 共29页
第3页 / 共29页
第4页 / 共29页
第5页 / 共29页
第6页 / 共29页
第7页 / 共29页
第8页 / 共29页
第9页 / 共29页
第10页 / 共29页
亲,该文档总共29页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
题目:电话网信号音发生器的设计 学 院: 电子与电气工程学院 专 业: 电子科学与技术 姓 名: 指导教师: 2016年 3月 15日 摘 要 在打电话的过程中,我们常常会在电话里听到“嘟嘟嘟”的声音,但是有时候“嘟”的声音持续长短不一,而这种持续时间长短不一的声音,代表的也是不同的信息,这就是信号音。信号音是一种由交换机向用户终端发出的进程提示音,在各种交换机上都有着统一的标准,其中在电话网中的信号音主要有:拨号音,忙音,拥塞音,回铃音,空号音,长途通知音,振铃音和催挂音,不同的信号音,含义,结构和频率都有所不同。论文首先阐述了研究信号音的背景及目的,讲解了各种信号音产生含义,结构,产生原理和电路图,然后介绍了基本设计思路。设计当中主要包括硬件电路的设计和测试各种信号音的程序设计,硬件设计电路中主要用到80C5-1单片机,DA转换器,喇叭的焊接。论文最后介绍了对各种信号音在信号音发生器上的运行结果,结果表明该发生器对不同的信号音都有着不同的反馈,符合设计要求。关键字:电话; 信号音; 单片机; 分频; 程控交换 ABSTRACT In the call of the process, we often hear toot toot the voice on the phone, but sometimes a beep sound continuously varying lengths, and the continuous sound of varying lengths of time, representative of the information is different. This is the signal tone. Sound signal is a process which is issued by the switch to the user terminal tone, has a unified standard in all switch, the signal tone in the telephone network is main: dial tone, busy tone, congestion tone, ring back tone, vacant tone, long-distance notification sound, ringing sound and howler tone, different tone, meaning, structure and frequency are different。 First of all, the paper expounds the significance and purpose of the study of the signal tone, explains the backgrounds, structure, generating principle and circuit diagram of the signals, and then introduces the basic design ideas. The design includes hardware circuit design and testing of various signal tone of the program design, hardware design circuit is mainly used in the MC5-1 single chip microcomputer, DA converter, AD converter, speaker of the welding. This paper introduces the various signal in the signal tone generator on the operating results, the results show that the signal generator of the sound different have different feedback, meet the design requirements.Keywords:Telephone; signal tone; single chip microcomputer; frequency division; program controlled exchange1.绪 论1.1课题的提出的背景随着美国人A. G. 贝尔于1876年发明第一台电话机以来,到如今,电话网络技术已经发生了翻天覆地的变化,电话机已经从最初的电话通信只能完成一部话机与一部话机的固定通信到如今随处可见的智能手机,电话机不断的推陈出新得益于电话网技术的飞速的发展,史上电话技术发明包括:人工交换板,拨号盘,自动电话交换机,程控电话交换机,双音多频拨号,语音数字采样等。最初的电话通信当中并没有出现信号音这个概念,最早的电话是一种单向单工方式,一直到上个世纪的60年代,随着电话机的电子化出现了第一台按键电话,60 年代末CCI T T 提出了一种新的发号方式:“双音多频”(DTMF)发号方式音频拨号.70 年代末的大规模集成电路的出现和程控交换网的扩大, 对电话状态的提示要求才产生了拥塞音,长途通知音,振铃音,催挂音等多种信号音。信号音的出现,大大方便了主叫户,也节约了主叫户的时间,提高了通话质量和体验。主叫户可以通过电话里的提示音得到被叫户的状态,知道什么时候可以开始拨号,被叫户处于什么状态,处于长途,空号还是正在通话当中,既清晰又方便。在方便主叫户的同时也大大解放了劳动力,以前电话的转接都是通过人工交换机进行的,主叫户拨打电话之后,必须在交换机处人为的接线到另一台交换机处,如果被叫户处于通话中,话务元还需再次通知主叫户,待会再拨回来。因此信号音的发明很大程度上解放了劳动力,推动了社会的发展。1.2课题提出的目的通过自主搭建信号发生器的设计,增强了学生的动手能力,使学士进一步巩固和加深对基础理论、基本技能和专业知识的认识与掌握,使之系统化、综合化。让学士获得从事科研工作的初步训练,培养学生独立工作、独立思考和综合运用已学知识解决实际问题的能力,尤其培养了学生独立获取新知识的能力。让学生通过动手做出实物,找到学习这门课的兴趣。 1.3 信号音的介绍1.3.1 信号音名称及含义 (1)拨号音:摘机后受话器中便有一种“嗡-”的连续音,这种声音就是拨号音,它表示自动交换机或对方呼叫中心系统已经做好了接续准备,允许用户拨号,采用频率为45025Hz的正弦波,发送电平为-103dBm0。 (2)回铃音:拨完被叫号,若听到“嘟-嘟-”的断续音(响1s,断4s),便是回铃音,表示被叫话机正在响铃,可静候接话;如果振铃超过10余次,仍无人讲话,说明对方无人接电话,应放好手柄稍后再拨,采用频率为45025Hz的正弦波,发送电平为-103dBm0。(3)忙音:当主叫用户在拨号过程中或拨完被叫电话号码后,若听到“嘟、嘟、嘟”的短促音(响0.35s,断0.35s),这就是忙音,表示线路已经被占满或被叫电话机正在使用。(4)长途通知音:当主叫用户和被叫用户正在进行市内通话时,听到“嘟、嘟、嘟”的短促音(响0.2s,断0.2s,响0.2s,间歇0.6s),这便是长途电话通知音,表示有长途电话插入,提醒主被叫用户双方尽快结束市内通话,准备接听长途电话,采用频率为45025Hz的正弦波,发送电平为-203dBm0。(5)空号音:当用户拨完号码后听到不等间隔断续信号音(重复3次0.1s响,0.1s断后,0.4s响0.4s断),这便是空号音,表示通知主叫用户所呼叫的被叫号码为空号或受限制的号码,采用频率为45025Hz的正弦波,发送电平为-103dBm0。(6)催挂音:如果用户听到连续信号音,响度变化为5级,由低级逐步升高,则是催挂音。通知久不挂机的用户迅速挂机,采用频率为95050Hz的正弦波(连续),发送电平为025dBm0。(7)拥塞音:表示本次接续遇到机线拥塞,采用频率为45025Hz的正弦波(0.7s续、0.7s断),发送电平为-103dBm0。(8)振铃音:向被叫振铃,采用频率为25Hz。 1.3.2 信号音的产生方法信号音产生的方法有多种:采用对555定时器产生,对单片机的定时编程产生,对CPLD器件编程的实现。555定时器是一种模拟和数字功能相结合的中规模集成器件,构成的振荡器可以产生不同断续比的信号音,易实现用仿真软件对其输入输出波形的跟踪判断;CPLD(complex programmable logic device)复杂课编程逻辑器件,是从PAL和GAL器件发展出来的器件,相对而言规模大,结构复杂,属于大规模集成电路范围。而本文介绍的是利用单片机来进行电话网信号音发生器的设计。1.4 信号音设计硬件平台介绍 单片机(Microcontrollers)是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计数器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统,在工业控制领域广泛应用。从上世纪80年代,由当时的4位、8位单片机,发展到现在的300M的高速单片机。其内部基本机构如图1。 图1 到如今,单片机已经渗透到我们生活当中的各个方面,随着技术的发展,单片机的种类也是琳琅满目,从不同角度,单片机大致可以分为通用型/专用型、总线型/非总线型及工控型/家电型。本设计用到的是属于通用型里面的80C51单片机。51单片机是对所有兼容Intel 8031指令系统的单片机的统称。该系列单片机的始祖是Intel的8004单片机,后来随着Flash rom技术的发展,8004单片机取得了长足的进展,成为应用最广泛的8位单片机之一,其代表型号是ATMEL公司的AT89系列,它广泛应用于工业测控系统之中。很多公司都有51系列的兼容机型推出,今后很长的一段时间内将占有大量市场。80C51单片机是基础入门的一个单片机,还是应用最广泛的一种,相比于用CPLD和555定时器产生信号音,80C51单片机有如下特点: (1)体积小,价格低,性能强大,速度快,用途广,灵活性强,可靠性高。(2)存储器ROM和RAM是严格分工的。ROM作用程序存储器,只存放程序,常数和数据表格,而RAM用作数据存储器,存放临时数据和变量,这样的设计方案更适用于实时控制系统。配置较大的程序存储空间ROM,将已调试好的程序固化(既对ROM编程,又称烧录或烧写),这样不仅掉电时程序不丢失,还避免了程序被破坏,从而确保了程序的安全性。实时控制仅需容量交较小的RAM,用于存放少量随机数据,这样有利于提高单片机的操作速度。(3)采用面向控制的指令系统。在实时控制方面,尤其是在位操作方面,单片机有着不俗的表现。(4)输入/输出(I/O)端口引脚通常设计多种功能,在设计时,究竟使用多功能引脚的哪一种功能,则可以用用户编程确定。(5)单片机的硬件功能具有广泛的通用性。同一种单片机可以在不同的控制系统中,只是其中配置的软件不同而已。换言之,给单片机固化上不同的软件,便可形成不同的专用智能芯片,有时将这种芯片称为固件(Fireware)。1.5 KeiluVision集成开发环境介绍 由于80C51单片机不具备自行编程的能力,所以就必须要有与之相对应的开发平台。本设计的开发语言是KeilC51系统下的C语言,开发软件是KeiluVision4.0版本中的KeilC51,下面是开发软件的介绍。 目前市场上KeiluVision4.0的产品有Keil MDK-ARM,Keil C51,Keil C166和Keil C251,KeilC51便是其中的一部分。Keil C51是美国Keil Software公司(ARM公司之一)出品的51系列兼容单片机C语言软件开发系统。与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。Keil提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(uVision)将这些部分组合在一起。该软件适合每个阶段的开发人员,不管是专业的还是应用工程师,还是刚学习嵌入式开发的学生,都能很快的上手。Keil C51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解,在开发大型软件时更能体现高级语言的优势,这上面同时集成了CPU、ROM、RAM、及TIMER/COUNTER等部件,具有64KB的寻址能力,使用者只需外接少量的借口电路就可以组成单片机应用系统,新一代的80C51单片机集成度更高,在片内集成了更多的功能部件,因此80C51单片机已成为事实上的工业标准,其内部结构如图2。 图2 2 信号音发生器硬件的搭建 2.1 信号音产生原理 信号音的发生既能直接通过硬件电路来生成,也可以通过软件编写来生成,本设计用的是硬软结合,8种信号音的的频率和波形由keil这款软件来实现,具体程序下面会介绍,利用控制单片机内部的定时器来产生不同频率的方波,驱动一个功率放大器来使喇叭发出不同音节的声音,再利用延迟来控制发音时间的长短,即控制音调中的节拍。大致流程图如下列框图。 喇叭运算放大器D/A转换器 单片机 2.2 硬件原理及功能介绍2.2.1 STC89C51单片机引脚及电路原理图介绍 该单片机采用的是40只引脚双列直插封装(DIP)。40只引脚按功能可分为3类:(1)电源及时钟引脚: Vcc、Vss;XTAL1、XTAL2。(2)控制引脚: PSEN*、EA* 、ALE、RESET (即RST)。(3)I/O口引脚:P0、P1、P2、P3,为4个8位I/O口的外部引脚。1.电源引脚 (1)Vcc(40脚):+5V电源; (2)Vss(20脚):接地。2.时钟引脚 (1)XTAL1(19脚):如果采用外接晶体振荡器时,此引脚应接地。(2)XTAL2(18脚):接外部晶体的另一端,提供控制信号,有的引脚还具有复用功能。3.控制引脚 (1) RST/VPD(9脚):复位与备用电源。 (2) ALE/PROG*(30脚):第一功能ALE为地址锁存允许,可驱动8个LS型TTL负载。PROG*为本引脚的第二功能。为编程脉冲输入端。 (3) PSEN* (29脚):读外部程序存储器的选通信号。可以驱动8个LS型TTL负载。 (4) EA*/VPP (Enable Address/Voltage Pulse of Programing,31脚) EA*为内外程序存储器选择控制端。 EA*=1,访问片内程序存储器,但在PC(程序计数器)值超过0FFFH(对于8051、8751)时,即超出片内程序存储器的4K字节地址范围时,将自动转向执行外部程序存储器内的程序。EA*=0,单片机则只访问外部程序存储器。VPP为本引脚的第二功能。用于施加编程电压(例如+21V或+12V)。对89C51,加在VPP脚的编程电压为+12V或+5V。4.I/O口引脚(1) P0口:双向8位三态I/O口,此口为地址总线(低8位)及数据总线分时复用口,可驱动8个LS型TTL负载。(2) P1口:8位准双向I/O口,可驱动4个LS型TTL负载。(3) P2口:8位准双向I/O口,与地址总线(高8位)复用,可驱动4个LS型TTL负载。(4) P3口:8位准双向I/O口,双功能复用口,可驱动4个LS型TTL负载。设计首先,利用单片机和其他器件材料焊接了一个最小系统,该图为最小系统的原理图,图中10uf的电解电容和10K的电阻加上一个按键,构成一个复位电路,一个12MHz的晶振加上2个30pf的陶瓷电容,构成了一个时钟电路。 当管脚9既RST引脚处收到2us以上的电平信号时,复位电路开始工作,单片机系统就会自动复位,这样保证了在单片机运行出现错误的时候,可以让程序再重头跑一变。复位引脚 RST 通过一个斯密特触发器与复位电路相连,斯密特触发器用来抑制噪声,在每个机器周期的 S5P2,斯密特触发器的输出电平由复位电路采样一次,然后才能得到内部复位操作所需要的信号。复位电路通常采用上电自动复位和按钮复位两种方式。本设计选择了按键复位,在系统运行时,按一下按键,就在 RST 断出现一段高电平,使器件复位。此时 ALE、PSEN、P0、图 4-2时钟电路图P1、P2、P4 输出高电平,RST 上输入返回低电平以后,变退出复位状态开始工作单片机的时钟信号通常用两种电路形式得到:内部振荡和外部振荡方式。在引脚XTAL1 和 XTAL2 外接晶体振荡器,构成了内部振荡方式。由于单片机内部有一个高增益的反相放大器,当外接晶振后,就构成了自激振荡,并产生振动时钟脉冲。晶振通常选用 6MHZ、12MHZ、24MHZ。本设计中时钟电路图如图4-2,我们选择了12MHZ和晶振分别接引脚XTAL1和XTAL2,电容 C1,C2 均选择为 30pF,对振荡器的频率有稳定作用。2.2.2 D/A转换器的作用及介绍 由于从单片机中出来的信号不能直接输入到喇叭当中播放,因此需要一个D/A转换器来,将得到的数字信号转换成为模拟信号,最终以电压的方式输出。 D/A转换器,又称数模转换器,简称DAC,D/A转换器基本上由4个部分组成,即权电阻网络、运算放大器、基准电源和模拟开关,它有两种输出方式,分为电流输出和电压输出方式,本发生器是用的电流输出方式,转换方式分为并行数模转换和串行数模转换方式,对转换方式这里不做深入的了解。D/A转换器的主要特性指标包括以下几方面:(1)分辨率:指最小输出电压(对应的输入数字量只有最低有效位为“1”)与最大输出电压(对应的输入数字量所有有效位全为“1”)之比。如N位D/A转换器,其分辨率为1/(2N-1)。(2)线性度:用非线性误差的大小表示D/A转换的线性度。并且把理想的输入输出特性的偏差与满刻度输出之比的百分数定义为非线性误差。(3)转换精度:D/A转换器的转换精度与D/A转换器的集成芯片的结构和接口电路配置有关。如果不考虑其他D/A转换误差时,D/A的转换精度就是分辨率的大小,因此要获得高精度的D/A转换结果,首先要保证选择有足够分辨率的D/A转换器。同时D/A转换精度还与外接电路的配置有关,当外部电路器件或电源误差较大时,会造成较大的D/A转换误差,当这些误差超过一定程度时,D/A转换就产生错误。 在D/A转换过程中,影响转换精度的主要因素有失调误差、增益误差、非线性误差和微分非线性误差。(4) 转换速度:转换速度一般由建立时间决定。从输入由全0突变为全1时开始,到输出电压稳定在FSRLSB范围(或以FSRx%FSR指明范围)内为止,这段时间称为建立时间,它是DAC的最大响应时间,所以用它衡量转换速度的快慢。 图 4图4是DAC0832型号的D/A转换器,本设计当中采用的就是该型号其引脚功能介绍如下:DI0DI7:数据输入线,TTL电平;LE:数据锁存允许控制信号输入线,高电平有效;CS:片选信号输入线,低电平有效;WR1:为输入寄存器的写选通信号;XFER:数据传送控制信号输入线,低电平有效;WR2:为DAC寄存器写选通输入线;Iout1:电流输出线。当输入全为1时Iout1最大;Iout2: 电流输出线。其值与Iout1之和为一常数;Rfb:反馈信号输入线,芯片内部有反馈电阻;Vcc:电源输入线 (+5v+15v);Vref:基准电压输入线 (-10v+10v);AGND:模拟地,摸拟信号和基准电源的参考地;DGND:数字地,两种地线在基准电源处共地比较好。 如图,为单片机与DA转换器的引脚链接方式原理图,图中单片机P0口当中的输出端连到DA转换器的输入端D口,WR1输入写选通信号,DA转换器的缓冲方式有3种,分别为:(1)单缓冲方式。单缓冲方式是控制输入寄存器和DAC寄存器同时接收资料,或者只用输入寄存器而把DAC寄存器接成直通方式。此方式适用只有一路模拟量输出或几路模拟量异步输出的情形。(2)双缓冲方式。双缓冲方式是先使输入寄存器接收资料,再控制输入寄存器的输出资料到DAC寄存器,即分两次锁存输入资料。此方式适用于多个D/A转换同步输出的情节。 (3)直通方式。直通方式是资料不经两级锁存器锁存,即 CS*,XFER* ,WR1* ,WR2* 均接地,ILE接高电平。此方式适用于连续反馈控制线路和不带微机的控制系统,不过在使用时,必须通过另加I/O接口与CPU连接,以匹配CPU与D/A转换。 通过情况下,一般的单片机设计采用的都是单缓冲方式,本设计也是采用的单缓冲方式。 2.2.3 运算放大器的功能及介绍 该信号音发生器,D/A转换器与喇叭之间连接这一个运放电路,并没有接功放电路,是因为功率放大器是在主机的额定输出功率不能胜任带动整个音响系统的情况下才会用到,这是主机和播放设备之间才会需要用到功率放大器,而运算放大器电路,简称运放,是具有很高放大倍数的电路单元,在实际电路中,通常结合反馈网络共同组成某种功能模块,另外D/A输出的的电流信号,运放将电流转化为电压。而且提高了带负载能力,因此采用的是运算放大器。运放(operational amplifier,简称OPA)是能对信号进行数学运算的放大电路。它曾是模拟计算机的基础部件,因而得名。采用集成电路工艺制做的运算放大器,除保持了原有的很高的增益和输入阻抗的特点之外,还具有精巧、廉价和可灵活使用等优点,因而在有源滤波器、开关电容电路、数-模和模-数转换器、直流信号放大、波形的产生和变换,以及信号处理等方面得到十分广泛的应用,在直流放大电路在工业技术领域中,特别是在一些测量仪器和自动化控制系统中应用非常广泛。集成运算放大电路按参数来分的话,大致可以分以下几种:通用型,精密运放型,高阻性,低温漂型,高速型,低功耗型,高压大功率型,本设计采用的而是通用型的运算放大器,如图6 图 6该运算放大电路中,有集电极电源UCC是放大电路的能源,为输出信号提供能量,并保证发射结处于正向偏置、集电结处于反向偏置,使晶体管工作在放大区;集电极电阻RL是晶体管的集电极负载电阻,它将集电极电流的变化转换为电压的变化,实现电路的电压放大作用,耦合电容C1、C2起隔直流通交流的作用;在信号频率范围内,认为容抗近似为零。所以分析电路时,在直流通路中电容视为开路,在交流通路中电容视为短路,基极电阻RB以保证工作在放大状态。改变RB使晶体管有合适的静态工作点。该电路的核心器件是运算放大器,该放大器中有2个输入、2 个电源引脚和 1 个输出,主要起到的是一个保护的作用,保护输入,保护输出,保护电源。2.2.4 构建信号器所需要的硬件材料及焊接过程电话网信号音发生器所需材料有:万用板,TS89C51单片机芯片,12M赫兹晶振,8个按键,电阻若干,电容若干,导线,0832D/A转换器,喇叭。在单片机最小最小系统中,单片机从 P1.0-P1.7 口接收来自按键的信号,并通过 P0.0-P0.7 口输出DAC0832的8位数据,通过 DA 转换芯片最终以电压的形式输入喇叭,使得喇叭发出信号音。3 信号音发生器软件程序的设计3.1分频程序的设计根据设计要求和信号音分类可知,信号音频率分为3种:450赫兹,25赫兹和950赫兹。其中拨号音,忙音,拥塞音,回铃音,空号音,长途通知音是450赫兹,振铃音是25赫兹,催挂音是950赫兹。由于涉及中单片机中的晶振频率是12M赫兹,而信号音产生的频率是950赫兹,450赫兹,25赫兹,因此我首先考虑是把12M赫兹的主频进行分频。那么首先我将12M赫兹的主频分为950赫兹,在将信号再次分为450赫兹,最后将信号分为25赫兹。在450赫兹里面,首先是拨号音,只需连续发送一个500赫兹的信号即可;要得到0.35秒通,0.35秒断的0.7秒断续的忙音,首先要产生一个0.35秒通0.35秒断的矩形波,再将产生的信号与450赫兹的方波信号进行相与运算,那么得到的信号就是0.35秒断0.34秒通的信号了。同理,要产生0.7秒断0.7秒通的1.4秒的拥塞音信号,首先要产生一个0.7秒通,0.7秒断的方波信号,将之与450赫兹的方波相与就能实现。同理,回铃音,空号音,长途通知音,振铃音,催挂音产生的步骤都一样,只是频率的和断续时间不一样。3.2 定时功能的实现有了不同信号音频率了之后,接着就要实现信号音的断续,在实时控制系统中,常常需要有实时时钟以实现定时或延时控制,51单片机内部提供了两个16位可编程的定时器计数器,即定时器T0和定时器T1,它们既可用作定时器方式,又可用作计数器方式。它们各有两个独立的8位寄存器组成,利用T0和T1可以完成时间计数、测量时间间隔和秒冲宽度以及产生定时器中断请求等功能。而本设计当中最终实现信号音的断续,就是利用的单片机中的定时器功能,下面将介绍一下定时器基本信息。3.2.1 定时器的结构及工作原理定时器/计数器的实质是加1计数器(16位),由高8位和低8位两个寄存器组成。TMOD是定时器/计数器的工作方式寄存器,确定工作方式和功能;TCON是控制寄存器,控制T0、T1的启动和停止及设置溢出标志。T0或T1状态字在相应功能寄存器中,通过对控制寄存器的设置来选择定时器计数器的工作方式。51单片机定时器计数器的结构如图所示在作为定时器使用时,输入的时钟脉冲是有晶体振荡器的输出经过12分频后得到的,所以懂事起可以看做是对计算器周期的计数器,因为每个机器周期包含12个震荡周期,因此每一个机器周期定时器加1,可以把输入的时钟脉冲看成机器周期信号。故其频率为晶振频率的1/12。本设计当中单片机中的晶振频率为12M赫兹,因此定时器没接受一个输入秒冲的时间为1us。3.2.2 控制定时器的寄存器 定时器的工作方式一共有4中,器工作方式的选择及控制都由两个特殊功能寄存器(TMOD和TCON)的内容来决定。用指令改变TMOD或TCON的内容后,则在下一条指令的第一个机器周期的S1P1时起作用。 如图为特殊功能寄存器TMOD中每位的定义,TMOD的地址为89H,高4位用于定时器1,低4位用于定时器0,其中M1、MO用来确定所选的工作方式。(1)GATE:门控位用来确定对应的外部中断请求引脚。GATE=0时,只要用软件使TCON中的TR0或TR1为1,就可以启动定时器/计数器工作;(即需要一个启动条件)GATE=1时,要用软件使TR0或TR1为1,同时外部中断引脚也为高电平时,才能启动定时器/计数器工作,即需要两个启动条件。(2)C/T :定时/计数模式选择位。C/T =0为定时模式,采用晶振脉冲的12分频信号作为计数器的技术脉冲,即对机器周期进行计数; C/T =1为计数模式,采用外部引脚的输入脉冲为技术脉冲,当T0或T1输入发生从高到低的负跳变时,计数器加1,最高技术频率为晶振频率的1/14.。该设计中C/T=0。(3)M1M0:工作方式设置位。M1 M0 工 作 方 式 功 能 说 明 M1 MO 方 式 说 明 0 0 013位定时器 0 1 116位定时器 1 0 2自动装入时间常数的8位定时器 1 1 3对T0分为两个8位独立计数器,对T1置方式3时停止工作 特殊功能寄存器TCON用于控制定时器的操作以及对定时器中断的控制,包括对定时器的启动、停止以及溢出是设定标志位和外部中断触发方式等。其地址为88H,位地址为88H8FH,控制字各位的定义如图各位定义如下: (1) TF1:定时器1溢出标志位。当定时器1计满溢出时,由硬件使TF1置“1”,并且申请中断。进入中断服务程序后,由硬件自动清“0”,在查询方式下用软件清“0”。 (2)TR1:定时器1运行控制位。由软件清“0”关闭定时器1。当GATE=1,且INT1为高电平时,TR1置“1”启动定时器1;当GATE=0,TR1置“1”启动定时器1。 (3)TF0:定时器0溢出标志。其功能及操作情况同TF1。(4)TR0:定时器0运行控制位。其功能及操作情况同TR1。(5)IE1:外部中断1请求标志位。 (6)IT1:外部中断1触发方式选择位。当IT1=0,为低电平触发方式;当IT1=1,为下降沿触发方式。 (7)IE0:外部中断0请求标志位。 (8)IT0:外部中断0触发方式选择位。当IT0=0,为低电平触发方式;当IT0=1,为下降沿触发方式。 TCON中低4位与中断有关。由于TCON是可以位寻址的,因而如果只清溢出或启动定时器工作,可以用位操作命令。例如:执行“CLRTF0”后则清定时器0的溢出;执行“SETBTR1”后可启动定时器1开始工作。3.3.3 定时器的初始化设置 51单片机内部定时器的功能是有软件设置的,器工作方式和工作过程均可以由51单片机程序对它进行设定和控制。因此,51单片机在实现定时功能的时候,必须先对它进行初始化。初始化步骤如下:1、确定工作方式(即对TMOD赋值),根据题目要求,以设定定时器相应的工作方式;2、预置定时或计数的初值(可直接将初值写入TH0、TL0或TH1、TL1),以确定需要定时的时间和需要计数的初值;3、根据需要开放定时器/计数器的中断(直接对IE位赋值);4、启动定时器/计数器,一般使用指令SETB Tri来起动定时器(若已规定用软件启动,则可把TR0或TR1置“1”;若已规定由外中断引脚电平启动,则需给外引脚步加启动电平。当实现了 启动要求后,定时器即按规定的工作方式和初值开始计数或定时)。 接着就是计算各种信号音定时时间所需要的定时器初值,而在定时器模式下,单片机秒冲经过12分频后计数得到的,因此,在定时器时间T的计算公式为: T=(Tm-Tc)12/fosc(us) 因为寄存器的工作方式有4种,不同的工作方式,M1、M0的赋值不一样,并且定时的最大时间也不一样,因此接下来还要了解寄存器不同的工作方式。3.3.4 定时器的工作方式51单片机的定时器共有4中工作模式,即方式0,方式1,方式2和方式3。定时器T0和T1的工作原理基本相同。各种方式的选择是通过TMOD的M1、M0两位进行编码实现的,接下来具体介绍一下各种方式。(1) 方式0:当TMOD中的M1M0=00H时,定时器就以方式0进行工作。下图所示的就是方式0的逻辑电路图。方式0是13位计数器结构的工作方式,其计数器由TH0的全部8位和TL0的低5位构成,TL0的低三位不用。 当定时器工作的时候,C/T=0,多路转向开关接通振荡器的12分频输出,13位计数器以此进行计数,当TL0低5位计数溢出时,向TH0进位,而全部13位计数溢出是,则向计数溢出标志TF0进位。(2) 方式1:当TMOD中的M1M0=01H时,定时器以方式1进行工作。方式1是16位计数结构的工作方式,计数器由TH0全部的8位和TL0全部的8位构成,其逻辑电路和工作方式0相同,唯一区别是方式1的计数器长度为16位,下图位方式1工作的逻辑电路图。(3) 方式2:方式0和方式1的特点是计数溢出后,计数回0,而不能重装初值,因此循环定时或循环计数就存在反复设置计数初值问题,不但影响定时精度,同时也曾加了程序设计的复杂程度。方式2就是针对这内问题而设计的,它具有自动重装计数初值的功能。当TMOD中的M1M0=10H是,定时器工作方式2进行工作。 方式2中将16位的计数器拆成了2个8位计数器,低8位TL用作计数器;高8位TH用作预置计数器,初始化时将计数初值分别装入TL和TH中。当计数溢出时,由预支计数器自动给计数器TL重新装入初值。其逻辑电路图如图初始化时,8位计数初值同时装入TL0和TH0中,TL0计数溢出时,置位TF0,同时将保存在预置计数器TH0中的计数初值自动装入TL0,然后TL0重新计数,去次循环反复工作。这不但省去了程序中的重新初值指令,而且也有利于提高定时精度。该方式自动重装功能非常适用于循环定时或循环计数应用。(4)方式3:这种式作方式之下,定时/计数器0被拆成2个独立的定时/计数器来用。其中,TL0可以构成8位的定时器或计数器的工作方式,而TH0则只能作为定时器来用。我们知道作定时、计数器来用,需要控制,计满后溢出需要有溢出标记,T0被分成两个来用,那就要两套控制及、溢出标记了,从何而来呢?TL0还是用原来的T0的标记,而TH0则借用T1的标记。一般情况处,只有在T1以工作方式2运行(当波特率发生器用)时,才让T0工作于方式3的。方式3的逻辑电路图如图 通过比较上面4中方式,本设计最终采用的是方式1来进行定时,因为单片机主脉冲的晶体振荡器频率f为12M赫兹,因此方式0最大定时时间Tm=213*1us=8.192ms,方式1最大定时时间为Tm=216*1us=65.536ms.方式2和3最大定时时间为Tm=28*1us=0.256ms。而需要定时的时间都大于这些方式的最大时间,因此要用到循环程序,考虑到精确度,于是选用方式1来产生50ms的定时。以50ms为基础,来进行循环。经计算,各信号音循环的次数如下:忙音,循环7次;拥塞音,循环14次;空号音循环2次。4 中断系统的设计4.1 中断允许控制寄存器(IE) 在CPU与外设交换信息时,存在一个快速的CPU与慢速的外设间的矛盾。为解决这个问题,采用了中断系统。中断系统又叫作中断管理系统,其功能是使处理机对外界异步事件具有处理功能,当CPU正在处理某项事务的时候,如果外界或内部发生了紧急事件,要求CPU暂停正在处理的工作转而去处理这个紧急事件,待处理完以后再回到原来被中断的地方,继续执行原来被中断了的程序,这个过程称为中断。51单片机允许有5个中断源,提供两个中断优先级(能实现二级中断嵌套)。每一个中断源的优先级的高低都可以通过编程来设定。中断源的中断请求是否能得到响应,受中断允许寄存器IE的控制;各个中断源的优先级可以由中断优先级寄存器IP中的各位来确定;同一优先级中的各中断源勇士请求中断时,由内部的查询逻辑来确定响应的次序,本设计当中,采用的是中断允许控制寄存器(IE)。IE中的各位功能如下: D7D6D5D4D3D2D1D0EA-ESET1EX1ET0EX01) EX0:外部中断0允许位。EX0=1,允许外部中断0中断;EX0=0,禁止外部中断0中断。 2) ET0:T0溢出中断允许位。ET0=1,允许T0中断;ET0=0,禁止T0中断。 3) EX1:外部中断1允许位。EX1=1,允许外部中断1中断;EX1=0,禁止外部中断1中断。 4) ET1:T1溢出中断允许位。ET1=1,允许T1中断;ET1=0,禁止T1中断。 5) ES:串行中断允许位。ES=1,允许串行口中断;ES=0,禁止串行口中断。6) EA:中断总允许位。EA=1,CPU开放中断。但每个中断源的中断请求是允许还是被禁止还需要各自的允许为确定;EA=0,CPU禁止所有的中断请求,即CPU屏蔽所有的中断请求。51单片机中断系统的管理是由中断允许总控制EA和各中断源的控制为共同作用来实现的,缺一不可。当系统复位后,IE各位均清零,即禁止所有中断。4.2 键盘中断方式设计 本设计当中,使用是是按键来控制各种信号音的发生,因此需要利用键盘中断来实现。一下是键盘的中断工作方式流程图 初始化设置 中断入口 Key_value=P2&0XF0 调用运行延时子程序 否 Key_value是否等于 =P2&0XF0 判断按键是否释放 否 执行相应的处理程序(散转) . 中断返回由于单片机的中断资源有限,合理充分的利用中断资源就比较重要,系统需要用到多个按键时,通过与门或与非门可以使用一个中断来实现键盘的数入控制,键盘的工作方式如图: 电阻10k*8 P2.0 KEY1 P2.1 KEY2 P2.2 KEY3 P2.3 KEY4 P2.4 KEY5 P2.5 KEY6 P2.6 KEY7 P2.7 KEY8 接地 INT0 4086在上图中,将电路通过与门街道单片机的外部中断源INT0口上,当有键按下时,例如KEY1按下,P2.0为低电平,同时通过4086与门触发中断,从中断入口地址跳到相应的键盘中断子系统中执行。5 总结与展望5.1 研究总结开始刚刚接触这个课题的时候,脑子里一点想法都没有,虽说大部分都是平时书本里的内容,但是由于大学上课期间不是很认真的听课,所以很多基本知识都不懂,因此这个课题对于我来说,相当于从头学起,在学习过程中,让我受益颇多。今年3月份我开始着手开始做毕业设计,期初我毫无头绪,在老师和同学的帮助下,我先具体了解了一下信号音的性质,及各种发生方式,让我对这个课题有了个初步的了解,接着我参考其他的优秀论文,将论文的大致思路,结构和方法捋了一下,决定边写边学边改,往事开头难,期初论文举步维艰,最后思考了下,还是先埋下头看书,接着我将单片机的书看了一番,渐渐找到了方向,我首先介绍了信号音发展的背景,研究意义,接着介绍了信号音发生的硬件和软件平台,接着就进入了实际操作阶段,整个过程当中,实际操作是最难的,首先就是电路图的画制,我最后是在网上找到了电路图,然后进入了焊接阶段,虽然焊接并不用学习什么新知识,但是我觉得焊制是相当重要的一部分,期初,经常把STC89C51单片机的管脚给看错,稍微不注意,就焊错了管脚,然后又要花半天时间找到哪里接错了,然后重新焊制,所以在焊制过程中细心是最重要的,稍微就一失足成千古恨,重头再来。在焊板子的时候,让我也学习到了很多器件的焊制方法,知道了如何识别三极管的3个引脚,晶振的接法等。之后就是程序的编写,程序是最头疼的地方,通过老师,同学和网上查资料,最后勉强完成了。一路下来,磕磕盼盼,最终将东西完成,看到自己的成果,一股成就感油然而生。5.2 研究展望 虽然现在已经现在电话系统中,信号音已经不再运用于当中,电话通话当中更多的是智能语音的播报,但是通过研究这个课题,我们能更加了解这个信号的发展历史,更重要的是知道信号音基础的专业知识,可以为以后从事电话网行业打下一个基础。 本设计是基于51单片机而生产的电话网信号音,我在查找资料的时候,发现信号音的产生方法其实也很多很多种,我这种单片机法,应该是最实用于学生的一种产生方法,但由于时间和精力的限制,本设计还有相当的的地方可以进行完善与改造。1) 本设计只是最后模拟出信号音的声音,并不能看出各种信号音波形的变化,中间还可利用示波器来演示信号音波形的变化,更加直观。2) 在焊接的时候,由于比较手生,背部焊制的比较凌乱,所以这地方可以的话,能够焊制的更加美观。3) 本设计最终并没有画出印制电路板(PCB板),电路图是在网上找的,PCB板就没有画出,实际上,完成一个硬件电路的设计,PCB板是比不可少的,本设计还可以加上一个PCB板画制的步骤。 参考文献1谢瑞和.单片机在小型电话交换机的应用D.华中理工大学.1993年第一期2沪讯.常用的电话信号音有哪几种D.家用电器.1998年第6期.30页3王玉贤.适用于移动电话系统的信号音电路D.邮电部电信传输研究所.1994年4叶敏.程控数字交换与交换网(第二版)M.北京:北京邮电大学出版社.20035道客巴巴基于单片机信号音发生器设计2010-04-0http:/www.doc88.com/p-79529167301.html6丁向荣,谢俊,王彩申. 单片机 C 语言编程与实践M. 北京:电子工业出版社,2009.87王为青,程国刚. 单片机 Keil Cx51 应用开发技术M.北京:人民邮电大学出版社,20078康华光:模拟电子技术基础(第四版)M,华中理工大学出版社,1999.5,P16-P669陈小忠:单片机接口技术实用子程序M,北京人民邮电出版社,2005.1,P13-P9010李建忠:单片机原理及应用,西安电子科技大学出版社M,2008.2,P6-P1511傅建勋,董军.数字程控交换机中信号音的单片机产生法D机电部石家庄第五十四研究所.1991年第21卷第4期. 致谢 至此,本设计已经基本完成。白驹过隙,时光荏茬,大学4年的时光转眼间就过去了,好像是做一场梦一样,眼睛一闭一睁,懵懵懂懂的就要离开这所学校了。在这四年里,有进大学时候的荒废,有为了考试的临时抱佛脚,也有为了备战考研的拼命发奋,这所发生的点点滴滴,都是我在大学的回忆,我需要感恩的回忆,特别感谢大学四年来,陪伴我的同学,老师,是他们在生活和学习上给了我很大的帮助,在此,表示衷心的感谢! 设计最终能够顺利的完成,从头至尾得到了师的细心指导,不管是复杂的编程问题,还是一些简单基础的问题,他都耐心并且仔细的给我讲解,让我每次在遇到困难的时候都会有信心去克服这些难题,他的教学态度,对待知识的严谨都是值得我去学习,也让我受益匪浅,在此,进向尊敬的孙清海老师表示最诚挚的谢意。 最后,我要感谢父母和亲人在生活和学习上对我的支持和关心,感谢所有关心和帮助过 我的老师、同学和朋友们。
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号