1、基于AVR的双音多频信号发生器研究The Study On DTMF Signal generator based on AVR Micro-controller摘 要通信是现代信息社会的主要特征,DTMF技术以其误码率低、工作可靠而被广泛应用,特别是在无线电传输中更显示出它在调制、解调、发射、接收方面的突出优越性,所以双音多频信号即DTMF(Dual ToneMuli-Frequency)成了电话网中常用的信令,无论是家用电话、移动电话还是程控交换机上,多采用DTMF信号发送、接收号码。本文简要介绍了AT90S8515单片机的特点、结构、指令系统、存储器组织等。介绍了在带有PWM(脉冲宽度调
2、制)和SRAM的AVR单片机上生成DTMF(双音多频)信号的实现方案,给出了原理图和程 程图,制作出 双音多频信号发生器。所 的主要 是 和器 单片机 接,通 程 通 器 所 的 的 调传出。 上有0-9,A-D 以 #”, *” 16 。,用AT90S8515 的 可频,有currency1“和8/9/10PWM 的16fi 器/ fl器, 通 脉宽调制 ,实现DTMF信号的实 解码。方案成本低、性 可靠、 度,”了实应用。 脉宽调制 AT90S8515 双音多频ABSTRACTCommunication is a main characteristic of the modern info
3、rmation-intensive society. DTMF (Dual-tone multi-frequency) is widely used becauseof the low rate of mistake and reliable work, demonstrating an outstandingsuperiority especially in its modulating of transmitting in radio ,demodulation, launch, and receiving. So DTMF becomes a commonlyused order in
4、the telephone network. No matter in home telephone, mobileor the program-control exchange, DTMF signal is widely used to send andreceive the number.This text has introduced the characteristic, structure, instructionsystem, memory of organize etc. of micro controller AT90S8515 briefly,and introduced
5、a scheme of DTMF signal generator based on AVR microcontroller AT90S8515chip with PWM and SRAM too. The article presentsthe principle picture and procedure flow chart to design and facture a DTMFsignal generator. The main content of the work is link the keyboard andloudspeaker with the micro control
6、ler , the system can transmit the soundin the loudspeaker which made by pressing down the key through making theprogram.There are 0-9 ,A-D and “#”, *” 16 keys in all on the keyboard.Besides, it uses a 16 bit timer/counter inside AT90S8515 which is pre-dividable and has the function of comparing seiz
7、ing and 8/9/10 bit PWM,and complete the real time decode the DTMF signal by the means of PWM.This design has practically applied with its low expense, reliability, andhigh speed.Keywords: PWM , AT90S8515 , DTMF 论.1 AVR单片机简介.22.1 AT90系单片机简介.22.2 AT90S8515单片机的结构.32.3 fi.42.4 单片机的存储器组织.62.5 和中理.102.6 f
8、i 器/ fl器.12 双音多频简介.163.1 DTMF信号.163.2 DTMF号.173.3 DTMF解码.18 脉宽调制.204.1 脉宽调制简介.204.2 PWM工作原理.204.3 脉宽调制.22 用AT90S8515实现DTMF发生器解 方案.235.1 方案应 的特征.235.2 AVR单片机实现DTMF信号发生器的 技术.235.3 DTMF信号的 生.245.4 误 .31结 论.34.35文 .36 论通信是现代信息社会的主要特征,基于双音多频(DTMF)信号的通信,是 发 的 度可靠的 程fl 传送方 。双音多频信号主要应用于 动程控交换机,电话号 无线机系统中。有用
9、的双音多频信号的发码和解码 片,其解码 程 系的 和 的 ,可靠性, 被广泛应用于电 网 动系统、 实 测 策系统和工业 程控制系统中的信息传递。但是由于电信部门的通信用 片 机接口不兼 ,在用上述系统发送信息 , 了用的双音多频发码 片,还要用”大量的电 器 , 成本大大地提。若在单片机的应用系统中,用AVR单片机中的有currency1“8/9/10PWM 的16fi 器/ fl器,和少的I/O口线实现双音多频的发码通信,从而达”降低成本的的, 某些民用 品更有价 竞争优势。本文介绍了 用AVR单片机本身的优势,采用脉宽调制的方 ,实现双音多频信号的发生器 ,只占用单片机的八条I/O口线,
10、是 有很性价currency1的 程通信方 。本 以AVR AT90S8515为标器 , 实现DTMF信号 生的 和程 。 不仅反映了AVR AT90S8515在通信领域中的实应用,而且体现了fl字 器 、实现和应用的许多重要 。 AVR单片机简介2.1 AT90系单片机简介AT90系单片机是增强RISC结构、 载Flash的单片机,通常简称为AVR单片机,采用低耗、非挥发的CMOS工艺。通用SPI口和 般的 程器可以AVR单片机的Flash存储器进行 程。是最新单片机系 ,其突出的特点在于 度、片 硬 资源丰富,可作为真意上的单片机 用。AT90系单片机是基于新的精简指令RISC结构,在90
11、 代开发出的,综合了半导体集成技术和 性 的新型单片机。这 结构 在8微理器 场上,AVR单片机有最1MIPS/MHz 力。AVR采用了现代微理器 水线取指令技术,淘汰了机器周期的概念,以 钟周期为指令执行的最基本 间单。通常钟频率用4MHz8MHz,故最短指令执行 间为250125ns1。为了缩短进入 场的 间,简化维护的支持,于单片机说,用级语言 程是 标准 程方 。AVR单片机的开发的 在于 采用C语言 程,从而 效地开发出标 品。为了标代码大小、性进行更好的优化,AVR单片机采用了大型 存取寄存器文 和 单周期指令。 存取寄存器文 由32 通用工作寄存器组成。传统的基于累加器的结构需要
12、大量的程 代码,以实现在累加器和存储器间的fl 传送。在AVR单片机中,用32 通用寄存器代替累加器,从而避免了传统的累加器和存储器间的fl 传送造成的瓶颈现象。在AVR单片机中,当 条指令执行的 候 取出现行的指令,然后以 周期执行指令。在其它的RISC以 类似的RISC结构中,部振荡器的 钟被频降”传统的 部执行周期,这 频最大达12 。AVR单片机是用 钟周期执行 条指令的,在8单片机中它是真的RISC单片机。这 单片机 了某些机型的 输入输出HSIO和可 程技术 PCA的概念,实现了本身的输入“、输出currency1和脉冲宽度调制输出 。这是脉冲信号测量、开量 控制 某些 达调 的力
13、工。AVR 了代器 的 行口,且增加了 行口,可方 地 其 器 进行 行通 。2.2 AT90S8515单片机的结构图2.1 AT90S8515结构方 图 AVR 32 工作寄存器和丰富的指令集结在 ,所有的工作寄存器 ALU( 单 ) 接 , 许在 钟周期 执行的单条指令 的寄存器,这 结构提了代码效率,AVR ”了currency1 通CISC 单片机 10 的性 。2.3 fi图2.2 AT90S8515 图2VCC GND 电源A 口(PA7PA0)A口是 8双 I/O口, 有 部上电。A口的输出冲器 收20mA的电 ,可 接动LED。当作为输入 ,currency1部被低,由于上电的
14、存在, 输出电 。在 程中,A口为 ,即 钟还“ 振。在 部SRAM ,A口作为地/fl 用口。B 口(PB7PB0)B口是 8双 I/O口, 有 部上电。B口的输出冲器 收20mA的电 ,可 接动LED。当作为输入 ,currency1部被低,由于上电的存在, 输出电 。在 程中,B口为 ,即 钟还“ 振。C 口(PC7PC0)C口是 8双 I/O口, 有 部上电。当作为输入 ,currency1部被低,由于上电的存在, 输出电 。在 程中,C口为 即 钟还“ 振。C口还可以用作部SRAM的地。D 口(PD6PD0)D口是 带 部上电的7双 I/O口,输出冲器 收20mA的电 。当作为输入
15、,currency1部被低,由于上电的存在, 输出电 。在 程中,D口为 ,即 钟还“ 振。/RESET 输入 50ns的低电 系统 ,低于50ns的脉冲不 fifl可靠 。XTAL1 振荡器 大器的输入。XTAL2 振荡器 大器的输出。ICP T/C1输入“的输入。OCIB T/C1输出currency1B。ALE 部SRAM 的地存信号。体振荡器 XTAL1和XTAL2别是片 振荡器的输入输出。可 用体振荡器是 振荡器。当 用部 钟 ,XTAL2应。振荡器 接 部 钟动别图2.3和图2.4 图2.3 振荡器 接 图2.4 部 钟动2.4 单片机的存储器组织 寄存器文 ”32 8可单周期 的
16、通用寄存器,这意在 钟周期 ,ALU可以 成 作 取寄存器文中的 作fl执行 作, 结currency1存”寄存器文 。寄存器文 中的6 可以组成3 16用于fl 的间接寄存器指,以提地 力,其中Z指还用于 。ALU支持 寄存器间、寄存器和常fl间的术和 作以单寄存器的 作。 了寄存器 作 ,通常的 存 用于寄存器文 ,这是 为AT90S8515为寄存器文 了32 最低的fl间地$00-$1F, 许其象 通 存地 被 。I/O 存间” 64 地作为CPU 的控制寄存器T/C以 其 I/O 。I/O 存可以 接 ,可以作为fl 地$20-$5F 。AVR采用了HARVARD结构 程 和fl 线。程 存通 的Pipeline进行 当CPU在执行 条指令的 取条指令,这 取指的概念 指令可以在 钟 成。 和 调用指令可以 接 2K/4K地间。所有的AVR指令 为16 。 程 存地 ” 条1632的指令。当执行中和 程 调用 , 地存储于 中。 于