资源描述:
《基于51单片机的 正弦信号发生器的设计》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、西安文理学院课程设计报告第一章系统设计经过考虑,我们确定方案如下:利用AT89S52单片机采用程序设计方法产生锯齿波、正弦波、矩形波三种波形,再通过D/A转换器DAC0832将数字信号转换成模拟信号,滤波放大,最终由示波器显示出来,通过键盘来控制三种波形的类型选择、频率变化,最终输出显示其各自的类型以及数值。1.1设计要求1)、利用单片机采用软件设计方法产生三种波型2)、三种波形可通过键盘选择 3)、波形频率可调4)、需显示波形的种类及其平率 1.2方案设计与论 1.2.1 信号发生电路方案论证方
2、案一:通过单片机控制D/A,此方案电路简单、成本低。方案二:使用传统的锁相频率合成方法。通过芯片IC145152,压控振荡器搭接的锁相环电路输出稳定性极好的正弦波,再利用过零比较器转换成方波,积分电路转换成三角波。此方案,电路复杂,干扰因素多,不易实现。方案三:利用MAX038芯片组成的电路输出波形。MAX038是精密高频波形产生电路,能够产生准确的三角波、方波和正弦波三种周期性波形。但此方案成本高,程序复杂度高。以上三种方案综合考虑,选择方案一。1.3总体系统设计该系统采用单片机作为数据处理及控制核
3、心,由单片机完成人机界面、系统控制、信号的采集分析以及信号的处理和变换,采用按键输入,利用液晶显示电第18页西安文理学院课程设计报告路输出数字显示的方案。将设计任务分解为按键电路、液晶显示电路等块。图(1)为系统的总体框图图(1)总体方块图1.4硬件实现及单元电路设计 1.4.1单片机最小系统的设计 89C51是片内有ROM/EPROM的单片机,因此,这种芯片构成的最小系统简单﹑可靠。用80C51单片机构成最小应用系统时,只要将单片机接上时钟电路和复位电路即可,如图(2) 89C51单片机最小系统所
4、示。由于集成度的限制,最小应用系统只能用作一些小型的控制单元。其应用特点: (1) 有可供用户使用的大量I/O口线。 (2) 内部存储器容量有限。(3) 应用系统开发具有特殊性。第18页西安文理学院课程设计报告图(2) 89C51单片机最小系统1.4.2 波形产生模块设计 由单片机采用编程方法产生三种波形、通过DA转换模块DAC0832在进过滤波放大之后输出。其电路图如下:图(3)DA转换第18页西安文理学院课程设计报告图(4)DAC0832的内部结构1.4.3 显示模块的设计 通过液晶1602显示
5、输出的波形、频率,其电路图如下:图(5)液晶显示第18页西安文理学院课程设计报告图(6)八位二进制图(7)幅度调节如上图所示,1602的八位数据端接单片机的P1口,其三个使能端RS、RW、E分别接单片机的P3.2—P3.4。通过软件控制液晶屏可以显示波形的种类以及波形的频率。1.5 软件设计流程 本系统采用AT89S52单片机,用编程的方法来产生三种波形,并通过编程 来切换三种波形以及波形频率的改变。 具体功能有:(1)各个波形的切换;(2)各种参数的设定;(3)频率增减等。 软件调通后,通过编程器下
6、载到AT89S52芯片中,然后插到系统中即可独立完成所有的控制。软件的流程图如下: 第18页西安文理学院课程设计报告图(8)程序流程图 1.6源程序ORG0000HLJMPMAINORG0100HMAIN:JNBP1.0,P10JNBP1.1,P11JNBP1.2,P12JNBP1.3,P13LJMPMAINP10:MOVR7,#00HLCALLSQULJMPMAIN第18页西安文理学院课程设计报告P11:MOVR7,#01HLCALLSAWLJMPMAINP12:MOVR7,#02HLCALLTRI
7、LJMPMAINP13:MOVR7,#03HLCALLSINLJMPMAINSQU:JNBP1.1,N1JNBP1.2,N2JNBP1.3,N3LJMPSSQUN1:MOVR7,#01HLJMPTC0N2:MOVR7,#02HLJMPTC0N3:MOVR7,#03HLJMPTC0SSQU:CJNER7,#00H,TC0MOVR0,#00H;MOVDPTR,#7FFFHK00:;MOVA,#0FFH;MOVX@DPTR,AMOVP0,#0FFHMOVP2,#0FFH第18页西安文理学院课程设计报告MOV
8、A,P2CPLAMOVR3,AL00:DECR3CJNER3,#255,L00INCR0INCR0CJNER0,#254,K00MOVR0,#00HK01:;MOVA,#00H;MOVX@DPTR,AMOVP0,#00HMOVP2,#0FFHMOVA,P2CPLAMOVR3,AL01:DECR3CJNER3,#255,L01INCR0INCR0CJNER0,#254,K01LJMPSQUTC0:RETSAW:JNBP1.0,N4JNBP1.2,N5JNB