51单片机信号发生器实验报告
- 格式:docx
- 大小:162.94 KB
- 文档页数:5
专业方向课程设计报告设计课题:信号发生器的设计设计时间:2012年06月6日信号发生器的设计摘要:本文以STC89C51单片机为核心设计了一个低频函数信号发生器。
信号发生器采用数字波形合成技术,通过硬件电路和软件程序相结合,可输出自定义波形,如正弦波、方波、三角波、三角波、梯形波及其他任意波形,波形的频率和幅度在一定范围内可任意改变。
波形和频率的改变通过软件控制,幅度的改变通过硬件实现。
介绍了波形的生成原理、硬件电路和软件部分的设计原理。
关键词:低频信号发生器; 单片机;D/A转换1设计要求设计一个能产生方波、三角波、梯形波、锯齿波并且频率、幅度可调的信号发生器。
发挥部分:作品还能产生正弦波。
2系统概述2.1.1波形产生方案采用AT89C51单片机和DAC0832数模转换器生成波形,加上一个低通滤波器,生成的波形比较纯净。
它的特点是可产生任意波形,频率容易调节,频率能达到设计的500HZ 以上。
2.1.2改变幅度方案:方案一:可以将送给DA的数字量乘以一个系数,这样就可以改变DA输出电流的幅度,从而改变输出电压;但是这样做有很严重的问题,单片机在做乘法运算时需要很长的时间,这样的话输出波形的频率就会很低;并且该方案的输出电压做不到连续可调,当DA的输入数字量比较小时,输出的波形失真就会比较严重。
方案二:将输出电压通过一个运算放大器的放大。
这样还有个优点是幅度连续可调。
经比较,方案二既可满足课程设计的基本要求,并且电路也挺简单。
2.2工作原理数字信号可以通过数/模转换器转换成模拟信号,因此可通过产生数字信号再转换成模拟信号的方法来获得所需要的波形。
89C51单片机本身就是一个完整的微型计算机,具有组成微型计算机的各部分部件:中央处理器CPU、随机存取存储器RAM、只读存储器ROM、I/O接口电路、定时器/计数器以及串行通讯接口等,只要将89C51再配置键盘及、数模转换及波形输出、放大电路等部分,即可构成所需的波形发生器,其信号发生器构成系统框图如图2.2所示。
51单片机实验报告(共五则)第一篇:51单片机实验报告51单片机实验报告实验一点亮流水灯实验现象 Led灯交替亮,间隔大约10ms。
实验代码#include 〈reg51、h> void Delay10ms(unsigned int c);voidmain(){)1(elihwﻩ{ ﻩP0= 0x00;Delay10ms(50);;ffx0 =0Pﻩﻩ;)05(sm01yaleDﻩ } } void Delay10ms(unsigned int c){unsigned char a,b;for(;c>0;c-—){)——b;0〉b;83=b(rofﻩ{ ﻩﻩfor(a=130;a〉0;a--);}ﻩﻩ}} 实验原理W W hi i le(1)表示一直循环。
循环体内首先将P0 得所有位都置于零,然后延时约5 5 0*10=500ms,接着 0 P0 位全置于 1 1,于就是 D LED 全亮了。
接着循环,直至关掉电源..延迟函数就是通过多个for r 循环实现得。
实验 2 流水灯(不运用库函数)实验现象起初 led 只有最右面得那一个不亮,半秒之后从右数第二个led也不亮了,直到最后一个也熄灭,然后 led 除最后一个都亮,接着上述过程 #includemain(){unsigned char LED;LED = 0xfe;while(1){ ﻩ;DEL = 0PﻩDelay10ms(50);00x0 == 0P(fiﻩ {;1〈〈 DEL = DELﻩ)ﻩ;efx0 = DELﻩ} ﻩ}ﻩ} void Delay10ms(unsigned int c){unsigned char a,b;for(;c>0;c-—){)—-b;0〉b;83=b(rofﻩ{ ﻩﻩﻩ;)--a;0>a;031=a(rofﻩ} ﻩ} ﻩ} 实验原理这里运用了C语言中得位运算符, , 位运算符左移, , 初始值得二进制为1111 1 110, 之后左移一次变成1111 1 100 0,当变成00000 0000 时通过 f if 语句重置 1 1 11 1 11110、延迟函数在第一个报告已经说出了,不再多说..实验 3 流水灯(库函数版)实验现象最开始还就是最右边得一个不亮,然后不亮得灯转移到最右边得第二个,此时第一个恢复亮度,这样依次循环.实验代码#include 〈reg51、h> #include 〈intrins、h〉void Delay10ms(unsigned int c); void main(void){unsigned char LED;;EFx0 = DELﻩ)1(elihwﻩ{ ﻩP0 = LED;;)05(sm01yaleDﻩﻩ;)1,DEL(_lorc_ = DELﻩ} ﻩ} void Delay10ms(unsigned in t c){unsigned chara, b;for(;c〉0;c——){ ﻩfor(b=38;b〉0;b—-){ ﻩﻩ;)-—a;0〉a;031=a(rofﻩ} ﻩ}}实验原理利用头文件中得函数,_cro l_(,), 可以比位操作符更方便得进行 2 2 进制得移位操作, , 比位操作符优越得就是,该函数空位补全时都就是用那个移位移除得数据, , 由此比前一个例子不需要f if 语句重置操作..数码管实验实验现象单个数码管按顺序显示0-9与 A-F。
一、实验目的1. 熟悉信号发生器的基本原理和组成。
2. 掌握信号发生器的操作方法和使用技巧。
3. 学习通过信号发生器进行信号测试和调试的方法。
4. 培养实验操作能力和分析问题、解决问题的能力。
二、实验原理信号发生器是一种能够产生各种波形信号的电子设备,广泛应用于科研、生产和教学等领域。
本实验所使用的信号发生器为函数信号发生器,可以产生正弦波、方波、三角波等基本波形信号。
三、实验设备1. 信号发生器一台2. 示波器一台3. 测试电缆若干4. 负载电阻若干四、实验内容1. 信号发生器的基本操作(1)打开信号发生器,调整频率、幅度和波形等参数。
(2)观察信号发生器输出波形,确认波形是否正常。
(3)调整输出幅度,使其符合实验要求。
2. 正弦波信号的测试(1)将信号发生器设置为正弦波,调整频率和幅度。
(2)使用示波器观察输出波形,确认波形为正弦波。
(3)测试输出波形的频率、幅度和相位,记录数据。
3. 方波信号的测试(1)将信号发生器设置为方波,调整频率和幅度。
(2)使用示波器观察输出波形,确认波形为方波。
(3)测试输出波形的频率、幅度和占空比,记录数据。
4. 三角波信号的测试(1)将信号发生器设置为三角波,调整频率和幅度。
(2)使用示波器观察输出波形,确认波形为三角波。
(3)测试输出波形的频率、幅度和上升时间、下降时间,记录数据。
5. 信号发生器的应用(1)利用信号发生器产生各种波形信号,进行电路测试和调试。
(2)使用信号发生器进行信号调制和解调实验。
(3)利用信号发生器进行信号分析实验。
五、实验结果与分析1. 正弦波信号测试结果频率:1kHz幅度:2Vpp相位:0°2. 方波信号测试结果频率:1kHz幅度:2Vpp占空比:50%3. 三角波信号测试结果频率:1kHz幅度:2Vpp上升时间:50μs下降时间:50μs实验结果表明,信号发生器能够产生各种波形信号,且波形质量符合实验要求。
六、实验总结1. 通过本次实验,我们熟悉了信号发生器的基本原理和组成,掌握了信号发生器的操作方法和使用技巧。
基于51单片机的多功能信号发生器毕业设计报告-河南理工大学河南理工大学《微机原理与单片机接口技术》课程设计报告多功能信号发生器设计2013年 1月 10 日摘要本次设计是一个多功能信号发生器,可以产生、方波、锯齿波和三角波。
函数信号发生器的设计方法有多种,利用单片机设计的函数信号发生器具有编程灵活,功能更以扩充等实际的优点。
设计原理图如下图所示,其中单片机通过软件对键盘输入的频率数值进行处理,处理结果送与D/A转换部分实现数/模转换,输出的电流再经过电流/电压转换环节,进而形成模拟电压波形,最后经过过载--保护电路输出。
同时在数码管内显示该频率数值。
波形的切换可以通过按键直接实现。
在编程语言上,我们选择自身比较熟悉的C语言,这样在后期波形的调试及与硬件衔接方面更容易发挥出自身优势。
根据设计的要求,对各种波形的频率和幅度进行程序的编写,并将所写程序装入单片机的程序存储器中。
在程序运行中,当接收到来自外界的命令,需要输出某种波形时再调用相应的中断服务子程序和波形发生程序,经电路的数/模转换器和运算放大器处理后,从信号发生器的输出端口输出。
经过设计及后期长时间的调试,设计的所有功能均已实现:(1)具有产生方波、锯齿波、三角波三种周期性波形的功能。
(2)输出波形的频率范围为100Hz,1kHz;频率步进间隔?100Hz。
(3)输出波形幅度范围0,5V,可按步进0.1V(峰-峰值)调整。
(4)具有显示输出波形的类型、周期和幅度的功能。
关键词:单片机,函数发生器,共阴极数码管目录第一章绪论...................................................................... .. (3)1.1选题背景及其意义 ..................................................................... (3)1.2单片机概述 ..................................................................... . (3)1.3信号发生器的分类 ..................................................................... . (4)1.4 研究内容...................................................................... (4)--第二章方案的设计与选择 (4)2.1 方案的比较 ..................................................................... (4)2.2 设计原理...................................................................... (4)2.3 设计思想...................................................................... (5)2.4 设计功能...................................................................... ...................................................... 5 第三章硬件设计 ..................................................................... . (5)3.1 硬件原理框图 ..................................................................... .. (6)3.2 主控电路...................................................................... (6)3.3 数/模转换电路...................................................................... (7)3.4 按键接口电路 ..................................................................... .. (7)3.5 时钟电路...................................................................... ...................................................... 7 第四章ADC0832内部结构及配置 .. (7)4.1D/A转换器DAC0832 ................................................................ ........................................... 8 第五章实验结果 ..................................................................... . (9)5.1实验输出波形 ..................................................................... ................................................ 9 第六章设计总结 ..................................................................... (9)参考文献 ..................................................................... (10)附录 ..................................................................... .. (10)1元件清单...................................................................... .. (10)2源程序...................................................................... (11)第一章绪论1.1选题背景及其意义信号发生器又称信号源或振荡器,在生产实践和科技领域中有着广泛的应用。
基于51单片机的信号发生器设计报告二零一四年十二月十一日摘要根据题目要求以及结合实际情况,本文采用一种以AT89C51单片机为核心所构成的波形发生器,可产生方波、三角波、正弦波、锯齿波等多种波形,波形的频率可用程序改变,并可根据需要选择单极性输出或双极性输出,具有线路简单、结构紧凑、性能优越等特点。
本设计经过测试,性能和各项指标基本满足题目要求。
关键词:信号发生器 DAC0832芯片 LM358运放 89C51芯片目录摘要...................................................................... 目录...................................................................... 第一章绪论.................................................................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 单片机概述单片机(Single chip microcomputer )是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU 、随机存储器RAM 、只读存储器ROM 、多种I/O 口和中断系统、定时器/计数器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D 转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统,在工业控制领域广泛应用。
51单片机实训报告一、引言51单片机是一种常用的微控制器,具有体积小、功耗低、功能强大等优点,广泛应用于各种电子设备中。
本文将介绍本次实训的目标、实验步骤、实验结果以及实训中遇到的问题及解决方案。
二、实训目标本次实训的目标是通过51单片机的学习和实践,掌握单片机的基本原理和编程技巧。
具体来说,我们需要实现以下几个功能:1. 熟悉51单片机的硬件组成和工作原理;2. 学习使用Keil C编译器进行单片机程序的编写和调试;3. 掌握基本的输入输出控制方法,如LED灯的控制、数码管的显示等;4. 学习使用定时器、中断等功能模块,实现一些实际应用,如蜂鸣器的发声、电机的控制等。
三、实验步骤1. 硬件准备:将51单片机与外围电路进行连接,如连接LED灯、数码管、蜂鸣器等;2. 编写程序:使用Keil C编译器编写相应的程序,包括引入头文件、定义宏、声明变量、编写主函数等;3. 调试程序:将程序下载到51单片机中,通过单片机的调试功能进行程序的调试,排除可能存在的错误;4. 运行程序:将调试好的程序运行在51单片机上,观察实验结果是否符合预期。
四、实验结果在本次实训中,我们顺利完成了以下几个实验:1. LED灯闪烁:通过控制51单片机的输出口,使LED灯以一定频率进行闪烁;2. 数码管显示:通过控制51单片机的输出口,使数码管显示指定的数字或字符;3. 蜂鸣器发声:通过控制51单片机的输出口,产生一定频率的方波信号,使蜂鸣器发出相应的声音;4. 电机控制:通过控制51单片机的输出口,控制电机的转动方向和速度。
五、实训中遇到的问题及解决方案在实训过程中,我们遇到了一些问题,但通过团队的共同努力和老师的指导,最终都得到了解决。
下面列举了其中的几个问题及解决方案:1. 问题:LED灯无法闪烁;解决方案:检查LED灯的连接是否正确,确认是否存在接触不良或短路等问题。
2. 问题:数码管无法正常显示;解决方案:检查数码管的连接是否正确,确认是否存在引脚连接错误或接触不良等问题。
单片机实训报告(波形发生器)一、设计方案(1)、硬件基本设计思路本设计方案采用8051单片机和DAC0832将数字信号转化成模拟信号,并通过LM324运算放大器将信号进行处理,最终得到各种波形。
其中,波形的切换采用矩阵键盘通过外部中断0来实现。
(2)、软件基本设计思路首先,将基本波形通过程序进行编写,并调试成功;其次,再编写按键扫描子程序;最后,将按键程序放入中断中,并进行整体调试,直到调通为止。
(3)、程序说明略二、原理图波形发生器原理图三、程序JUCHI E QU 50HSANJI EQU 51HFANGB EQU 52HTIXIN EQU 53HKU EQU 55HORG 0000H ;程序入口AJMP MAIN ;指向主程序ORG 0003H ;主程序入口地址AJMP INTT0 ;指向按键中断程序ORG 0030H ;中断程序入口地址MAIN: ;主程序MOV P2,#00H ;将P2口初始化为0SETB EA ;开总中断SETB EX0 ;开启外部中断0SETB IT0 ;将外部中断0设置为下降沿有效MOV DPTR,#00FFH ;设置输入寄存器地址MOV JUCHI,#00H ;初始化MOV SANJI,#00HMOV FANGB,#00H;***************************************************START:MOV A,KU ;将键码送累加器ACJNE A,#00H,W1 ;将累加器A和00H比较,如果相等,则00键按下顺序执行,否则跳到W1再判断01键是否按下MOV SANJI,#00H ;屏蔽其他波形MOV FANGB,#00HMOV TIXIN,#00HAJMP JCB ;跳转到锯齿波形W1: CJNE A,#01H,W2 ;判断01键是否按下MOV JUCHI,#00H ;屏蔽其他波形MOV FANGB,#00HMOV TIXIN,#00HAJMP SJB ;跳转到三角波形W2: CJNE A,#02H,W3 ;判断02键是否按下MOV TIXIN,#00HMOV JUCHI,#00H ;屏蔽其他波形MOV SANJI,#00HAJMP FB ;跳转到方波W3: CJNE A,#03H,W4 ;判断03键是否按下,没有按下,跳转回去继续循环扫描MOV JUCHI,#00H ;屏蔽其他波形MOV FANGB,#00HAJMP TXB ;跳转到梯形波W4: AJMP START;**********************************************INTT0: ;中断程序;***********键盘扫描子程序KEY*****************KEY: ACALL KS ;调按键查询子程序,判断是否有键按下JNZ K1 ;有键按下,转移 WEI1跳转ACALL DELAY ;无键按下,调延时程序去抖AJMP K4 ;继续查询按键;***********键盘逐列扫描程序***********************************K1: ACALL DELAYACALL KS ;再次判别是否有键按下JNZ K2 ;有键按下,转移AJMP K4K2: MOV R3,#0FEH ;首列扫描字送R3MOV R4,#00H ;首列号送R4K3: MOV A,R3MOV P2,A ;列扫描字送P2口MOV P1,#0FFH ;初始化P1口MOV A,P1 ;读取行扫描值JB ACC.0,L1 ;第零行无键按下转查第一行为1跳转MOV A,#00H ;第零行有键按下,行首键号送AAJMP LK ;转求键号L1: JB ACC.1,NEXT ;第一行无键按下,转查下一列MOV A,#03HAJMP LK ;键扫描结束,返回;************************************************************NEXT:INC R4 ;修改列号MOV A,R3JNB ACC.2,KEY ;三列扫描完返回按键查询状态RL A ;未扫描完,改为下列扫描字MOV R3,A ;扫描字暂存R3AJMP K3 ;转列扫描程序LK: ADD A,R4 ;形成键码送AMOV KU,APUSH ACC ;键码入栈保护;**********************************************K4:ACALL KS ;等待键释放JNZ K4POP ACC ;键释放,弹栈送ARETI ;中断返回;**********按键查询子程序**************************************KS: ;MOV A,#00HMOV P2,#00H ;全扫描字送p2口MOV P1,#0FFHMOV A,P1 ;读入P1口状态CPL A ;变正逻辑,高电平表示有键按下ANL A,#0FH ;屏蔽高四位RET ;子程序返回;****************锯齿波***********************JCB:MOV A,JUCHI ;转换初值WW: MOVX @DPTR,A ;D/A转换INC A ;A自加1NOP ;延时CJNE A,#255,WW ;判断A是否加到255,若没有返回到WW继续加MOV JUCHI,AAJMP START;******************三角波********************SJB:MOV A,SANJI ;转换初值EE: MOVX @DPTR,A ;D/A转换INC ANOPCJNE A,#255,EEDEC AQQ: MOVX @DPTR,ADEC ANOPCJNE A,#00,QQMOV SANJI,AAJMP START;******************方波********************* FB:MOV A,FANGBMOVX @DPTR,AACALL DELAY3ACALL DELAY3CPL AMOVX @DPTR,AACALL DELAY3ACALL DELAY3MOV FANGB,APOP ACCAJMP START;***************梯形波**********************TXB:MOV A,TIXINSS: MOVX @DPTR,AINC AACALL DELAY3CJNE A,#255,SSACALL DELAY3ACALL DELAY3DEC AZZ: MOVX @DPTR,ADEC AACALL DELAY3CJNE A,#00,ZZACALL DELAY3ACALL DELAY3MOV TIXIN,AAJMP START;*******************************************************1ms DELAY3: MOV R0,#7DHDEL7: NOPNOPDJNZ R0,DEL7RET;*******************************************50毫秒延时子程序DELAY2: MOV R0,#05DEL5: MOV R1,#10DEL4: MOV R2,7DHDEL3: NOPNOPDJNZ R2,DEL3DJNZ R1,DEL4DJNZ R0,DEL5RET;******************************************END四、实训总结通过两周的实训,我们对单片机有了一个基本的认识和了解,我们学到了怎样从一个设计课题入手去编写相关程序,并通过硬件实现。
c51单片机实验报告C51单片机实验报告引言C51单片机作为一种常见的微控制器,广泛应用于各种电子设备中。
本实验报告旨在介绍C51单片机的基本原理、实验过程和结果分析,以及对其在实际应用中的潜力进行探讨。
一、C51单片机的基本原理C51单片机是一种高度集成的微处理器,由中央处理器、存储器、输入输出接口和时钟电路等组成。
其核心是Intel公司开发的8051系列单片机,具有高性能、低功耗和易于编程等优点。
C51单片机采用汇编语言进行编程,可以实现各种功能,如数据处理、控制和通信等。
二、实验过程本次实验选取了LED灯的控制作为示例,通过C51单片机控制LED灯的亮灭来展示其基本功能。
1. 实验材料准备准备工作包括C51单片机开发板、连接线、电源和LED灯等。
确保所有材料齐全并连接正确。
2. 编写程序使用汇编语言编写程序,通过控制特定的IO口来控制LED灯的亮灭。
程序需考虑到时序和逻辑关系,确保正确的控制信号发送到LED灯。
3. 烧录程序将编写好的程序通过烧录器烧录到C51单片机中,确保程序能够正确运行。
4. 运行实验将电源接入开发板,开启电源。
通过按下相应的按键或其他输入方式,触发C51单片机发送控制信号,从而控制LED灯的亮灭。
三、实验结果分析经过实验,我们成功地实现了通过C51单片机控制LED灯的亮灭。
通过改变程序中的控制信号,我们可以实现不同的灯光效果,如闪烁、流水灯等。
这说明C51单片机具有良好的可编程性和控制能力。
此外,我们还发现C51单片机具有较高的稳定性和可靠性。
在实验过程中,单片机能够稳定地工作,并根据程序的要求正确地控制LED灯的状态。
这为其在实际应用中提供了良好的基础。
四、C51单片机在实际应用中的潜力C51单片机作为一种常见的微控制器,广泛应用于各种电子设备中。
其可编程性和控制能力使得它在工业自动化、家电控制、通信设备和电子产品等领域有着广阔的应用前景。
例如,在工业自动化领域,C51单片机可以用于控制机器人、自动化生产线和仪器设备等。
51单片机实验报告一、引言51单片机是一种广泛应用于嵌入式系统开发的微控制器芯片。
本实验旨在通过对51单片机的实验研究,加深对该芯片的理解和应用。
二、实验一:LED灯闪烁控制本实验通过编写程序,控制51单片机上的LED灯以特定的频率闪烁。
为了实现这个目标,我们首先需要了解51单片机的引脚布局,确定LED灯的连接方式。
然后,通过编写相应的汇编程序,控制引脚的电平变化,从而实现LED灯的闪烁。
三、实验二:数码管显示数码管是一种常见的输出设备,通过控制引脚的输出来显示特定的数字。
本实验中,我们通过编写程序,实现通过51单片机控制数码管的显示。
通过对数码管的驱动原理和编程的学习,我们可以灵活地控制数码管的显示内容和频率。
四、实验三:蜂鸣器发声蜂鸣器是一种常见的声音输出设备,通过控制引脚的输出来产生特定的声音。
本实验中,我们通过编写程序,实现通过51单片机控制蜂鸣器的发声。
通过学习蜂鸣器的驱动原理和编程,我们可以根据需要产生不同频率和节奏的声音。
五、实验四:温湿度检测温湿度检测是一种常见的环境监测需求。
本实验中,我们通过引入温湿度传感器,实现通过51单片机获取环境的温度和湿度信息。
通过编写程序和读取传感器的数据,我们可以实时监测环境的温湿度,并进行相应的控制和反馈。
六、实验五:红外遥控红外遥控是一种常见的无线通信方式,通过发送和接收红外信号来实现远程控制。
本实验中,我们通过引入红外发射和接收模块,实现通过51单片机进行红外遥控。
通过编写相应的程序,设置红外遥控的编码和解码方式,我们可以实现对外部设备的遥控操作。
七、实验六:定时器应用定时器是51单片机中的重要模块,它可以实现定时和计数等功能。
本实验中,我们通过学习定时器的工作原理和编程,实现通过51单片机进行定时和计数的应用。
通过编写相应的程序和设置定时器的参数,我们可以实现不同的定时和计数功能,满足各种需要。
八、实验七:串口通信串口通信是一种常见的数据通信方式,通过串口接口发送和接收数据。
创新性实验研究报告实验项目名称_简易函数信号发生器四、实验内容1、运用keil软件对程序进行编写,运行程序,并进行程序修改。
2、运用protues软件进行硬件电路仿真设计。
3、将程序下载到仿真单片机中,并观测输出波形。
4、对程序进行修改,再次运行仿真软件,直到输出理想的波形。
5、仿照仿真软件进行硬件电路的焊接。
6、将程序下载到单片机,并用示波器测试输出波形。
7、对程序进行修改,直到输出满意的波形为止。
3、实验步骤1、首先打开keil软件.2、运用keil软件对程序进行编写,程序见附件。
3、打开protues软件.4、运用protues软件对硬件电路进行设计。
9C51单片机是该信号发生器的核心,具有2个定时器,32个并行I/O口,1个串行I/O口,5个中断源。
由于本设计功能简单,数据处理容易,数据存储空间也足够,因为我们采用了片选法选择芯片,进行芯片的选择和地址的译码。
在单片机最小最小系统中,单片机从P1口接收来自键盘的信号,并通过P0口输出控制信号,通过DA转换芯片最终由示波器显示输出波形。
单片机引脚分配如下:�XTAL1,XTAL2:外接晶振,产生时钟信号。
�RST:复位电路;�P2口:8位数字信号输出输出,外接DAC0832;�P3.6口和P3.7口:DAC0832的时钟信号;单片机模块单片机输出的是数字信号,因为要得到模拟信号的波形就必须对其进行数模转换。
我们采用了DAC0832数模转换器,该芯片具由8位输入锁存器、8位DAC寄存器、8位D/A转换器及转换控制电路四部分构成。
由于其输出为电流输出,因为外加运算放大器LM324使之转换为电压输出。
最后通过示波器显示输出的波形。
数模转换模块运放模块整体硬件电路图五、实验结果与分析1、实验现象、数据记录仿真波形2、对实验现象、数据及观察结果的分析与讨论:经过观察调试,再观察,再调试,最终输出的波形较为理想。
此次试验经过一系列的调试,最终输出的波形为正弦波、方波、三角波。
微控制器技术创新设计实验报告姓名:学号:班级:
一、项目背景
信号发生器也叫做振荡器或是信号源,在现在的科技生产实践中有着广泛而重要的应用。
现在的特殊波形发生器在价格上不够经济,有些昂贵。
而基于AT89C51单片机的函数信号发生器可以满足此要求。
根据傅里叶变换,各种波形均可以用三角函数的相关式子表示出来。
函数信号发生器能够产生多种波形,如三角波、锯齿波、矩形波、方波和正弦波。
二、项目整体方案设计
可以利用单片机编程的方法来实现波形的输出。
可选用AT89C51作为控制器,输出相应波形的数字信号,再用D/A 转换器输出相应波形的模拟信号。
用DAC0832作为D/A转换器,再经过两级放大后输出,最终在示波器上显示。
可以使用按键扫描来实现波形的变化
三、硬件设计
四、软件设计
#include<reg51.h>
#define uchar unsigned char
#define uint unsigned int
Const
tab[]={0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff ,0xff,0xff,0xff,0xff,0xff,0xff};
void delay(void)
{
uchar i;
for(i=230;i>0;i--);
}
void main() {
uchar i; while(1)
{
for(i=0;i<18;i++) {
P1=tab[i];
delay();
}
}
}
五、实验结果
六、项目总结
通过这次实验设计,锻炼我们综合运用知识,提出问题,分析问题,及解决问题的能力。
我感慨颇多,在着手设计的这段日子里,我又学到了很多东西。
特别是理论联系实际。
我认为掌握单片机的应用及开发技术是最基本的也是必要的。
单片机是以后从事相关嵌入式研发最为基本的入门芯片。
所以学好单片机是我们电子类的必要任务。
通过这次单片机课程设计的顺利完成,离不开付老师指导,也离不开班上同学的耐心帮助。
在此,我对所有帮助过我的老师和同学表示我真挚的感谢!。