51单片机信号发生器实验报告
基于51单片机信号发生器的设计
专业方向课程设计报告设计课题:信号发生器的设计设计时间: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单片机实验报告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单片机的多功能信号发生器毕业设计报告
基于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单片机的信号发生器设计报告
基于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单片机是一种常用的微控制器,具有体积小、功耗低、功能强大等优点,广泛应用于各种电子设备中。
本文将介绍本次实训的目标、实验步骤、实验结果以及实训中遇到的问题及解决方案。
二、实训目标本次实训的目标是通过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. 问题:数码管无法正常显示;解决方案:检查数码管的连接是否正确,确认是否存在引脚连接错误或接触不良等问题。
基于51单片机汇编程序波形发生器实训报告
单片机实训报告(波形发生器)一、设计方案(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单片机的基本原理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单片机是一种广泛应用于嵌入式系统开发的微控制器芯片。
本实验旨在通过对51单片机的实验研究,加深对该芯片的理解和应用。
二、实验一:LED灯闪烁控制本实验通过编写程序,控制51单片机上的LED灯以特定的频率闪烁。
为了实现这个目标,我们首先需要了解51单片机的引脚布局,确定LED灯的连接方式。
然后,通过编写相应的汇编程序,控制引脚的电平变化,从而实现LED灯的闪烁。
三、实验二:数码管显示数码管是一种常见的输出设备,通过控制引脚的输出来显示特定的数字。
本实验中,我们通过编写程序,实现通过51单片机控制数码管的显示。
通过对数码管的驱动原理和编程的学习,我们可以灵活地控制数码管的显示内容和频率。
四、实验三:蜂鸣器发声蜂鸣器是一种常见的声音输出设备,通过控制引脚的输出来产生特定的声音。
本实验中,我们通过编写程序,实现通过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、对实验现象、数据及观察结果的分析与讨论:经过观察调试,再观察,再调试,最终输出的波形较为理想。
此次试验经过一系列的调试,最终输出的波形为正弦波、方波、三角波。
--基于51单片机的简易函数信号发生器的设计与分析
基于51单片机的简易函数信号发生器的设计与分析郭 辉(阜阳师范学院信息工程学院,安徽阜阳,236037)摘要:函数信号发生器设计与分析是单片机实践中的一重要实验。
本文采用Proteus 对函数信号发生器的原理图进行设计,并通过Keil 软件编程验证该设计的可行性,通过调节按键,该简易函数信号发生器可以正确输出正弦波、锯齿波、梯形波、矩形波,并可以通过按键对相应波形的频率进行调节,最终通过Proteus 制作出该电路的PCB 原理图。
本设计对单片机项目设计与实现具有一定的指导意义。
关键词:信号发生器;AT89C51;Proteus ;Keil ;PCB 中图分类号:TP368.1 文献标识码:BDesign and analysis of a simple function signal generator based on 51 single chip microcomputerGuo Hui(College of Information Engineering,Fuyang Teachers' College,Fuyang Anhui,236037)Abstract :This paper uses the principle of figure Proteus function signal generator is designed,and the feasibility of the design is verified by Keil software programming,by adjusting the key,the simple function signal generator can output sine wave,Ju Chibo,trapezoidal wave,rectangular wave,and can be adjusted through the key corresponding to the frequency of the waveform, eventually produced by Proteus PCB principle diagram of the circuit.Keywords :signal generator;AT89C51;Proteus;Keil;PCB 0 引言Proteus 软件为英国Labcenter electronics 公司开发的EDA 工具软件。
单片机简易信号发生器实训报告
重庆科技学院学生实习(实训)总结报告学院: 电气与信息工程学院专业班级: XXX学生姓名: XXX 学号: XXX实习(实训)地点: 逸夫科技大楼I512报告题目: 单片机简易信号发生器设计报告日期: 2014 年 3 月 10 日指导教师评语: _________________________________________成绩(五级记分制):指导教师(签字):目录一、实验目的和意义 (1)1.1设计目的和意义 (1)1.2任务 (1)二、方案设计 (1)2.1系统分析 (1)2.2器件选择 (2)2.2.1 微处理器 (2)2.2.2 显示器 (3)2.2.3 按键 (3)三、系统硬件设计 (3)3.1 单片机数据处理系统 (3)3.2最小的系统设计 (4)3.3 按键控制电路 (5)3.4 数码管显示电路 (5)3.5 LED报警灯电路 (6)3.6 IICEEROM模块 (6)3.7 实时时钟电路(扩展功能) (6)四、系统软件设计 (7)4.1 操作功能设计 (7)4.2程序编制思想 (7)4.3 主程序设计 (8)4.3.1系统工作流程图 (9)4.3.2独立按键流程图 (10)4.3.3中断服务程序流程图 (11)五、程序调试 (11)5.1.1 硬件调试: (11)5.1.2软件调试: (12)5.1.3 波形与显示的调试: (12)六、技术小结 (12)七、心得体会 (13)八、参考文献: (13)附录1 系统硬件电路图 (14)附录2 程序清单 (15)重庆科技学院课程设计关于单片机简易信号发生器设计的实习(实训)报告一、实验目的和意义1.1设计目的和意义波形发生器亦称函数发生器,作为实验用信号源,是现今各种电子电路实验设计应用中必不可少的仪器设备之一。
目前,市场上常见的波形发生器多为纯硬件的搭接而成,且波形种类有限,多为锯齿、正弦、方波、三角等波形。
本系统利用单片机AT89S52采用程序设计方法产生正弦波、方波、三角波三种波形,再通过D/A转换器DAC0832将数字信号转换成模拟信号,滤波放大,最终由示波器显示出来,能产生1Hz—3kHz的波形并且可调。
51单片机报告
实验名称:基于8255的LED显示函数信号发生器设计一、课题内容和要求基本要求:1、用存储器或算法得到信源。
2、用DA转换器输出一函数信号(正弦、方波、三角、锯齿等,频率1000Hz),可以用示波器进行波形观察。
3、用数码管或LCD显示输出参数。
4、用功能键切换各信号的输出。
发挥部分:1、通过键盘,可修改波的频率。
每按一次键,频率值进给或后退1倍,频率范围不限。
2、通过按键可以修改输出波形的幅度。
3、按键时,蜂鸣器发出提示音,表示按键有效。
4、数码管或LCD显示的内容可以用频率值和周期值切换表示。
动态显示格式:自定二、总体设计利用AT89S52单片机采用查表或算法产生三角波、正弦波和方波三种波形,再通过D/A转换器DAC0832将数字信号转换成模拟信号,最终由示波器显示出来,通过键盘来控制三种波形的类型选择、频率变化,最终输出显示各自的频率或者周期值。
三、单元设计1、键盘扫描部分矩阵键盘电路硬件图:实验中采用8255的PA口和PC口的低四位进行键盘扫描,行由8255的PA0~PA3端口控制,列由8255的PC0~PC3端口控制,其中PA口工作在输出方式,PB口工作在输入方式。
当PA0~PA3中一个口输出低电平时,对应的行线上的电平就为0,这是当有键按下时对应的列线上就变为低电平,这时PC口上对应位就可以检测到低电平从而判断是哪个键按下。
键盘扫描程序如下:SCAN:MOV DPTR,#1FFCH;PA口地址MOV A,#00HMOVX @DPTR,A; PA0~PA3输出低电平INC DPTR;DPTR指向PC口INC DPTRMOVX A,@DPTR;读PC口的值ANL A,#0FH;屏蔽无用位CJNE A,#0FH,DETAIL;判断是否有低电平ACALL DELAY1;延时ACALL DELAY1AJMP SCAN;无键按下则继续扫描DETAIL:ACALL DELAY1;消抖动ACALL DELAY1MOV DPTR,#1FFCH;再判断是否有键按下MOV A,#00HMOVX @DPTR,AINC DPTRINC DPTRMOVX A,@DPTRANL A,#0FHCJNE A,#0FH,CONTINUE;有键按下则做进一步的判断AJMP SCAN;无键按下继续扫描CONTINUE:CLR EA;有键按下驱动蜂鸣器SETB P1.7ACALL DELAY2CLR P1.7SETB EAMOV R4,#02H;扫描行数送入R4中MOV A,#0FEHLINE:MOV DPTR,#1FFCHMOV R2,A;行号送R2MOVX @DPTR,A;置PA0为低电平INC DPTRINC DPTRMOVX A,@DPTRANL A,#0FHCJNE A,#0FH,FIND;判断第一行是否有键按下MOV A,R2RL ADJNZ R4,LINESJMP SCAN;无键按下继续扫描FIND:MOV R3,A列号存入R3中MOV A,R2CJNE A,#0FEH,LINE2;判断是否是第一行有键按下LINE1:MOV A,R3;第一行有键按下CJNE A,#0EH,L1R2;判断是哪个按键按下L1R1:MOV R0,#01H;有波形键按下键按下MOV R1,#01H;波形标志1MOV R7,#00HCLR TR1CLR TR0SETB TR0SJMP SCANL1R2:CJNE A,#0DH,L1R3MOV R0,#01H;有波形键按下键按下MOV R1,#02H;方波标志MOV R7,#00HCLR TR0CLR TR1SETB TR1SJMP SCANL1R3:MOV R0,#01H;有波形键按下键按下MOV R1,#03H;三角波标志MOV R7,#00HCLR TR1CLR TR0SETB TR0AJMP SCANLINE2:MOV A,R3;第二行有键按下CJNE A,#0EH,L2R2L2R1:CJNE R0,#01H,NONE1;有波形时才能进行频率增减操作CJNE R6,#00H,START1;没有减到最小频率值时继续减否则减频操作失败 AJMP NONE1START1:DEC R6;减频MOV A,R6MOV DPTR,#TABLE3MOVC A,@A+DPTRMOV TH0,A;重置计数初值NONE1:AJMP DISPLAYL2R2:CJNE A,#0DH,L2R3CJNE R0,#01H,NONE2;有波形时才能进行频率增减操作CJNE R6,#0EH,START2;没有增到最大频率值时继续增否则增频操作失败 AJMP NONE2START2:INC R6;增频MOV A,R6MOV DPTR,#TABLE3MOVC A,@A+DPTRMOV TH0,A;重置计数初值NONE2:AJMP DISPLAYL2R3:CJNE A,#0BH,L2R4;显示波形周期值MOV F,#01HAJMP DISPLAYL2R4:MOV F,#00H;显示波形频率值AJMP DISPLAY2、显示部分显示部分硬件图:开发板上设置了6位8段数码管,采用动态扫描方式连接,各位数码管的A~DP 互联后经拨码开关S1后由P0口控制,数码管的COM分别经拨码开关S2后由P10~P15控制。
基于51单片机的函数信号发生器
基于51单片机的函数信号发生器
一、任务
设计并制作一台基于51单片机的函数信号发生器,使之能产生正弦波、方波和三角波信号,且不能使用专用集成函数发生器芯片。
二、要求
系统框图:
1.基本要求
1)信号发生器能产生正弦波、方波和三角波三种周期性波形;
2)输出信号频率在100Hz~1kHz范围内可调;
3)输出信号波形无明显失真;
2.发挥部分
1)将输出信号频率范围扩展为10Hz~10kHz,输出信号频率可分段调节:在10Hz~
10kHz范围内步进间隔为100Hz;
2)在1k 负载条件下,输出正弦波信号的电压峰-峰值V opp在0~5V范围内即可;
3)可实时显示输出信号的类型、幅度、频率和频率步进值;
4)其他。
三、说明
设计报告正文应包括系统总体框图、核心电路原理图、主要流程图和主要的测试结果。
完整的电路原理图、重要的源程序和完整的测试结果可用附件给出。
四、评分标准
注:请大家于五一收假的晚上之前把你们所需要的元件清单拿过来,我们好统一购买元器件。
基于51单片机的信号发生器
基于51单片机的信号发生器[摘要] 信号发生器是一种常用的信号源,广泛的应用于电子电路,自动控制统和教学实验等领域。
目前使用的信号发生器大部分是利用分立元件组成的体积大,可靠性差,准确度低。
本系统以51单片机为控制核心,由电源模块、DAC转换模块和按键控制与显示模块构成,可以输出较为稳定的正弦波、方波、三角波、锯齿波等,按键模块是在单片机上加外围器件独立开关,通过开关控制波形的选择。
当波形进行选择时,通过一块显示屏来确认当前所选波形,方便查询。
DAC转换模块在单片机的输出端口接DAC0832进行DA转换,再通过运放进行波形调整,最后输出波形接在示波器上显示.该系统用C语言编写模块化程序,增强了可读性,以便于89C51对各模块的控制,实现各功能的设置。
本设计结构清晰简单,性能优越。
[关键词] 信号发生器;单片机;波形调整;Function Generator Design Based on 51 MCU[Abstract] Signal generator is a kind of common signal source,widely used in electronic circuits, automatic control system and the teaching experiment, etc. Currently use most of the signal generator is the use of discrete component of large volume, poor reliability and low accuracy.This system with 51 single-chip microcomputer as control core, by the power supply module, DAC conversion module and key control and display modules, which can output sine wave, square wave, triangle wave, sawtooth wave, etc., key modules on the single chip microcomputer and peripheral device independent switch, switch control waveform selection. When the waveform selection, through a screen to confirm the current selected waveform, convenient query. DAC conversion module in the MCU output port after DA conversion DAC0832,again through the op-amp waveform adjustment, the output waveform in the oscilloscope display. The system is modularized program written in C language, to enhance the readability, so that the 89 c51 control of the module,the realization of each function Settings.This design clear and simple in structure, superior performance.[Key Words] single-chip;waveform;signal generator;前言单片机的论述随着大规模集成电路技术的发展,中央处理器、随机存取存储器、只读存储器、(I/O)接口、定时器/计数器和串行通信接口,以及其他一些计算机外围电路等均可集成在一块芯片上构成单片微型计算机,简称单片机。
基于51单片机高频函数信号发生器
函数信号发生器设计报告参赛人员:朱秋王嘉文房开兰指导教师:漆晶二0 0 九年七月十四日摘要波形发生器是一种常用的信号源,广泛地应用于电子电路、自动控制系统和教学实验等领域。
本函数发生器采用STC89C52 单片机作为控制核心,外围采用数字/模拟转换电路(DAC0832)、运放电路(uA741)、倍频电路(CD4046)、按键和LCD显示电路等。
电路采用STC89C52单片机和一片DAC0832数模转换器组成数字式低频信号发生器。
函数信号发生器,它具有价格低、性能高和在低频范围内稳定性好、操作方便、体积小、耗电少等特点。
由于采用了uA741运算放大器和滤波电路,使其电路更加具有较高的稳定性能,性能比高。
此电路清晰,出现故障容易查找错误,操作简单、方便。
通过按键控制可产生方波、三角波、正弦波,同时用LCD1602显示幅值和频率。
所产生的波形V P-P范围为0~5 V,由倍频电路使频率范围为100Hz~ 1MHz,波形准确并且平滑。
本系统设计简单、性能优良,具有一定的实用性。
关键词:单片机;倍频;调频;调幅;LCD1602AbstractWaveform generator is a common signal source, widely used in electronic circuits, automatic control systems and experiments in areas such as teaching .Function generator used as a control core STC89C52 single-chip, external digital / analog converter circuit (DAC0832),operational amplifier circuit (uA741), frequency-doubling circuit (CD4046), and buttons and LCD display circuit. STC89C52 circuit and a single-chip digital DAC0832 Digital to Analog component of low-frequency signal generator. Function signal generator, it has a low price, high-performance and low-frequency range of good stability, convenient operation, small size, low power consumption and so on. UA741 As a result of the operational amplifier and filter circuit to circuit with high stability and more performance, high performance. This circuit clears, easy to find failure error, simple and convenient.Keys can be generated through control of square wave, triangle wave, sine wave, LCD display at the same time with the amplitude and frequency. Waveform generated by VP-P range of 0 ~ 5 V, so that by the multiplier circuit for frequency range 92.592593Hz ~ 217.3913Hz, accurate and smooth waveform. The system is designed to be simple, excellent performance, with a certain degree of practicality.Key words:microcomputer; frequency; FM; AM; LCD1602目录一、系统方案 (5)1、1 信号发生部分 (5)1、2显示部分 (6)二、系统设计 (6)2、1 总体设计思路 (6)2、2总体框图 (6)三、硬件电路 (7)3、1单片机电路 (7)3、1、1 功能与基本原理 (7)3、1、2 资源分配 (8)3、2波形转换(D/A)电路 (8)3、3显示接口电路 (9)3、4倍频电路 (9)四、软件设计及流程 (10)五、调试与测试结果 (11)5、1 硬件调试 (11)5、2 软件调试 (11)六、结束语 (11)七、参考文献 (12)八、附录 (12)8、1 元件清单 (12)8、2 电路原理图 (13)8、3 程序清单 (14)一、系统方案题目要求实现的任务是设计并制作一个函数信号发生器,能产生正弦波,方波,三角波,要求不用DDS和专用的波形产生芯片,频率范围100Hz~1MHz,幅度0~5V,方波占空比可调,实时显示频率和幅度。
单片机(C51)实验报告
实验一熟悉ADEK单片机教学实验系统一、实验目的1.熟悉 ADEK 单片机教学实验系统和仿真器的结构和功能。
2.了解如何安装 51MINI 仿真器驱动程序。
二、ADEK 单片机教学实验系统组成图 1-1 AEDK 单片机教学实验系统外观图如图 1-1 所示, ADEK-EAT598 单片机教学实验系统遵循了模块化的设计思路,有丰硕的接口,而且具有良好的扩展性,以下为组成模块和利用的要紧芯片。
1.步进电机2.直流电机3.温度操纵( DS18B20、热敏电阻 B3470)4.模数转换( ADC0809)5.串行实验区( EEPROM X25045、 AT24C08、时钟芯片 HT1380、数模转换 TLC5615、模数转换 TLC1543)6. RAM( HM62256)7. ROM( M27C512)8.地址译码( 74LS138)9.数模转换( DAC0832)10.仿真机通信口:原厂仿真器的串口通信口,这部份功能已不用。
11.串并转换( 74LS164)12.频率源( CD4020)213.扩展输出( 74LS273)14.扩展输入(74LS244)15.电源开关16.液晶显示(MSC-G12232DYEW-7N)17.语音录放(ISD1730)18.扩展通信口(D8251、HIN232)19.八位开关20.交通灯21.单脉冲(HD74LS240)22.继电器(946H-1C-5D)23.电辅音调(9012)24.蜂鸣器25.光耦(TLC521)26.电位器27.点阵显示28.PS2 接口29.并行接口(8255)30.键盘显示(8279)31.扩展实验区32.打印机接口33.单片机核心板(EAT598_31)34.带USB 接口的51MINI 仿真器三、实验内容1.熟悉整个实验箱的硬件资源。
2.利用51MINI仿真器连接电脑,在电脑的设备治理器中可找到以下图所示的COM口。
实验二Keil集成开发环境练习一、实验目的1.把握开发环境Keil的安装方式。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
微控制器技术创新设计实验报告姓名:学号:班级:
一、项目背景
信号发生器也叫做振荡器或是信号源,在现在的科技生产实践中有着广泛而重要的应用。
现在的特殊波形发生器在价格上不够经济,有些昂贵。
而基于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();
}
}
}
五、实验结果
六、项目总结
通过这次实验设计,锻炼我们综合运用知识,提出问题,分析问题,及解决问题的能力。
我感慨颇多,在着手设计的这段日子里,我又学到了很多东西。
特别是理论联系实际。
我认为掌握单片机的应用及开发技术是最基本的也是必要的。
单片机是以后从事相关嵌入式研发最为基本的入门芯片。
所以学好单片机是我们电子类的必要任务。
通过这次单片机课程设计的顺利完成,离不开付老师指导,也离不开班上同学的耐心帮助。
在此,我对所有帮助过我的老师和同学表示我真挚的感谢!。