五邑大学
单片机课程设计 告
题 目:波形发生器设计
院 系 信息学院
专 业 电子信息工程
学 3112001979
学生姓名 陈梓聪
指导教师 黄辉
波形发生器设计
摘要
关键词:低频信 发生器;单片机;D/A转换
一、设计要求
设计一个能产生正弦波、方波、三角波、梯形波、锯齿波的波形发生器。
二、实验目的
1、进行硬件电路设计。
2、编写程序,并进行程序测试。
3、利用单片机采用软件设计方法产生五种波形。
4、焊接电路,将程序下载到单片机,并用示波器对输出程序进行测试。
三、实验内容
1、工作原理:
数字信 可以通过数/模转换器转换成模拟信 ,因此可通过产生数字信 再转换成模拟信 的方法来获得所需要的波形。89C51单片机本身就是一个完整的微型计算机,具有组成微型计算机的各部分部件:中央处理器CPU、随机存取存储器RAM、只读存储器ROM、I/O接口电路、定时器/计数器以及串行通讯接口等,只要将89C51再配置键盘及、数模转换及波形输出、放大电路等部分,即可构成所需的波形发生器,其信 发生器构成系统框图如下图所示。
图(1)
89C51是整个波形发生器的核心部分,通过程序的编写和执行,产生各种各样的信 ,并从键盘接收数据,进行各种功能的转换。当数字信 电路到达转换电路,将其转换成模拟信 也就是所需要的输出波形。波形ROM表是将信 一个周期等间距地分离成128个点,储存在单片机得ROM内。
产生指定波形可以通过DAC来实现,不同波形产生实质上是对输出的二进制数字量进行相应改变来实现的。本题目中,方波信 是利用定时器中断产生的,每次中断时,将输出的信 按位反即可;三角波信 是将输出的二进制数字信 依次加1,达到0xff时依次减1,并实时将数字信 经D/A转换得到;锯齿波信 是将输出的二进制数字信 依次加1,达到0xff时置为0x00,并实时将数字信 经D/A转换得到的;
梯形波是将输出的二进制数字信 依次加1,达到0xff时保持一段时间,然后依次减1直至0x00,并实时将数字信 经D/A转换得到的;
正弦波是利用MATLAB将正弦曲线均匀取样后,得到等间隔时刻的y方向上的二进制数值,然后依次输出后经D/A转换得到。
2、设计功能
本方案有5个独立式按键。其中“S1” 键代表正弦波输出,“S2” 键代表三角波输出,“S3” 键代表方波输出,“S4” 键代表锯齿波输出,“S5” 键代表梯形波输出。
3、主控电路
设计中主要采用AT89C51型单片机,它具有如下优点:(1)拥有完善的外部扩展总线,通过这些总线可方便地扩展外围单元、外围接口等。(2)该单片机内部拥有4K字节的FLASH ROM程序存储器空间和256字节的RAM数据存储空间,完全可以满足程序的要求。由于该芯片可电可擦写,故可重复使用。如果更改程序内容,可将芯片拿下重新烧写。(3)该单片机与工业标准的MCS-51型机的指令集和输出引脚兼容。
AT89C51单处机内部设置两个16位可编程的定时器/计数器T0和T1,它们具有计数器方式和定时器方式两种工作方式及4种工作模式。在波形发生器中,将其作定时器使用,用它来精确地确定波形的两个采样点输出之间的延迟时间。模式1采用的是16位计数器,当T0或T1被允许计数后,从初值开始加计数,最高位产生溢出时向CPU请求中断。
中断系统是使处理器具有对外界异步事件的处理能力而设置的。当中央处理器CPU正在处理某件事的时候外界发生了紧急事件,要求CPU暂停当前的工作,转而去处理这个紧急事件。在波形发生器中,只用到片内定时器/计数器溢出时产生的中断请求,即是在AT89C51输出一个波形采样点信 后,接着启动定时器,在定时器未产生中断之前,AT89C51等待,直到定时器计时结束,产生中断请求, AT89C51响应中断,接着输出下一个采样点的信 ,如此循环产生所需要的信 波形。
主控电路图如图(2)所示,AT89C51从P1口接收来自键盘的信 。 89C51是片内有ROM/EPROM的单片机,因
文章知识点与官方知识档案匹配,可进一步学习相关知识C技能树文件文件的基本操作113540 人正在系统学习中 相关资源:聪聪识字(趣味儿童识字软件)V1.2.1.0中文官方安装版-其它代码类…
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!