低频信号源
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
关键字:信号源 单片机 D/A转换
函数信号发生器是一种常用的信号源,它广泛地应用在电子技术实验。目前常用的函数信号发生器,一般可靠性较差,准确度较低,难以满足科研和高精度实验的需要。现用单片机和支持软件及其外设电路构成的智能函数信号发生器,采用编程的方法来实现波形,将产生波形的程序用子程序的形式编写,在需要波形时再调用相应子程序,经过D/A转换、运算放大器处理后,作为该信号源输出,其线路简捷、功能强大、性价比较高。
1 主要芯片介绍
1.1 AT89C51单片机芯片
1.1.1 引脚图
本文采用的单片机芯是AT89C51,它是采用高速CMOS制造工艺,通用型为40脚双列直插封装方式,其引脚如图1所示。只要将+5 V电源接到VCC和VSS两端,将晶振接到XTAL1和XTAL2两端,给EA端加高电平控制电压,然后将机器码固化到AT89C51内就可以使用了。
1.1.2 单片机基本功能
单片机基本系统即单片机正常工作不可缺少的部分,进行设计都要在此系统基础上进行。
(1)外接晶振引脚XTAL1与XTAL2
单片机之所以要加振荡器是因为单片机内的CPU在执行指定程序时,要经过“取指”、“译码”,再定时给相关电路发出控制信号,以实现“机器码指令”所要求的功能。这就要求内部必须有一个基准时钟。可通过外接晶振或振荡信号二种方式来实现,一般采用外接晶振的方法较方便。
XTAL1(19),XTAL2(18)为外接晶振的两个引脚。接入晶振时,还要接入两个20~30 pF的瓷片电容C1,C2,晶振频率因单片机工作速度而异,Intel MCS-51系列为1.2~12 MHz,ATMEL89C系列为0~24 MHz,目前常采用6 MHz,11.059 MHz和12 MHz。石英晶振起振后,XTAL2(18)脚有一个3 V左右的正弦波。C1,C2短路、晶振不良,AT89C51(18),(19)脚内部反相器会损坏。VCC电源未加上等故障可能造成晶振不起振,使单片机无法工作。当采用外部振荡器时,信号接入(19)脚,(18)脚悬浮。振荡器的12分频为一个机器周期,当外接12 MHz晶振时,一个机器周期为1μs。MCS-51大多数指令为一个机器周期。
在掉电期问RST/VPD引脚如接入备用电源VPD(5 V±0.5 V),则可保存片内数据。当VCC下降到某一规定值时,VPD便向片内RAM供电。
3.2 D/A转换电路
DAC0832与单片机的连接中对主要功能信号的处理方法如下:
图中DAC0832与AT89C51的连接方式是单缓冲方式。这种单缓冲方式是DAC0832的两个缓冲器同时受控,将CS与XFER相连受控于 AT89C51的P2.0信号,WR1和WR2相连受控于AT89C51的WR信号,由于P2.0连至DAC0832的CS,故该片的地址为FEFFH (无关位取“1”)。
3.3 开关的功能和应用
由于本设计中要用按键控制波形输出,现将各
按键说明如下:
K0~K4分别与AT89C51的P1.0~P1.4相连,依次控制着锯齿波、方波、三角波、梯形波、正弦波的产生。
通过对51单片机进行D/A转换接口扩展,通过对INT0端设置按钮改变20H单元中的内容以调整频率,利用中断与查询相结合的方式进行波形选择,具体可以通过对P1口来设置完成。例P1.0为锯齿波信号选择开关,当加上电源后,自动复位电路开始工作,单片机开始工作。当K0键按下,即想要输出锯齿波时,P1.0为低电平,扫描程序调用锯齿波子程序,产生的数字信号送DAC0832进行数模转换,其输出经运算放大电路后输出锯齿波。
4 软件设计
4.1 正弦波的流程图及子程序
4.2 子程序
5 结 语
该信号源的设计是以MCS-51单片机和DAC0832为核心元件,结合较简捷的外围电路来构建低频信号源。它能产生三角波、正弦波等5种信号,本设计采用硬件和软件相结合,电路较传统的简单且操作方便,具有一定的参考价值。