收藏 分享(赏)

基于单片机的低频信号源的设计.doc

上传人:HR专家 文档编号:11614124 上传时间:2020-08-28 格式:DOC 页数:8 大小:280KB
下载 相关 举报
基于单片机的低频信号源的设计.doc_第1页
第1页 / 共8页
基于单片机的低频信号源的设计.doc_第2页
第2页 / 共8页
基于单片机的低频信号源的设计.doc_第3页
第3页 / 共8页
基于单片机的低频信号源的设计.doc_第4页
第4页 / 共8页
基于单片机的低频信号源的设计.doc_第5页
第5页 / 共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

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

6、某一规定值时,VPD便向片内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)直通方式 将W

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

8、到输入寄存器,以提高DA转换速度。还可用于多路数模转换系统,以实现多路模拟信号同步输出的目的。 在所设计的电路中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单元中的内容一变,则输出正弦波的频率也就发生了变化。即:就是把一个正弦信号(阶梯逼近)取样、量化、编码,形成一个正弦函数表储存在了RO

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

11、单缓冲方式。这种单缓冲方式是DAC0832的两个缓冲器同时受控,将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

12、口来设置完成。例P1.0为锯齿波信号选择开关,当加上电源后,自动复位电路开始工作,单片机开始工作。当K0键按下,即想要输出锯齿波时,P1.0为低电平,扫描程序调用锯齿波子程序,产生的数字信号送DAC0832进行数模转换,其输出经运算放大电路后输出锯齿波。4 软件设计4.1 主程序流程图 程序流程图如图6所示。4.2 正弦波的流程图及子程序4.2.1 流程图 流程图如图7所示。4.2.2 子程序5 结 语 该信号源的设计是以MCS-51单片机和DAC0832为核心元件,结合较简捷的外围电路来构建低频信号源。它能产生三角波、正弦波等5种信号,本设计采用硬件和软件相结合,电路较传统的简单且操作方便,具有一定的参考价值。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 学术论文 > 管理论文

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报