基于单片机的波形转换设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
摘要:本系统是基于AT89C51单片机的波形转换器。采用AT89C51单片机作为控制核心,外围电路包括模/数转换电路(ADC0804)、数字/模拟转换电路(DAC0832)、按键开关等。按键应用的是独立按键,用来波形的切换,幅值的调解。通过转换和调节可以输出正弦波和矩形波。其设计简单、性能良好,可用于多种需要低频波形信号的场所,具有一定的实用性。
关键词:单片机、波形转换、按键开关、波形切换
目录
1、前言 (1)
1.1设计背景 (1)
1.2设计工作 (1)
2、总体设计框图 (2)
3、硬件电路设计 (2)
3.1AD转换模块 (2)
3.2DA转换模块 (5)
3.3单片机模块 (8)
3.4反相器模块 (10)
4、软件电路设计 (11)
4.1设计思路 (11)
4.2程序流程图 (12)
5、仿真情况 (13)
5.1调试中遇到的问题 (13)
5.2仿真调试过程 (13)
6、体会与总结 (16)
参考文献 (17)
附录1源程序 (18)
附录2设计电路 (21)
一、前言
1.1设计背景
随着计算机技术的发展和成熟,计算机的应用也越来越广泛。在自动化领域,计算机已经成为控制系统的首选平台,应用计算机对生产和试验进行实时、远程监控是现代自动化发展的主要方向。将计算机应用于工业实时控制的前提是现场数据的实时获取。在生产和科学实验中,常常要测控很多参数,诸如温度、压力、转速等,通常的方法是使用专用的仪表人为观测、记录处理数据、做出判断,这就会带来人为的误差,而且外围电路比较复杂,测量精度较低,分辨力不高,需进行数值校准;它们的体积较大、使用不够方便,更重要的是参数的设定需要有其它仪表的参与,外界设备多,成本高,并且参数的改变比较繁琐。
1.2、设计工作
本次课程设计中我们按照要求首先进行了查找资料。但是,只找到了两个类似的设计方案,而且它们也只是实现了部分功能,所以我们通过参考资料和所学的知识重新进行了设计。
通过本次课程设计,掌握已学习过的微型计算机(8086)或单片机(8051)汇编语言的编程与调试、相关重要可编程芯片的工作过程,加深对微型计算机工作原理的理解,并学会将所学的知识应用到实际中,达到在应用中掌握知识的目的。
二、总体电路设计框图
本次课程设计要求有两点:
1.以微机为主控制器设计制作一个信号波形变换电路。将信号发生器产生的正弦波信号采样后存入数据存储器中,然后通过D/A 转换将数字信号转换为正弦信号,并将两种正弦信号送入示波器进行比较。
2.电路中设置小键盘,从键盘输入数据改变采样频率和其他参数,观察输入、输出波形的变化。
根据要求和查找的资料我们确定了设计方案为输入的正弦波通过AD 转换电路,变成数字信号,将数据存储在AT89C51中,然后再通过DA 转换电路,输出正弦波和方波。原理框图如下:
图1:设计原理框图
三、硬件电路设计
此方案可以划分四个模块:AD 转换模块,DA 转换模块,单片机模块,反向器模块。
3.1 AD 转换模块
A/D 转换器的主要功能是将模拟信号转换成数字量。实现A/D 转换的方法很
AT89C51
DAC 0832
示 波 器
信号 发 生 器
按键开 关
ADC 0804
多,常用的有双积分式A/D转换器、逐次逼近式A/D转换器和并行比较式A/D 转换器等。
本次课程设计采用的是ADC0804,它是一个8位的A/D转换器,它的引脚图如下:
图2:ADC0804引脚图
ADC0804是属于连续渐进式(Successive Approximation Method)的A/D 转换器,这类型的A/D转换器除了转换速度快(几十至几百us)、分辨率高外,还有价钱便宜的优点,普遍被应用于微电脑的接口设计上。
它的主要电气特性如下:
工作电压:+5V,即VCC=+5V。
模拟输入电压范围:0~+5V,即0≤Vin≤+5V。
分辨率:8位,即分辨率为1/28=1/256,转换值介于0~255之间。
转换时间:100us(fCK=640KHz时)。
转换误差:±1LSB。
参考电压:2.5V,即Vref=2.5V。
ADC0804的转换原理
1. PIN1 (CS ):Chip Select,与RD、WR 接脚的输入电压高低一起判断读取或写入与否,当其为低位准(low) 时会active。
2. PIN2 ( RD ):Read。当CS 、RD 皆为低位准(low) 时,ADC0804 会将转换后的数字讯号经由DB7 ~ DB0 输出至其它处理单元。
3. PIN3 (WR ):启动转换的控制讯号。当CS 、WR 皆为低位准(low) 时ADC0804 做清除的动作,系统重置。当WR 由0→1且CS =0 时,ADC0804会开始转换信号,此时INTR 设定为高位准(high)。
4. PIN4、PIN19 (CLK IN、CLKR):频率输入/输出。频率输入可连接处理单元的讯号频率范围为100 kHz 至800 kHz。而频率输出频率最大值无法大于
640KHz,一般可选用外部或内部来提供频率。若在CLK R 及CLK IN 加上电阻及电容,则可产生ADC 工作所需的时序。
5. PIN5 ( INTR ):中断请求。转换期间为高位准(high),等到转换完毕时INTR 会变为低位准(low)告知其它的处理单元已转换完成,可读取数字数据。
6. PIN6、PIN7 (VIN(+)、VIN(-)):差动模拟讯号的输入端。输入电压VIN=VIN(+)-VIN(-),通常使用单端输入,而将VIN(-)接地。
7. PIN8 (A GND):模拟电压的接地端。
8. PIN9 (VREF∕2)∶模拟参考电压输入端。VREF 为模拟输入电压VIN 的上限值。若PIN9空接,则VIN 的上限值即为VCC。
9. PIN10 (D GND)∶数字电压的接地端。
10. PIN11 ~ PIN18 (DB7 ~ DB0)∶转换后之数字数据输出端。
11. PIN20 (Vcc)∶驱动电压输入端。
在本次课程设计中AD转换的电路图为:
图3:AD转换的电路图