基于单片机的低频信号源的设计说明

上传人:xmg****18 文档编号:145829982 上传时间:2020-09-23 格式:DOC 页数:8 大小:290KB
返回 下载 相关 举报
基于单片机的低频信号源的设计说明_第1页
第1页 / 共8页
基于单片机的低频信号源的设计说明_第2页
第2页 / 共8页
基于单片机的低频信号源的设计说明_第3页
第3页 / 共8页
基于单片机的低频信号源的设计说明_第4页
第4页 / 共8页
基于单片机的低频信号源的设计说明_第5页
第5页 / 共8页
点击查看更多>>
资源描述

《基于单片机的低频信号源的设计说明》由会员分享,可在线阅读,更多相关《基于单片机的低频信号源的设计说明(8页珍藏版)》请在金锄头文库上搜索。

1、一种基于AT89C51低频信号源的设计 2010-07-27 16:47:20作者:梁巧艳 会彩 杜延军 樊延虎来源:现代电子技术 关键字:信号源 单片机 D/A转换 低噪声 函数信号发生器是一种常用的信号源,它广泛地应用在电子技术实验。目前常用的函数信号发生器,一般可靠性较差,准确度较低,难以满足科研和高精度实验的需要。现用单片机和支持软件及其外设电路构成的智能函数信号发生器,采用编程的方法来实现波形,将产生波形的程序用子程序的形式编写,在需要波形时再调用相应子程序,经过DA转换、运算放大器处理后,作为该信号源输出,其线路简捷、功能强大、性价比较高。1 主要芯片介绍1.1 AT89C51单片

2、机芯片1.1.1 引脚图 本文采用的单片机芯是AT89C51,它是采用高速CMOS制造工艺,通用型为40脚双列直插封装方式,其引脚如图1所示。只要将+5 V电源接到VCC和VSS两端,将晶振接到XTAL1和XTAL2两端,给EA端加高电平控制电压,然后将机器码固化到AT89C51就可以使用了。1.1.2 单片机基本功能 单片机基本系统即单片机正常工作不可缺少的部分,进行设计都要在此系统基础上进行。(1)外接晶振引脚XTAL1与XTAL2 单片机之所以要加振荡器是因为单片机的CPU在执行指定程序时,要经过“取指”、“译码”,再定时给相关电路发出控制信号,以实现“机器码指令”所要求的功能。这就要求

3、部必须有一个基准时钟。可通过外接晶振或振荡信号二种方式来实现,一般采用外接晶振的方法较方便。 XTAL1(19),XTAL2(18)为外接晶振的两个引脚。接入晶振时,还要接入两个2030 pF的瓷片电容C1,C2,晶振频率因单片机工作速度而异,Intel MCS-51系列为1.212 MHz,ATMEL89C系列为024 MHz,目前常采用6 MHz,11.059 MHz和12 MHz。石英晶振起振后,XTAL2(18)脚有一个3 V左右的正弦波。C1,C2短路、晶振不良,AT89C51(18),(19)脚部反相器会损坏。VCC电源未加上等故障可能造成晶振不起振,使单片机无法工作。当采用外部振

4、荡器时,信号接入(19)脚,(18)脚悬浮。振荡器的12分频为一个机器周期,当外接12 MHz晶振时,一个机器周期为1s。MCS-51大多数指令为一个机器周期。(2)复位与复位电路 单片机必须进行复位,是因为单片机的CPU“取指”过程即为CPU从PC指针所指定的程序存储器ROM地址单元中读取“机器码”的过程。单片机加电后,PC指针应指向ROM中某个固定的单元,当然,程序开始的第一条指令也应放在ROM的这一地址单元,这样整个程序才能有序地执行。这个单元就是 ROM的0000H单元。只有上电复位正常后,PC值才为0000H,即指向ROM的0000H单元。此外,专用寄存器SFR中的SP为07H,即指

5、向片数据存储器(片RAM)07H单元,P0P3值为0FFH,其余的专用寄存器值大多为00H。 复位的方法:当振荡器正常工作时,RST(9)脚上出现的两个机器周期的高电平将使单片机有效复位。考虑到振荡器有一定的起振时间,该引脚必须保持 10 ms以上高电平,才能有效复位。复位电路有开机自动复位和手动复位。注意:复位信号为2个以上机器周期的高电平,单片机复位后正常工作时应该为低电平,如果未加复位电平或复位后复位电平仍未撤除,则单片机不能正常工作,此时,可检查RST电压及相关器件。 在掉电期问RSTVPD引脚如接入备用电源VPD(5 V0.5 V),则可保存片数据。当VCC下降到某一规定值时,VPD

6、便向片RAM供电。(3)EAVDD片程序存储器选用端 单片机复位后,PC指针可能指向片ROM0000H或片外ROM0000H单元,这取决于EAVDD(31)脚外接高电平(指向片 ROM0000H)还是低电平(指向片外ROM0000H)。AT89C51部有4 kB ROM,这时EA(31)脚需外接高电位VCC。 在编程期间,此引脚作编程电压VDD的输入端。1.2 关于DAC0832 DAC0832是具有20条引脚的双列直插式COMS器件,它部具有两级数据寄存器,完成8位电流DA转换。其结构框图及信号引线如图2所示。 以下是其三种不同的工作方式:(1)直通方式 将WR1,WR2,XFER,CS接地

7、,ILE接高电平,就能使得两个寄存器的输出跟随输入的数字量变化,DAC0832的输出也同时跟随变化。直通方式常用于连续反馈控制的环路中。(2)单缓冲方式 单缓冲方式就是将其中一个寄存器工作在直通状态,另一个处于受控的锁存器状态。在实际应用中,如果只有一路模拟量输出,或虽有几路模拟量但并不要求同步输出,就可采用单缓冲方式。(3)双缓冲方式 所谓双缓冲方式就是将两个寄存器都处于受控的锁存方式。为了实现两个寄存器的可控,应当给它们各分配一个端口地址,以便能按照端口地址进行操作。 DA转换采用两步写操作来完成。可在DAC0832转换输出前一个数据的同时,将下一个数据传送到输入寄存器,以提高DA转换速度

8、。还可用于多路数模转换系统,以实现多路模拟信号同步输出的目的。 在所设计的电路中DAC0832采用的是单缓冲方式。2 原理概述 单片机通过扩展DA转换接口,结合灵活的程序可以方便地产生各种低频信号。下面以正弦信号为例进行说明。2.1 正弦波信号的产生原理 正弦波的产生比较特殊,它不能由单片机直接产生,它只能产生如图3所示的阶梯波来向正弦波逼近。 很显然,在一个周期阶梯波的阶梯数目越多,单片机输出的波形也就越接近正弦波。 先假定正弦波的振幅是2.56 V,则波谷对应的数字量为最小值00H,波峰对应的数字量为最大值FFH。将正弦波的第一个周期的波形按角度均分为若干等份,并计算出各点对应的电压值,电

9、压值计算方法:Vx=2.5(1+sin),因为00HFFH对应的数字量为0255,所以根据算出的电压就可直接写出各点所对应的数字量。单片机将一个周期的数字量存入一定的存储区域中,然后依次循环取出这些数字量,并送DA电路转换成阶梯波,即近似的正弦波输出。所输出的正弦波的幅值可以通过DA转换电路实现。2.2 变频原理 单片机产生的阶梯逼近正弦波对应的程序中加入了软件延时,最后再加入根据20H单元中的容进行延时的延时程序,那么20H单元中的容一变,则输出正弦波的频率也就发生了变化。即:就是把一个正弦信号(阶梯逼近)取样、量化、编码,形成一个正弦函数表储存在了ROM中。合成时改变相位增量,由于相位增量

10、不同,则一个周期的取样点数也不同,从而达到频率合成的目的。 正弦信号本身是非线性的,而其相位是线性的,如图4所示。 因此,每隔一段时间t(时钟周期),有对应的相位变化p,即:p=t=2ft 从上式可以得到合成信号的频率f为:3 系统硬件设计 其系统硬件原理图如图5所示。3.1 单片机选择 本系统中使用AT89C51单片机。电路板上的EA引脚可利用跳线接电源,也可接地。因此,在此管座上可以插AT89C51,AT80C31等芯片。3.2 DA转换电路 DAC0832与单片机的连接中对主要功能信号的处理方法如下: 图中DAC0832与AT89C51的连接方式是单缓冲方式。这种单缓冲方式是DAC083

11、2的两个缓冲器同时受控,将CS与XFER相连受控于 AT89C51的P2.0信号,WR1和WR2相连受控于AT89C51的WR信号,由于P2.0连至DAC0832的CS,故该片的地址为FEFFH (无关位取“1”)。3.3 开关的功能和应用 由于本设计中要用按键控制波形输出,现将各按键说明如下: K0K4分别与AT89C51的P1.0P1.4相连,依次控制着锯齿波、方波、三角波、梯形波、正弦波的产生。 通过对51单片机进行DA转换接口扩展,通过对INT0端设置按钮改变20H单元中的容以调整频率,利用中断与查询相结合的方式进行波形选择,具体可以通过对P1口来设置完成。例P1.0为锯齿波信号选择开关,当加上电源后,自动复位电路开始工作,单片机开始工作。当K0键按下,即想要输出锯齿波时,P1.0为低电平,扫描程序调用锯齿波子程序,产生的数字信号送DAC0832进行数模转换,其输出经运算放大电路后输出锯齿波。4 软件设计4.1 主程序流程图 程序流程图如图6所示。4.2 正弦波的流程图及子程序4.2.1 流程图 流程图如图7所示。4.2.2 子程序5 结 语 该信号源的设计是以MCS-51单片机和DAC0832为核心元件,结合较简捷的外围电路来构建低频信号源。它能产生三角波、正弦波等5种信号,本设计采用硬件和软件相结合,电路较传统的简单且操作方便,具有一定的参考价值。

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 工作范文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号