51单片机-波形发生器
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
单片机课程设计报告
题目波形发生器
专业电子信息科学与技术
班级 2008级1班
学生姓名 *****
学号 **********
指导老师 *****
2011年 7 月 8 日
目录
一、设计目的……………………………………………………错误!未定义书签。
二、设计的主要内容和要求……………………………………错误!未定义书签。
2.1基本内容和要求…………………………………………………………错误!未定义书签。
2.2创新部分…………………………………………………………………错误!未定义书签。
三、整体设计思路………………………………………………错误!未定义书签。
3.1设计思路…………………………………………………………………错误!未定义书签。
3.2元件选型…………………………………………………………………错误!未定义书签。
3.3功能原理图………………………………………………………………错误!未定义书签。
四、方案论证…………………………………………………… - 3 -
五、硬件电路设计……………………………………………… - 4 -
5.1硬件连线图………………………………………………………………错误!未定义书签。
5.2主要芯片介绍……………………………………………………………错误!未定义书签。
六、软件设计………………………………………………………错误!未定义书签。
6.1正弦波的产生过程………………………………………………………错误!未定义书签。
6.2方波产生过程……………………………………………………………错误!未
定义书签。
6.3锯齿波的产生过程……………………………………………………错误!未定义书签。
6.4三角波的产生过程……………………………………………………错误!未定义书签。
6.5通过开关实现波形切换和调频…………………………………………错误!未定义书签。
6.7附程序代码………………………………………………………………错误!未定义书签。
七、调试与仿真……………………………………………………错误!未定义书签。
八、总结……………………………………………………………错误!未定义书签。
九、参考文献……………………………………………………错误!未定义书签。
波形发生器
一、设计目的
(1)利用所学单片机机的理论知识进行软硬件整体设计,锻炼学生理论联系实际、提高我们的综合应用能力。
(2)我们这次的课程设计是以单片机为基础,设计并开发能输出多种波形(正弦波、三角波、锯齿波、方波、梯形波等)且频率、幅度可变的波形发生器。
(3)掌握各个接口芯片(如0832等)的功能特性及接口方法,并能运用其实现一个简单的单片机应用系统功能器件。
(4)在平时的学习中,我们所学的知识大都是课本上的,在机房的练习大家也都是分散的对各个章节的内容进行练习。因此,缺乏一种系统的设计锻炼。在课程所学结束以后,这样的课程设计十分有助于学生的知识系统的总结到一起。
(5)通过这几个波形进行组合形成了一个波形发生器,使得我对系统的整个框架的设计有了一个很好的锻炼。这不仅有助于大家找到自己感兴趣的题目,更可以
锻炼大家单片机知识的应用。
二、设计的主要内容和要求
1.1基本内容和要求
(1)设计一款能够产生3种波形的波形发生器;
(2)设计波形选择按钮;
(3)LED或LCD显示波形代号(如:1为正弦波,2为方波,3为锯齿波,4为三角波);
(4)其他功能(创新部分)。
1.2创新部分
(1)波形频率调节;
(2)波形幅值调节;
(3)方波占空比调节;
(4)滤波。
三、整体设计思路
3.1设计思路
1、课设需要各个波形的基本输出。如输出正弦波、方波、锯齿波、三角波。
这些波形的实现的具体步骤:
(1)正弦波:通过手动的方法计算出输出各点的电压值,然后在编写程序时以数组的方式给出。当需要时,只要按照顺序进行输出即可。这种方法比在软件中计算速度快且曲线的形状修改灵活。在本设计中将一个周期(360度)分为256个点,则每两个点之间的间隔为1.4度,然后计算出每个点电压对应的数字量,形成数组。只要反复输出这组数据到DAC0832,就可以在系统输出端得到想要的正弦波。
(2)方波:按照设定的周期值将输出的电压改变即可。
(3)锯齿波:也使用查表法。将三角波的一个周期(360度)分为256个点,相邻点等差,生成数组。反复输出前128个数据到DAC0832,就可以在系统输出端得到想要的锯齿波。
(4)三角波:将(3)中的数组256个数据全部输出到DAC0832,循环,就可以在系统输出端得到想要的三角波。
2、通过P1口和轻触开关S1-S4相连接来切换波形输出(如按S1键输出正弦波,按S2键产生方波,按S3键产生锯齿波,按S4键产生三角波)。用P0口控制数码管静态显示波形代号。用P2口向DAC0832发送数据,经DAC0832转换后,再把信号放大,最后接到示波器上显示。
3.2元件选型
单片机AT89S52系统,DAC0832一片,PC机一台,运算放大器。
3.3功能原理图
四、方案论证
波形发生器的实现方法通常有以下几种:
方案1:用分立元件组成的波形发生器:通常是单函数发生器且频率不高,其工作不很稳定,不易调试。
方案2:可以由晶体管、运放IC等通用器件制作,更多的则是用专门的函数信号发生器IC产生。早期的函数信号发生器IC,如L8038、BA205、XR2207/2209等,它们的功能较少,精度不高,频率上限只有300kHz,无法产生更高频率的信号,调节方式也不够灵活,频率和占空比不能独立调节,二者互相影响。
方案3:利用专用直接数字合成DDS芯片的波形发生器:能产生任意波形并达到很高的频率。但成本较高。
方案4:采用AT89S52单片机和DAC0832芯片,直接连接键盘和显示。该种方案主要对AT89S52单片机的各个I/O口充分利用。P1口是连接键盘, P0口接显示电路,P2口连接DAC0832输出波形。这样总体来说,能对单片机各个接口都利用上,而不在多用其它芯片,从而减小了系统的成本。也对按照系统便携式低频信号发生器的要求所完成。占用空间小,使用芯片少,低功耗。
综合考虑,方案4各项性能和指标都优于其他几种方案,能使输出频率有较好的稳定性,充分体现了模块化设计的要求,而且这些芯片及器件均为通用器件,在市场上较常见,价格也低廉,样品制作成功的可能性比较大,所以本设计采用方案4。
五、硬件电路设计
5.1 电路连线图
通过P1.0-P1.3口和轻触开关S1-S4相连接来切换波形输出(如按S1键输出正弦波,按S2键产生方波,按S3键产生锯齿波,按S4键产生三角波),P1.4、P1.5接方波占空比调节开关,P1.6、P1.7接波形频率调节开关,如图2 所示。用P0口