基于单片机的函数信号发生器课程设计(毕业设计)完整版.
基于单片机的函数信号发生器设的正文

┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊目录第一章绪论 (1)第二章方案设计与论证 (4)2.1方案一: (4)2.2方案二: (4)2.3方案比较 (4)第三章专用器件说明 (6)3.1 SPCE061单片机介绍 (6)3.1.1性能: (6)3.1.2 应用领域 (6)3.1.3 结构概览 (7)3.1.4通用I/O口的使用: (7)3.1.5 D/A转换 (8)3.1.6 IDE开发平台的使用 (9)3.1.7 PWM输出 (10)3.1.8 SPCE061A的时钟和定时器/计数器 (10)3.2 DM-1602显示器 (14)3.3 运算放大电路 (16)3.3.1 集成运放的电路结构和特点 (16)3.3.2 集成运放电路的组成及各部分的作用 (16)3.3.3 运算放大器电压传输特性 (17)3.3.4集成运放的主要性能指标 (18)第四章系统的硬件电路设计 (19)4.1系统框图 (19)4.2 SPCE061A基本工作电路设计 (19)4.3键盘电路设计 (20)4.4显示电路设计 (21)4.4信号输出电路设计 (22)第五章软件设计 (22)5.1主程序流程图 (22)5.2正弦波信号形成方法 (25)5.3三角波、锯齿波的形成 (26)5.4方波的形成和实现 (26)总结 (27)致谢 (28)参考文献 (29)附录1 程序 (29)第一章绪论测量仪器从宏观上可分为两大类,即激励和检测,激励仪器主要是各类信号发生器。
信号发生器按工作原理可分为:调谐信号发生器、锁相和合成信号发生器。
(1) 调谐信号发生器是由调谐振荡器构成。
传统调谐信号发生器都是由调谐振荡器和统调的调幅放大器(输出放大器)加上一些指示电路构成。
这种信号发生器结构复杂、频率范围窄,而且可靠性、稳定性较差,但其价格低廉。
随着半导体器件的发展,其性能有所改善。
(2) 锁相信号发生器是由调谐振荡器通过锁相的方法获得输出信号频率的信号发┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊生器。
毕业设计基于单片机的函数信号发生器

目录1 绪论 (5)1.1 选题背景及意义 (5)1.1.1 本课题的研究现状 (5)1.1.2 选题目的及意义 (6)1.2 设计任务及要求 (6)1.2.1 设计的基本要求 (7)1.2.2 本文结构安排 (7)2 函数发生器系统设计 (8)2.1 设计方案的比较 (8)2.2 系统模块设计 (9)2.2.1 控制模块: (9)2.2.2 按键及其显示模块: (9)2.2.3 波形产生模块 (9)2.2.4 D/A转换 (10)2.3 系统总体框图 (12)2.4 理论分析 (12)2.4.1 电路的理论计算 (12)2.4.2 波形产生相关理论 (15)2.5 单片机软件开发系统 (15)3 系统硬件电路的设计 (17)3.1 单片机最小系统 (17)3.2 单片机的接口电路 (18)3.3 幅度控制模块 (23)3.3.1 单片机与DAC0832的接口 (23)3.3. 2DAC0832与运放的连接 (23)4 系统软件设计 (26)4.1 系统软件设计方案 (26)4.2 系统软件流程图 (26)4.3 信号产生程序 (27)4.3.1 正弦波产生 (28)4.3.2 三角波产生 (28)4.3.2 方波产生 (29)4.3.4 锯齿波的产生 (30)5 系统调试与测试 (32)5.1 调试 (32)5.2 测试 (35)6 结论与展望 (38)6.1 结论 (38)6.2 展望 (38)致谢 (39)参考文献 (51)附录 (40)附录一系统软件部分源程序 (40)附录二系统原理图 (49)附录三系统PCB图 (50)基于单片机的波形发生器的设计学生:李利刚指导老师:李敏(黄冈职业技术学院)摘要:函数发生器是一种用于产生标准信号的电子仪器,它广泛用于工业生产、科研和国防等各个领域中,所以论文选题具有一定的实用意义。
本文介在绍了函数发生器的基本概念及原理的基础上,采用AT89C51单片机为核心,完成了简易的DDS函数发生器的硬件设计和软件编程,并通过调试实现了其功能和主要技术指标。
基于单片机的函数信号发生器设计设计

基于单片机的函数信号发生器设计设计基于单片机的函数信号发生器是一种能够产生各种波形信号的电子设备。
它利用单片机控制并产生不同频率、幅度和相位的信号,可以应用于实验室教学、科研实验、电子设备测试等领域。
本文将详细介绍基于单片机的函数信号发生器的设计原理、硬件实现、软件设计和功能实现等方面。
设计原理函数信号发生器的基本原理是使用振荡电路产生基准信号,再通过放大和滤波电路得到所需频率和幅度的信号。
传统的信号发生器采用模拟电路实现,如RC振荡器和多谐振荡器等。
而基于单片机的信号发生器则利用单片机高度集成的特点,通过软件控制实现信号的产生。
硬件实现振荡电路可以采用单片机内部的定时器/计数器模块来实现。
通过合理设置定时器的工作模式、时钟频率和计数值,可以产生所需的频率信号。
放大和滤波电路用于将振荡电路产生的小幅度信号放大到所需的幅度,并进行滤波处理,消除杂散和谐波。
AD转换电路用于将模拟信号转换为数字信号,以供单片机进行处理和输出。
可以采用单片机内部的ADC模块或外部的ADC芯片来实现。
软件设计单片机的驱动程序用于初始化相关外设,如定时器、IO口和ADC等,并提供相应的读写函数接口。
信号发生器的控制程序通过设置定时器的工作模式和时序控制,生成不同频率和波形的信号。
通过ADC转换获得外部设置的幅度参数,并通过PWM输出产生所需的幅度信号。
功能实现波形选择功能通过软件控制输出不同类型的波形信号,如正弦波、方波、三角波、锯齿波等。
频率调节功能通过改变定时器的工作模式和时钟频率,实现信号频率的调节。
可以设置不同的频率范围和分辨率,满足不同应用的需求。
幅度调节功能通过ADC转换获取外部设置的幅度参数,并通过PWM输出产生所需的幅度信号。
可以设置不同的幅度范围和分辨率,实现信号幅度的调节。
相位调节功能通过改变定时器的时序控制,实现信号相位的调节。
可以设置不同的相位范围和分辨率,满足不同实验或测试的需求。
总结基于单片机的函数信号发生器是一种功能强大、灵活性高的电子设备。
基于单片机的信号发生器(完整电路,程序)

电子和信息工程学院综合实验课程报告实验名称:基于单片机的信号发生器的设计和实现班级:200808XX学号:200808XXXX姓名:何XX指导教师:安XX时间:2011-5-4至2011-5-11摘要本文以STC89C51单片机为核心设计了一个低频函数信号发生器。
信号发生器采用数字波形合成技术,通过硬件电路和软件程序相结合,可输出自定义波形,如正弦波、方波、三角波、三角波、梯形波及其他任意波形,波形的频率和幅度在一定范围内可任意改变。
波形和频率的改变通过软件控制,幅度的改变通过硬件实现。
介绍了波形的生成原理、硬件电路和软件部分的设计原理。
本系统可以产生最高频率798.6HZ的波形。
该信号发生器具有体积小、价格低、性能稳定、功能齐全的优点。
关键词:低频信号发生器;单片机;D /A转换;1设计选题及任务设计题目:基于单片机的信号发生器的设计和实现任务和要求:设计一个由单片机控制的信号发生器。
运用单片机系统控制产生多种波形,这些波形包括方波、三角波、锯齿波、正弦波等。
信号发生器所产生的波形的频率、幅度均可调节。
并可通过软件任意改变信号的波形。
基本要求:1. 产生三种以上波形。
如正弦波、三角波、矩形波等。
2.最大频率不低于500Hz。
并且频率可按一定规律调节,如周期按1T,2T,3T,4T或1T,2T,4T,8T变化。
3.幅度可调,峰峰值在0——5V之间变化。
扩展要求:产生更多的频率和波形。
2系统概述2.1方案论证和比较2.1.1总体方案:方案一:采用模拟电路搭建函数信号发生器,它可以同时产生方波、三角波、正弦波。
但是这种模块产生的不能产生任意的波形(例如梯形波),并且频率调节很不方便。
方案二:采用锁相式频率合成器,利用锁相环,将压控振荡器(VCO)的输出频率锁定在所需频率上,该方案性能良好,但难以达到输出频率覆盖系数的要求,且电路复杂。
方案三:使用集成信号发生器发生芯片,例如AD9854,它可以生成最高几十MHZ的波形。
基于单片机的函数信号发生器毕业设计完整版

源程序:ORG 0000HAJM MAINORG 000BHLJMP TC0ORG 0030HMAIN:MOV DPTR,#9FFFH 指向DAC0832(1)MOV A,70HMOVX @DPTR,A DAC0832(1)输出MOV DPTR,#7F00H 指向8155命令字端口地址MOV A,#06H 设置A口为输入,B口、C口为输出MOVX @DPTR,A 送命令字MOV DPTR,#7F01H 指向A口地址MOVX A,@DPTR 读入A口的开关数据JNB ACC.4,K10H 判断是否“4”号键,若是则转输出10Hz信号JNB ACC.5,K100H 判断是否“5”号键,若是则转输出100Hz信号JNB ACC.6,K500H 判断是否“6”号键,若是则转输出500Hz信号JNB ACC.7,K1K 判断是否“7”号键,若是则转输出1KHz信号AJMP MAINLED1:MOV R3,#06H 设置6个LED显示MOV R2,#01H 选通第一位LED数据MOV R1,#30H 送显示缓冲区首址GN1:MOV DPTR,#7F03H 指向C口地址MOV A,R2 位选通数据送AMOVX @DPTR,A 位选通数据送C口RL A 选通下一位MOV R2,A 位选通数据送R2中保存MOV A,@R1 取键值MOV DPTR,#TAB 送LED显示软件译码表首址MOVC A,@A+DPTR 查表求出键值显示的段码MOV DPTR,#7F02H 指向B口地址MOV @DPTR,A 段码送显示LCALL LOOP1 调延时子程序INC R1 指向下一位显示缓冲区地址DJNZ R3,GN1 循环显示6个LEDRETLOOP1:MOV R4,#08H 延时子程序LOOP:MOV R5,#0A0HDJNZ R5,$DJNZ R4,LOOPRETK10H:MOV 30H,#00H 显示10HzMOV 31H,#00HMOV 32H,#00HMOV 33H,#00HMOV 34H,#01HMOV 35H,#00HLCALL LED1 调显示子程序MOV TMOD,#00HMOV TL0,#15HMOV TH0,#9EHAJMP PDK100H:MOV 30H,#00H 显示100HzMOV 31H,#00HMOV 32H,#00HMOV 33H,#01HMOV 34H,#00HMOV 35H,#00HLCALL LED1 调显示子程序MOV TMOD,#00HMOV TL0,#08HMOV TH0,#0F6HAJMP PDK500H:MOV 30H,#00H 显示500HzMOV 31H,#00HMOV 32H,#00HMOV 33H,#05HMOV 34H,#00HMOV 35H,#00HLCALL LED1 调显示子程序MOV TMOD,#00HMOV TL0,#01HMOV TH0,#0FEHAJMP PDK1K:MOV 30H,#00H 显示1KHzMOV 31H,#00HMOV 32H,#01HMOV 33H,#00HMOV 34H,#00HMOV 35H,#00HLCALL LED1 调显示子程序MOV TMOD,#00HMOV TL0,#01HMOV TH0,#0FFHPD:JNB ACC.0,KE0 判断是否“0”号键按下,若是则转方波输出JNB ACC.1,KE1 判断是否“1”号键按下,若是则转正弦方波输出JNB ACC.2,KE2 判断是否“2”号键按下,若是则转三角波输出JNB ACC.3,KE3 判断是否“3”号键按下,若是则转锯齿波输出LJMP PDKE0:MOV R7,#00HLCALL LED1 调显示子程序MOV R6,#00HAJMP GNKE1:MOV R7,#02HLCALL LED1 调显示子程序MOV R6,#00HAJMP GNKE2:MOV R7,#02HLCALL LED1 调显示子程序MOV R6,#00HAJMP GNKE3:MOV R7,#02HLCALL LED1 调显示子程序MOV R6,#00HGN:SETB TR0SETB ET0SETB EALOP1:JNB ACC.4,K10H 判断是否“4”号键,若是则转输出10Hz信号JNB ACC.5,K100H 判断是否“5”号键,若是则转输出100Hz信号JNB ACC.6,K500H 判断是否“6”号键,若是则转输出500Hz信号JNB ACC.7,K1K 判断是否“7”号键,若是则转输出1KHz信号AJMP LOP1TC0:CJNE R7,#00H,TC1 发送方波程序MOV DPTR,#TAB1 送方波数据表首址MOV A,R6 发送数据寄存器MOVC A,@A+DPTRMOV DPTR,#0AFFFH 指向DAC0832(2)MOVX @DPTR,A DAC0832(2)输出MOV A,R6INC ACJNE A,#32,QL1MOV R6,#00HAJMP QL1TC1:CJNE R7,#01H,TC2 发送正弦波程序MOV DPTR,#TAB2 送正弦波数据表首址MOV A,R6MOVC A,@A+DPTRMOV DPTR,#0AFFFH 指向DAC0832(2)MOVX @DPTR,A DAC0832(2)输出MOV A,R6INC AMOV R6,ACJNE A,#32,QL1MOV R6,#00HAJMP QL1TC2:CJNE R7,#02H,QL1 发送三角波程序MOV DPTR,#TAB3 送三角波数据表首址MOV A,R6MOVC A,@A+DPTRMOV DPTR,#0AFFFH 指向DAC0832(2)MOVX @DPTR,A DAC0832(2)输出MOV A,R6INC AMOV R6,ACJNE A,#32,QL1MOV R6,#00HAJMP QL1TC3::CJNE R7,#03H,QL1 发送锯齿波程序MOV DPTR,#TAB4 送锯齿波数据表首址MOVC A,@A+DPTRMOV DPTR,#0AFFFH 指向DAC0832(2)MOVX @DPTR,A DAC0832(2)输出MOV A,R6INC AMOV R6,ACJNE A,#32,QL1MOV R6,#00HQL1:RETITAB:DB 0C0H,0F9H,0A4H,0B0H,99H,82H,0F8H,80HTAB1:DB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH DB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFHDB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFHDB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFHDB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFHDB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFHDB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFHDB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFHDB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFHDB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFHDB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFHDB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFHDB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFHDB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFHDB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFHDB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFHDB 00H,00H,00H,00H,00H,00H,00H,00HDB 00H,00H,00H,00H,00H,00H,00H,00HDB 00H,00H,00H,00H,00H,00H,00H,00HDB 00H,00H,00H,00H,00H,00H,00H,00HDB 00H,00H,00H,00H,00H,00H,00H,00HDB 00H,00H,00H,00H,00H,00H,00H,00HDB 00H,00H,00H,00H,00H,00H,00H,00HDB 00H,00H,00H,00H,00H,00H,00H,00HDB 00H,00H,00H,00H,00H,00H,00H,00HDB 00H,00H,00H,00H,00H,00H,00H,00HDB 00H,00H,00H,00H,00H,00H,00H,00HDB 00H,00H,00H,00H,00H,00H,00H,00HDB 00H,00H,00H,00H,00H,00H,00H,00HDB 00H,00H,00H,00H,00H,00H,00H,00HDB 00H,00H,00H,00H,00H,00H,00H,00HDB 00H,00H,00H,00H,00H,00H,00H,00HTAB2:DB 80H,83H,86H,89H,8DH,90H,93H,96HDB 99H,9CH,9FH,0A2H,0A5H,0A8H,0ABH,0AEHDB 0B1H,0B4H,0B7H,0BAH,0BCH,0BFH,0C2H,0C5HDB 0C7H,0CAH,0CCH,0CFH,0D1H,0D4H,0D6H,0D8HDB 0DAH,0DDH,0DFH,0E1H,0E3H,0E5H,0E7H,0E9HDB 0EAH,0ECH,0EEH,0EFH,0F1H,0F2H,0F4H,0F5HDB 0F6H,0F7H,0F8H,0F9H,0FAH,0FBH,0FCH,0FDHDB 0FDH,0FEH,0FFH,0FFH,0FFH,0FFH,0FFH,0FFHDB 0FFH,0FFH,0FFH,0FFH,0FFH,0FFH,0FEH,0FDHDB 0FDH,0FCH,0FBH,0FAH,0F9H,0F8H,0F7H,0F6HDB 0F5H,0F4H,0F2H,0F1H,0EFH,0EEH,0ECH,0EAHDB 0E9H,0E7H,0E5H,0E3H,0E1H,0DEH,0DDH,0DAHDB 0D8H,0D6H,0D4H,0D1H,0CFH,0CCH,0CAH,0C7HDB 0C5H,0C2H,0BFH,0BCH,0BAH,0B7H,0B4H,0B1HDB 0AEH,0ABH,0A8H,0A5H,0A2H,9FH,9CH,99HDB 96H,93H,90H,8DH,89H,86H,83H,80HDB 80H,7CH,79H,78H,72H,6FH,6CH,69HDB 66H,63H,60H,5DH,5AH,57H,55H,51HDB 4EH,4CH,48H,45H,43H,40H,3DH,3AHDB 38H,35H,33H,30H,2EH,2BH,29H,27HDB 25H,22H,20H,1EH,1CH,1AH,18H,16HDB 15H,13H,11H,10H,0EH,0DH,0BH,0AHDB 09H,08H,07H,06H,05H,04H,03H,02HDB 02H,01H,00H,00H,00H,00H,00H,00HDB 00H,00H,00H,00H,00H,00H,01H,02HDB 02H,03H,04H,05H,06H,07H,08H,09HDB 0AH,0BH,0DH,0EH,10H,11H,13H,15HDB 16H,18H,1AH,1CH,1EH,20H,22H,25HDB 27H,29H,2BH,2EH,30H,33H,35H,38HDB 3AH,3DH,40H,43H,45H,48H,4CH,4EHDB 51H,55H,57H,5AH,5DH,60H,63H,66HDB 69H,6CH,6FH,72H,76H,79H,7CH,80H TAB3:DB 00H,02H,04H,06H,08H,0AH,0CH,0EHDB 10H,12H,14H,16H,18H,1AH,1CH,1EHDB 20H,22H,24H,26H,28H,2AH,2CH,2EHDB 30H,32H,34H,36H,38H,3AH,3CH,3EHDB 40H,42H,44H,46H,48H,4AH,4CH,4EHDB 50H,52H,54H,56H,58H,5AH,5CH,5EHDB 60H,62H,64H,66H,68H,6AH,6CH,6EHDB 70H,72H,74H,76H,78H,7AH,7CH,7EHDB 80H,82H,84H,86H,88H,8AH,8CH,8EHDB 0A0H,0A2H,0A4H,0A6H,0A8H,0AAH,0ACH,0AEHDB 0B0H,0B2H,0B4H,0B6H,0B8H,0BAH,0BCH,0BEHDB 0C0H,0C2H,0C4H,0C6H,0C8H,0CAH,0CCH,0CEHDB 0D0H,0D2H,0D4H,0D6H,0D8H,0DAH,0DCH,0DEHDB 0E0H,0E2H,0E4H,0E6H,0E8H,0EAH,0ECH,0EEHDB 0F0H,0F2H,0F4H,0F6H,0F8H,0FAH,0FCH,0FEHDB 0FFH,0FEH,0FCH,0FAH,0F8H,0F6H,0F4H,0F2HDB 0F0H,0EEH,0ECH,0EAH,0E8H,0E6H,0E4H,0E2HDB 0E0H,0DEH,0DCH,0DAH,0D8H,0D6H,0D4H,0D2HDB 0D0H,0CEH,0CCH,0CAH,0C8H,0C6H,0C4H,0C2HDB 0C0H,0BEH,0BCH,0BAH,0B8H,0B6H,0B4H,0B2HDB 0B0H,0AEH,0ACH,0AAH,0A8H,0A6H,0A4H,0A2HDB 0A0H,09EH,9CH,9AH,98H,96H,94H,92HDB 90H,8EH,8CH,8AH,88H,86H,84H,82HDB 80H,7EH,7CH,7AH,78H,76H,74H,72HDB 70H,6EH,6CH,6AH,68H,66H,64H,62HDB 60H,5EH,5CH,5AH,58H,56H,54H,52HDB 50H,4EH,4CH,4AH,48H,46H,44H,42HDB 40H,3EH,3CH,3AH,38H,36H,34H,32HDB 30H,2EH,2CH,2AH,28H,26H,24H,22HDB 20H,1EH,1CH,1AH,18H,16H,14H,12HDB 10H,0EH,0CH,0AH,08H,06H,04H,02HTAB4:DB 00H,01H,02H,03H,04H,05H,06H,07HDB 08H,09H,0AH,0BH,0CH,0DH,0EH,0FHDB 10H,11H,12H,13H,14H,15H,16H,17HDB 18H,19H,1AH,1BH,1CH,1DH,1EH,1FHDB 20H,21H,22H,23H,24H,25H,26H,27HDB 28H,29H,2AH,2BH,2CH,2DH,2EH,2FHDB 30H,31H,32H,33H,34H,35H,36H,37HDB 38H,39H,3AH,3BH,3CH,3DH,3EH,3FHDB 40H,41H,42H,43H,44H,45H,46H,47HDB 48H,49H,4AH,4BH,4CH,4DH,4EH,4FHDB 50H,51H,52H,53H,54H,55H,56H,57HDB 58H,59H,5AH,5BH,5CH,5DH,5EH,5FHDB 60H,61H,62H,63H,64H,65H,66H,67HDB 68H,69H,6AH,6BH,6CH,6DH,6EH,6FHDB 70H,71H,72H,73H,74H,75H,76H,77HDB 78H,79H,7AH,7BH,7CH,7DH,7EH,7FHDB 80H,81H,82H,83H,84H,85H,86H,87HDB 88H,89H,8AH,8BH,8CH,8DH,8EH,8FHDB 90H,91H,92H,93H,94H,95H,96H,97HDB 98H,99H,9AH,9BH,9CH,9DH,9EH,9FHDB 0A0H,0A1H,0A2H,0A3H,0A4H,0A5H,0A6H,0A7HDB 0A8H,0A9H,0AAH,0ABH,0ACH,0ADH,0AEH,0AFHDB 0B0H,0B1H,0B2H,0B3H,0B4H,0B5H,0B6H,0B7HDB 0B8H,0B9H,0BAH,0BBH,0BCH,0BDH,0BEH,0BFHDB 0C0H,0C1H,0C2H,0C3H,0C4H,0C5H,0C6H,0C7HDB 0C8H,0C9H,0CAH,0CBH,0CCH,0CDH,0CEH,0CFHDB 0D0H,0D1H,0D2H,0D3H,0D4H,0D5H,0D6H,0D7HDB 0D8H,0D9H,0DAH,0DBH,0DCH,0DDH,0DEH,0DFHDB 0E0H,0E1H,0E2H,0E3H,0E4H,0E5H,0E6H,0E7HDB 0E8H,0E9H,0EAH,0EBH,0ECH,0EDH,0EEH,0EFHDB 0F0H,0F1H,0F2H,0F3H,0F4H,0F5H,0F6H,0F7HDB 0F8H,0F9H,0FAH,0FBH,0FCH,0FDH,0FEH,0FFH END。
毕业设计--基于AT89S51单片机的数字信号发生器

基于AT89S51单片机的数字信号发生器【摘要】智能仪器的出现,极大地扩充了传统仪器的应用范围。
智能仪器凭借其体积小、功能强、功耗低等优势,迅速地在家用电器、科研单位和工业企业中得到了广泛的应用。
本系统是基于AT89S51单片机设计的数字式波形发生器。
采用AT89S51作为系统的控制核心,外围电路采用数字/模拟转换电路(DAC0832),运放电路(MC1458),按键,ISP接口等。
通过按键控制切换产生正弦波,锯齿波,三角波,方波,各类型信号的频率统一为100HZ,而幅值在-5V~+5V范围内可调。
本设计电路原理简单,性能较好,具有一定的实用性和参考价值。
【关键词】单片机 ,波形发生器,D/A电路DIGITAL SIGNAL GENERATOR DESIGN BASED ON AT89S51【ABSTRACT】The emergence of intelligent machines, which greatly expanded the scope of application of traditional instruments. Intelligent instrument, with its small size, powerful, low-power advantages of home appliances quickly, research institutes and industrial enterprises has been widely used.The system is a digital waveform generator based on single chip computer. AT89S51 is used as a control core. The system is composed by digital/analog conversion (DAC0832),imply circuit (MC1458),button ISP inferface and LED lights. It can generate square triangle and sine wave,with LED display .The frequency of various types of signal unity of 100HZ, but the amplitude in the-5V ~ +5 V range adjustable. The circuit design is simple, better performance, has some practical and reference value.【KEY WORDS】the single chip computer , the signal generator , D/A conversion目录绪论 (9)1. 波形发生器现状 (9)2. 单片机在波形发生器中的运用 (9)第一章系统设计 (10)1. 系统要求 (11)2. 系统方案选择与论证 (11)3. 系统设计原理与思路 (11)第二章硬件电路的设计 (12)1. AT89S51的介绍 (12)2. 资源分配 (15)3. 最小单片机系统的设计 (15)4. 各模块电路的设计 (17)5. ISP接口 (23)第三章软件设计 (24)1. 主程序的设计 (25)2. 锯齿波程序的设计 (25)3. 三角波程序的设计 (26)4. 正弦波程序的设计 (27)5. 方波程序的设计 (28)第四章测试仿真 (29)1. 软件仿真 (29)2. 仿真结论分析 (30)3. 硬件测试结论分析 (31)绪论1.波形发生器现状波形发生器作为一种常用的应用电子仪器设备,传统的波形发生器可以完全用硬件电路搭建,如应用555振荡电路可以产生正弦波,三角波,方波等波形,传统的波形发生器多采用这种方式设计,这种方式不应用单片机,但是这种方式存在波形质量差,控制难,可调范围小,电路复杂和体积大等缺点,在科学研究和生产实践中,如工业过程控制,生物医学,地震模拟震动等领域往往需要低频信号源,而由硬件搭建的波形发生器效果往往达不到好的效果,而且低频信号源所需要的RC很大,大电阻,大电容在制作上有困难,参数的精度也难以保证,而且体积大,漏电,体积大是该类波形发生器的显著缺点。
基于单片机的信号发生器设计(终稿)

年月日
I
目录
1 题目分析...................................................................................................................................... 1 1.1 信号发生器的背景和意义............................................................................................... 1 1.2 信号发生器的发展现状................................................................................................... 1 1.3 本次设计研究的内容、目的.......................................................................................... 2
基于单片机控制的智能函数信号发生器毕业设计论文(带pcb图)[管理资料]
![基于单片机控制的智能函数信号发生器毕业设计论文(带pcb图)[管理资料]](https://img.taocdn.com/s3/m/693aa2dd0066f5335b8121d1.png)
函数发生器摘要函数发生器采用ATM89S52 单片机作为控制核心,外围采用模拟/数字转换电路(DAC0832)、稳压电路(MC1403)、运放电路(LM324)、按键和LED显示灯电路等。
电路采用AT89S52单片机和一片DAC0832数模转换器组成数字式低频信号发生器。
函数信号发生器,它具有价格低、性能高和在低频范围内稳定性好、操作方便、体积小、耗电少等特点。
由于采用了LM324运算放大器和MC1403稳压器,使其电路更加具有较高的稳定性能,性能比高。
此电路清晰,出现故障容易查找错误,操作简单、方便。
通过按键控制可产生方波、锯齿波、三角波、正弦波等,同时用LED显示灯指示对应的波形。
~5 V,~ ,波形准确并且平滑。
本系统设计简单、性能优良,具有一定的实用性。
本设计主要应用AT89S52作为控制核心。
硬件电路简单,软件功能完善,控制系统可靠,性价比较高等特点,具有一定的使用和参考价值。
关键词:单片机;低频信号;发生器;运放器;稳压器目录一、绪论 01、信号发生器现状 02、单片机在低频信号发生器中的应用 0二、系统设计 (1)1、系统方案的比较 (1)(1)选题论证 (1)(2)方案选择 (1)2、芯片选择模块 (2)三、硬件电路的设计 (2)1、基本原理: (2)2、资源分配: (2)3、最小系统设计 (3)(1)最小单片机系统 (3)(2)达盛平台介绍 (7)4、各部分电路原理 (13)(1)DAC0832芯片原理 (13)(2)LM324工作原理 (16)(3)MC1403工作原理 (16)四、软件设计 (17)1、主程序流程图 (18)2、锯齿波程序流程图 (18)3、三角波程序流程图 (19)4、正弦波程序流程图 (20)5、方波程序流程图 (20)6、延时子程序流程图 (21)五、测试结论 (21)六、致谢词 (24)七、结束语 (24)八、参考文献 (24)九、附录 (25)1、元件清单 (25)2、电路原理图 (26)3、PCB图 (28)4、程序清单 (28)一、绪论1、信号发生器现状波形发生器亦称函数发生器,作为实验用信号源,是现今各种电子电路实验设计应用中必不可少的仪器设备之一。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
电子与信息工程学院综合实验课程报告课题名称基于单片机的函数信号发生器专业电子信息工程班级 07电子1班学生姓名学号指导教师宋杨老师2010年 7 月 5 日摘要本文介绍一种用AT89C51单片机构成的波形发生器,可产生方波、三角波、正弦波、锯齿波等多种波形,波形的周期可用程序改变,并可根据需要选择单极性输出或双极性输出,具有线路简单、结构紧凑、性能优越等特点。
文章给出了源代码,通过仿真测试,其性能指标达到了设计要求。
关键词:单片机;DAC ;信号发生器目录摘要 ............................................................... 目录...............................................................第一章绪论 ..........................................................1.1单片机概述 ......................................................1.2信号发生器的分类 ................................................1.3研究内容 ........................................................第二章方案的设计与选择 ..............................................2.1方案的比较 ......................................................2.2设计原理 ........................................................2.3设计思想 ........................................................2.4设计功能 ........................................................第三章硬件设计 ......................................................3.1硬件原理框图 ....................................................3.2主控电路 ........................................................3.3数、模转换电路 ..................................................3.4按键接口电路 ....................................................3.5时钟电路 ........................................................3.6显示电路 ........................................................第四章软件设计 ......................................................4.1程序流程图 ......................................................第五章总结与展望 .................................................... 致谢............................................................... 参考文献 ............................................................. 附录1电路原理图 ..................................................... 附录2 源程序 . ........................................................ 附录 3 器件清单......................................................第一章绪论1.1单片机概述随着大规模集成电路技术的发展,中央处理器(CPU、随机存取存储器(RAM、只读存储器(ROM、(I/O接口、定时器/计数器和串行通信接口,以及其他一些计算机外围电路等均可集成在一块芯片上构成单片微型计算机,简称为单片机。
单片机具有体积小、成本低,性能稳定、使用寿命长等特点。
其最明显的优势就是可以嵌入到各种仪器、设备中,这是其他计算机和网络都无法做到的[9,10]。
1.2信号发生器的分类信号发生器应用广泛,种类繁多,性能各异,分类也不尽一致。
按照频率范围分类可以分为:超低频信号发生器、低频信号发生器、视频信号发生器、高频波形发生器、甚高频波形发生器和超高频信号发生器。
按照输出波形分类可以分为:正弦信号发生器和非正弦信号发生器,非正弦信号发生器又包括:脉冲信号发生器,函数信号发生器、扫频信号发生器、数字序列波形发生器、图形信号发生器、噪声信号发生器等。
按照信号发生器性能指标可以分为一般信号发生器和标准信号发生器。
前者指对输出信号的频率、幅度的准确度和稳定度以及波形失真等要求不高的一类信号发生器。
后者是指其输出信号的频率、幅度、调制系数等在一定范围内连续可调,并且读数准确、稳定、屏蔽良好的中、高档信号发生器。
1.3 研究内容本文是做基于单片机的信号发生器的设计,将采用编程的方法来实现三角波、锯齿波、矩形波、正弦波的发生。
根据设计的要求,对各种波形的频率和幅度进行程序的编写,并将所写程序装入单片机的程序存储器中。
在程序运行中,当接收到来自外界的命令,需要输出某种波形时再调用相应的中断服务子程序和波形发生程序,经电路的数/模转换器和运算放大器处理后,从信号发生器的输出端口输出。
第二章方案的设计与选择2.1 方案的比较方案一:采用单片函数发生器(如8038),8038可同时产生正弦波、方波等,而且方法简单易行,用D/A转换器的输出来改变调制电压,也可以实现数控调整频率,但产生信号的频率稳定度不高。
方案二:采用锁相式频率合成器,利用锁相环,将压控振荡器(VCO)的输出频率锁定在所需频率上,该方案性能良好,但难以达到输出频率覆盖系数的要求,且电路复杂。
方案三:采用单片机编程的方法来实现。
该方法可以通过编程的方法来控制信号波形的频率和幅度,而且在硬件电路不变的情况下,通过改变程序来实现频率的变换。
此外,由于通过编程方法产生的是数字信号,所以信号的精度可以做的很高。
鉴于方案一的信号频率不够稳定和方案二的电路复杂,频率覆盖系数难以达标等缺点,所以决定采用方案三的设计方法。
它不仅采用软硬件结合,软件控制硬件的方法来实现,使得信号频率的稳定性和精度的准确性得以保证,而且它使用的几种元器件都是常用的元器件,容易得到,且价格便宜,使得硬件的开销达到最省。
2.2 设计原理数字信号可以通过数/模转换器转换成模拟信号,因此可通过产生数字信号再转换成模拟信号的方法来获得所需要的波形。
89C51单片机本身就是一个完整的微型计算机,具有组成微型计算机的各部分部件:中央处理器CPU、随机存取存储器RAM 、只读存储器ROM、I/O接口电路、定时器/计数器以及串行通讯接口等,只要将89C51再配置键盘及其接口、显示器及其接口、数模转换及波形输出、指示灯及其接口等四部分,即可构成所示。
所需的波形发生器,其信号发生器构成原理框图如图2.1图2.1 信号发生器原理框图89C51是整个波形发生器的核心部分,通过程序的编写和执行,产生各种各样的信号,并从键盘接收数据,进行各种功能的转换和信号幅度的调节。
当数字信号经过接口电路到达转换电路,将其转换成模拟信号也就是所需要的输出波形。
2.3 设计思想(1)利用单片机产生方波、正弦波、三角波和锯齿波等信号波形,信号的频率和幅度可变。
(2)将一个周期的信号分离成256个点(按X轴等分),每两点之间的时间间隔为∆T,用单片机的定时器产生,其表示式为:∆T=T/256。
如果单片机的晶振为12MHz ,采用定时器方式0,则定时器的初值为:X=213—∆T/Tmec (2.1定时时间常数为:TL =(8192—∆T)/MOD256 (2.2TH=(8192∆T/256 (2.3MOD32表示除32取余数(3)正弦波的模拟信号是D/A转换器的模拟量输出,其计算公式为:Y=(A/2sin∆t)+A/2 (其中A=VREF (2.4 (2.5∆t=N∆T (N=1~256那么对应着存放在计算机里的这一点的数据为:Di =(Y ⨯255 /A =(sin∆t +1 ⨯2552(2.6)(4)一个周期被分离成256个点,对应的四种波形的256个数据存放在以TAB1--TAB4为起始地址的存储器中。
2.4 设计功能(1)本方案利用8155扩展8个独立式按键,6个LED 显示器。
其中“S0”号键代表方波输出,“S 1”号键代表正弦波输出,“S 2”号键代表三角波输出,“S3” 号键代表锯齿波输出。
(2)“S 4”号键为10Hz 的频率信号,“S 5”号键为100Hz 的频率信号,“S6”号键为500Hz 的频率信号,“S 7”号键为1KHz 的频率信号,6个LED显示器输出信号的频率值,选用共阳极LED 。
(3)利用两片DAC0832实现幅度可调的信号源,(其中一片用来调节幅度,另外一片用来实现信号源的输出)。
(4)频率范围:10~1000Hz。
(5)输出波形幅度为0~5V 。
第三章硬件设计3.1 硬件原理框图硬件原理方框图如图3.1所示。
图3.1 硬件原理框图3.2 主控电路AT89C51单处机内部设置两个16位可编程的定时器/计数器T0和T1,它们具有计数器方式和定时器方式两种工作方式及4种工作模式。
在波形发生器中,将其作定时器使用,用它来精确地确定波形的两个采样点输出之间的延迟时间。
模式1采用的是16位计数器,当T0或T1被允许计数后,从初值开始加计数,最高位产生溢出时向C PU 请求中断。
中断系统是使处理器具有对外界异步事件的处理能力而设置的。
当中央处理器CPU 正在处理某件事的时候外界发生了紧急事件,要求CPU暂停当前的工作,转而去处理这个紧急事件。
在波形发生器中,只用到片内定时器/计数器溢出时产生的中断请求,即是在AT89C51输出一个波形采样点信号后,接着启动定时器,在定时器未产生中断之前,AT89C51等待,直到定时器计时结束,产生中断请求,AT89C51响应中断,接着输出下一个采样点信号,如此循环产生所需要的信号波形[6]。