文档库 最新最全的文档下载
当前位置:文档库 › 基于单片机的信号发生器(完整电路_程序)

基于单片机的信号发生器(完整电路_程序)

基于单片机的信号发生器(完整电路_程序)
基于单片机的信号发生器(完整电路_程序)

电子与信息工程学院综合实验课程报告

实验名称:基于单片机的信号发生器的设计与实现班级:10电工2班

学号:20101851046

姓名:李俊

指导教师:

时间:

摘要

本文以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的波形。但是该方案也不能产生任意波形(例如梯形波),并且价格昂贵。

方案四:采用AT89C51单片机和DAC0832数模转换器生成波形,加上一个低通滤波器,生成的波形比较纯净。它的特点是可产生任意波形,频率容易调节,频率能达到设计的500HZ以上。性能高,在低频范围内稳定性好、操作方便、体积小、耗电少。

经比较,方案四既可满足课程设计的基本要求又能充分发挥其优势,电路简单,易控制,性价比高,所以采用该方案.

2.1.2改变幅度方案:

方案一:可以将送给DA的数字量乘以一个系数,这样就可以改变DA输出电流的幅度,从而改变输出电压;但是这样做有很严重的问题,单片机在做乘法运算时需要很长的时间,这样的话输出波形的频率就会很低,达不到至少500HZ的要求;并且该方案的输出电压做不到连续可调,当DA的输入数字量比较小时,输出的波形失真就会比较严重。

方案二:将输出电压通过一个运算放大器的放大。这样还有个优点是幅度连续可调。

经比较,方案二既可满足课程设计的基本要求,并且电路也挺简单。

2.2工作原理

数字信号可以通过数/模转换器转换成模拟信号,因此可通过产生数字信号再转换成模拟信号的方法来获得所需要的波形。89C51单片机本身就是一个完整的微型计算机,具有组成微型计算机的各部分部件:中央处理器CPU、随机存取存储器RAM、只读存储器ROM、I/O接口电路、定时器/计数器以及串行通讯接口等,只要将89C51再配置键盘及、数模转换及波形输出、放大电路等部分,即可构成所需的波形发生器,其信号发生器构成系统框图如下图所示。

单片机

数模转换电路

放大电路

低通滤波

按键电路电源

波形ROM 表

波形输出

系统框图

89C51是整个波形发生器的核心部分,通过程序的编写和执行,产生各种各样的信号,并从键盘接收数据,进行各种功能的转换和信号幅度的调节。当数字信号电路到达转换电路,将其转换成模拟信号也就是所需要的输出波形。

波形ROM 表是将信号一个周期等间距地分离成64个点,储存在单片机得RON 内。具体ROM 表是通过MATLAB 生成的,例如正弦表,MATLAB 生成的程序如下:

x=0:2*pi/64:2*pi; y=round(sin(x)*127)+128

3单元电路设计与分析

3.1.1主控电路

设计中主要采用STC89C51型单片机,它具有如下优点:(1)拥有完善的外部扩展总线,通过这些总线可方便地扩展外围单元、外围接口等。(2)该单片机内部拥有4K 字节的FLASH ROM 程序存储器空间和256字节的RAM 数据存储空间,完全可以满足程序的要求。由于该芯片可电擦写,故可重复使用。如果更改程序内容,可将芯片拿下重新烧写。(3)该单片机与工业标准的MCS -51型机的指令集和输出引脚兼容。

中断系统是使处理器具有对外界异步事件的处理能力而设置的。当中央处理器CPU 正在

处理某件事的时候外界发生了紧急事件,要求CPU 暂停当前的工作,转而去处理这个紧 急事件。

在波形发生器中,用两个开光直接与外部中断0和外部中断1的管脚相连,其中S1开光用来改变波形,S2开光用来改变频率。在程序主函数中,我们写了个死循环一直输出一个默认的波形,当S1或S2按下又抬起时,程序会暂时跳

出死循环,进入中断处理程序,从而对波形和频率进行改变。

时钟电路。由于频率较大时,三角波、正弦波、方波等波中每一点延时时间为几微秒,故延时时间还要加上指令时间即可得到指定频率的波形,该电路用11.0592MHz晶振。

主控电路图

3.1.2 数/模转换电路

由于单片机产生的是数字信号,要想得到所需要的波形,就要把数字信号转换成模拟信号,所以该文选用价格低廉、接口简单、转换控制容易并具有8位分辨率的数模转换器DAC0832。DAC0832主要由8位输入寄存器、8位DAC寄存器、8位D/A转换器以及输入控制电路四部分组成。但实际上,DAC0832输出的电量也不是真正能连续可调,而是以其绝对分辨率为单位增减,是准模拟量的

输出。DAC0832是电流型输出,在应用时外接运放使之成为电压型输出。

根据对DAC0832的数据锁存器和DAC寄存器的不同的控制方式,DAC0832有三种工作方式:直通方式、单缓冲方式和双缓冲方式。本设计选用直通方式。

DAC0832的数据口和单片机的P0口相连。

CSDA:片选信号输入线(选通数据锁存器),低电平有效;

WR:数据锁存器写选通输入线,负脉冲(脉宽应大于500ns)有效。由ILE、CS、WR1的逻辑组合产生LE1,当LE1为高电平时,数据锁存器状态随输入数据线变换,LE1的负跳变时将输入数据锁存;

数模转换电路

3.1.3运算放大电路和低通滤波电路

LM324的5管脚与DAC0832的(IOUT2)12管脚相连,LM324的6管脚与DAC0832的(IOUT1)11管脚相连,LM324的7管脚与DAC0832的REF(9)管脚相连.

第一级运算放大器的作用是将DAC0832输出的电流信号转化为电压信号V1,第二级运算放大器的作用是将V1通过反向放大电路-(R2/R1)倍。

题目要求输出的电压在0-5V可调,而V1的电压大约是5V,所以R1选择5K的电阻,R2选择10K的电位器,这样最大的输出电压为5*(10/2)=10,最小电压为0,可以实现题目要求的0-5V。

在第二个运算放大器的输出端连了一个低通滤波器。如果不加低通滤波器,也能够生成波形,但是产生的信号中毛刺很多,加一个低通滤波器不仅起到的滤波的作用,还起到了平滑的作用。低通滤波器的截止频率F=1/(2*pi*R3*C6),这里我们选择R3 为100欧姆电阻,C6为104电容,截止频率F=16KHZ。实验表明,此时的输出波形效果不错。

3.1.4 串口通信电路

通用异步收发器(UART)是一种串行接口,一般微处理器中都包含这种外设接口。异步串行接口提供了一种简单的途径,使两个器件无需共享同一个时钟信号就能进行通信。如果再加入一个合适的电平转换器MAX232,串口就能能用在RS232和RS485等网络中实现通信,或者与计算机的COM端口连接。串口只需两根信号线(RX和TX)即可实现,而且只要两端器件都采用同样的位格式和波特率,那么它们无需其它任何对方的信息就可以成功传输数据。

串口通信电路图

3.2系统软件设计

软件设计上,根据功能分了几个模块编程。模块主要有:主程序模块、外部中断0模块,外部中断1模块。

主程序:

主程序先是进行一些初始化的工作,然后根据波形标志a,b,c,d,e的值进入相应的while 循环。这样写的好处是输出的波形频率可以790多HZ。在while循环中,单片机根据地址标志位不停低查表,然后把查得的值赋给DAC0832的数据口,然后地址标志位加一,并判断地址标志位是否等于64,如果是就置0再往下执行,如果不是直接往下执行。然后根据频率标志位进行相应的延时。

初始化

开始

根据地址标志位查表

while 循环

输出数字量给DAC0832数据口

根据a,b,c,d,e 的值进入相

应的while 循环

地址标志位加1

地址标志位是否等于64

地址标志位置0

相应延时(对应频

率)

主程序流程图

中断服务程序:

本程序中两个外部中断分别起到了控制波形和频率的作用。在程序中还加入了消抖部分。

外部中断1

是否有中断信

频率标志位加1

频率标志位是否等于8

频率标志位置0

根据频率标志做

相应处理外部中断0

是否有中断信

波形标志位加1

波形标志位是否等于5

波形标志位置0

根据波形标志做

相应处理

4安装调试及测量数据分析

4.1调试过程;

1.不通电,用万用表根据电路图仔细检查各线路连接是否正常。

2.首先是调试单片机部分,DA和运算放大器芯片不接。用STC_ISP_V483软件通过串口下程序。看是否可以正常下程序。

3.当可以正常下程序时,给51单片机下一个让所有I/0口一会儿输入0,延时,再输出1,以此类推。用万用表测量各I/O口得电压是不是一会儿高,一会儿低。4.安上DA和运算放大器芯片,给单片机下一个输出正弦波的测试程序,通过示波器看输出是否正常。

5.给单片机下一个完整的程序,分别按下S1,看波形是否改变。按下S2,看频率是否改变。

4.2频率的测量数据:

单位:HZ 周期T 2T 3T 4T 5T 6T 7T 8T

理论值798.6 399.3 266.2 199.7 159.7 133.1 114.1 99.8

实际值798.6 399.6 266.5 199.9 159.9 133.3 114.2 99.9

4.3出现的问题与解决的方法:

1.

调试单片机的串口时,发现不能正常的下程序。我想可能是单片机坏了借了一块学习板测试了一下单片机芯片,发现可以正常下载。这说明很可能是MAX232的电路出了问题。我仔细查看了电路图,又上网查了下其他的MAX232的电路图,发现我的电路图和别人的不一样。我是按照郭天翔的那本《新概念51单片机C语言教程入门、提高、开发、拓展全》第130页的串口电路画的图,电路图中MAX232的TIOU1接串口的第3脚。而其他书上有些电路图却是MAX232的TIOU1接到了串口的第2脚。于是我将MAX232的TIOU1接串口的第2脚,再下程序,终于可以正常下载了。

2.刚开始写的测试程序输出的波形失真很大。我想可能是波形的ROM表里的数据值过小,导致DA输出的误差很大。因而卧将波形的ROM表里的数据值调大,在测试时发现波形变得好多了。

3.

调试波形的时候我发现矩形波的失真比较大。我想到可能是低通滤波器的截止频率太低了,因而我将RC低通滤波器的电阻由1K换成了100欧姆,效果好了很多。

4.4系统仿真波形:

矩形波

锯齿波

正弦波

4.5效果分析:

由4.2的频率理论值与实际值,可知频率在T,2T,3T,4T,5T,6T,7T,8T上频率误差很小。

最终的波形输出效果也很不错。

4.6测量仪器

示波器

直流稳压电源

万用表

5结束语

基于单片机的信号发生器设计,这个信号发生器的设计中涉及到一个典型的控制过程。通过单片机控制一个模数转换器DAC0832产生所需要的电流,然后使用运算放大器LM324可以将其电流输出线性地转换成电压输出,再将电压经过运算放大器的放大,可以得到足够幅度的信号。通过程序的控制,可以产生一系列有规律的波形。这样一个信号发生装置在控制领域有相当广泛的应用范围。

最终做出来的信号发生器满足了题目中的所有要求:

1.产生五种波形。正弦波、三角波、矩形波、梯形波,锯齿波。

2.最大频率为798.6HZ。并且频率可按按1T,2T,3T,4T,5T,6T,7T,8T变化。

3.幅度可调,峰峰值在0——5V之间变化。

当然还是存在不足的地方,比如不能实现频率的按一个小的步进调整。并且当频率太小时矩形波会有些失真。

信号发生器可以生成更多的波形,只需要再加些波形表即可。

在这里得感谢学校为我们提供个这样一个实践的机会,当然还得感谢实验室指导老师们的细心指导。

参考文献:

[1] 郭天翔.新概念51单片机C语言教程入门、提高、开发、拓展全.北京.电子工业出版社2009.1

[2] 童诗白.模拟电路技术基础[M].北京:高等教育出版社,2000.171~202.

附录

1:总电路图

12

附录2:源程序

#include

#define uchar unsigned char

#define uint unsigned int

sbit csda=P2^2;

sbit wr=P2^1;

sbit s1=P3^2;

sbit s2=P3^3;

uchar k=0,p=0,delay=0;

uchar bxxz=0;pinglv=0;

uchar a=1,b=0,c=0,d=0,e=0;

uchar code sin[64]={

135,145,158,167,176,188,199,209,218,226,234,240,245,249,252,254,254,253,251,247,243,237,23 0,222,213,204,193,182,170,158,

146,133,121,108,96,84,72,61,50,41,32,24,17,11,7,3,1,0,0,2,5,9,14,20,28,36,45,55,66,78,90,102,11 4,128

};

uchar code juxing[64]={

255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,25 5,255,255,255,

255,255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0

};

uchar code juchi[64]={

0,4,8,12,16,20,24,28,32,36,40,45,49,53,57,61,65,69,73,77,81,85,89,93,97,101,105,109,113,117,12 1,125,130,134,138,142,

146,150,154,158,162,166,170,174,178,182,186,190,194,198,202,206,210,215,219,223,227,231,23 5,239,243,247,251,255

};

uchar code tixing[64]={

0,13,26,39,52,65,78,91,104,117,130,143,156,169,182,195,208,221,234,247,247,247,247,247,247, 247,247,247,247,247,247,247,247,247,247,247,247,247,

247,247,247,247,247,247,247,242,229,216,203,190,177,164,151,138,125,112,99,86,73,60,47,34,2 1,8

};

uchar code sanjiao[64]={

0,8,16,24,32,40,48,56,64,72,80,88,96,104,112,120,128,136,144,152,160,168,176,184,192,200,208 ,216,224,232,240,248,

248,240,232,224,216,208,200,192,184,176,168,160,152,144,136,128,120,112,104,96,88,80,72,64, 56,48,40,32,24,16,8,0

};

void delay1()

{

int a,b;

for(a=1;a>0;a--)

for(b=122;b>0;b--);

}

void int0() interrupt 0

{

EX0=0;

delay1();

if(s1==0){

bxxz++;

if(bxxz==5)

bxxz=0;

switch(bxxz)

{

case 0 :

{a=1,b=0,c=0,d=0,e=0;}

break;

case 1 :

{a=0,b=1,c=0,d=0,e=0;}

break;

case 2 :

{a=1,b=0,c=1,d=0,e=0;}

break;

case 3 :

{a=0,b=0,c=0,d=1,e=0;}

break;

case 4 :

{a=0,b=0,c=0,d=0,e=1;}

break;

}

delay1();

while(!s1);

}

while(!s1);

EX0=1;

}

void int1() interrupt 2

{

EX1=0;

delay1();

if(s2==0){

p++;

if(p==8)

p=0;

switch(p)

{

case 1 :

pinglv=3;

break;

case 2 :

pinglv=6;

break;

case 3 :

pinglv=9;

break;

case 4 :

pinglv=12;

break;

case 5 :

pinglv=15;

break;

case 6 :

pinglv=18;

break;

case 7 :

pinglv=21;

break;

default :

pinglv=0;

break;

}

delay1();

while(!s2);

}

while(!s2);

EX1=1;

}

void main()

{

csda=0;

wr=0;

EA=1;

IT0=1;

EX0=1;

IT1=1;

EX1=1;

while(1)

{

while(a)

{

delay=pinglv;

P0=sin[k];

k++;

if(k==64)

k=0;

while(delay)

delay--;

}

while(b)

{

delay=pinglv;

P0=juxing[k];

k++;

if(k==64)

k=0;

while(delay)

delay--;

}

while(c)

{

delay=pinglv;

P0=juchi[k];

k++;

if(k==64)

k=0;

while(delay)

delay--;

}

while(d)

{

delay=pinglv;

P0=tixing[k];

k++;

if(k==64)

k=0;

while(delay)

delay--;

}

while(e)

{

delay=pinglv;

P0=sanjiao[k];

k++;

if(k==64)

k=0;

while(delay)

delay--;

}

}

}

基于51单片机的函数信号发生器的设计

龙源期刊网 https://www.wendangku.net/doc/ec16680751.html, 基于51单片机的函数信号发生器的设计 作者:朱兆旭 来源:《数字技术与应用》2017年第02期 摘要:本文所设计的系统是采用AT89C51单片机和D/A转换器件DAC0832产生所需不 同信号的低频信号源,AT89C51 单片机作为主体,采用D/A转换电路、运放电路、按键和LCD液晶显示电路等,按下按键控制生成方波、三角波、正弦波,同时用LCD显示相应的波形,输出波形的周期可以用程序改变,具有线路简单、结构紧凑、性能优越等特点。 关键词:51单片机;模数转换器;信号发生器 中图分类号:TP391 文献标识码:A 文章编号:1007-9416(2017)02-0011-01 1 前言 波形发生器,是一种作为测试用的信号源,是当下很多电子设计要用到的仪器。现如今是科学技术和设备高速智能化发展的科技信息社会,集成电路发展迅猛,集成电路能简单地生成各式各样的波形发生器,将其他信号波形发生器于用集成电路实现的信号波形发生器进行对比,波形质量、幅度和频率稳定性等性能指标,集成电路实现的信号波形发生器都胜过一筹,随着单片机应用技术的不断成长和完善,导致传统控制与检测技术更加快捷方便。 2 系统设计思路 文章基于单片机信号发生器设计,产生正弦波、方波、三角波,连接示波器,将生成的波形显示在示波器上。按照对作品的设计研究,编写程序,来实现各种波形的频率和幅值数值与要求相匹配,然后把该程序导入到程序存储器里面。 当程序运行时,一旦收到外界发出的指令,要求设备输出相应的波形时,设备会调用对应波形发生程序以及中断服务子程序,D/A转换器和运放器随之处理信号,然后设备的端口输出该信号。其中,KEY0为复位键,KEY1的作用是选择频率的步进值,KEY2的作用是增加频 率或增加频率的步进值,KEY3的作用是减小频率或减小频率的步进值,KEY4的作用是选择三种波形。103为可调电阻,用于幅值的调节。自锁开关起到电源开关的作用。启动电源,程序运行的时候,选择正弦波,红色LED灯亮起;选择方波,黄色LED灯亮起;选择三角波,绿色LED灯亮起。函数信号发生器频率最高可达到100Hz,最低可达到10Hz,步进值0.1- 10Hz,幅值最高可到3.5V。系统框图如图1所示。 3 软件设计

(完整word版)基于单片机的信号发生器开题报告

内蒙古工业大学本科生毕业设计(论文)开题报告

注:表格根据所填内容可进行调整,可多页。 一、设计总体方案 利用AT89S52 单片机采用程序设计方法产生锯齿波,正弦波,矩形波,方波四种波形,再通过D/A 转换器DAC0832将数字信号转换成模拟信号,滤波放大,最终由示波器显示出来,通过键盘来控四种波形的类型,频率变化,最终输出显示其各自的类型及数值

图4.1 硬件原理框图 二.硬件各单元电路方案设计与选择 1、单片机的选择 方案一:AT89S52芯片中只有一路模拟输出或几路模拟信号非同步输出,这种情况下CPU对DAC0832 执行一次写操作,则把一个数据直接写入DAC寄存器,DAC0832的输出模拟信号随之对应变化。输出波形稳定,精度高,滤波好,抗干扰效果好,连接简单,性价比高。 方案二:C8051F005单片机是完全集成的混合信号系统级芯片,具有与8051兼容的微控制器内核,与MCS-51指令集完全兼容。除了具有标准8052的数字外设部件,片内还集成了数据采集和控制系统中常用的模拟部件和其他数字外设及功能部件,而且执行速度快。但其价格较贵 方案三:采用单片机编程的方法来实现。该方法可以通过编程的方法来控制信号波形的频率和幅度,而且在硬件电路不变的情况下,通过改变程序来实现频率的变换。此外,由于通过编程方法产生的是数字信号,所以信号的精度可以做的很高。 以上两种方案综合考虑,选择方案一 2.键盘设计方案比较 方案一:矩阵式键盘。矩阵式键盘的按键触点接于由行、列母线构成的矩阵电路的交叉处。当键盘上没有键闭合时,所有的行和列线都断开,行线都呈高电平。当某一个键闭合时,该键所对应的行线和列线被短路。 方案二:独立式键盘。独立式键盘具有硬件与软件相对简单的特点,其缺点是按键数量较多时,要占用大量口线。 以上两种方案综合考虑,选择方案二。 3、D/A转换部分

几种简单的函数信号发生器电路图分析

几种简单的函数信号发生器电路图分析 时间:2012-01-10 15:30 作者:赛微编辑来源:赛微电子网 引言 随着模拟电路技术和电力电子技术发展,电路设计中对信号的精度、稳定性、抗干扰能力等要求进一步提高,电子行业中将一些功能进行集成到IC芯片供其他的厂家来使用。在电路设计中,我们除了正常的电源输入之外,还需要提供三角波、方波、正弦波、脉冲波、单次脉冲等特殊的波形来给某个电路提供输入。 这种可以提供三角波、方波、正弦波、脉冲波、单次脉冲等特殊的波形的电路或者仪器(函数信号发生器的种类),我们可以称之为函数信号发生器,它对电子工程师设计的整个系统来说,发挥着重要的作用,它具有各种内置信号、自定义的任意波形和脉冲能力,能帮助您验证设计,检验新的构想,从而让整个设计更具有可靠性。 本文结合几种简单的函数信号发生器电路图,并对其工作原理(函数信号发生器原理)、可以实现的功能和性能、电路特点等方面做了详细的分析,供电子发烧友参考。 程控函数信号发生器电路图 它主要由主控制器LPC2114、MAX038、D/A转换器以及八选一模拟开关CD4051LED显示、键盘、波段切换,波形处理和峰值检波等部分组成,研究了LPC2114通过D/A转换器实现对MAX038频就绪和占空比的调控方法,并给出

了在0.1Hz~20MHz内产生精确的正弦波、方波和三角波的方法。此外,它还具有可调范围大、精度高、信号稳定等特点,可以应用于各种电子测量和控制场合。 LPC2114主要通过D/A转换器TLC5618、DAC0832和八选一模拟开关CD4051对MAX038输出的波形、频率以及占空比进行控制。通过对A1和A0端的不同设置来选择不同的波形。当A1为高电平、A0为任意时,输出波形为正弦波;当A1、A0同时为低电平时,输出波形为方波;当A1为低电平、A0为高电平时,输出波形为三角波。 MAX038输出波形的幅值为2 V(P-P),最大输出电流为+20 mA,输出阻抗的典型值为0.1 Ω。可直接驱动100 Ω的负载。为了得到更大的输出幅度和驱动能力,就需要对波形信号作进一步处理,下图为一个波形输出与驱动电路。

基于单片机的低频信号发生器设计毕业设计论文

淮阴工学院 毕业设计说明书(论文) 作者: 学号: 学院: 电子与电气工程学院 专业: 电子信息工程 题目: 基于单片机的低频 信号发生器 张月红讲师 指导者: (姓名) (专业技术职务) 评阅者: (姓名) (专业技术职务) 年月

毕业设计说明书(论文)中文摘要

毕业设计说明书(论文)外文摘要

淮阴工学院毕业设计说明书(论文)第Ⅰ页共Ⅰ页4 目录 1 绪论................................................. 错误!未定义书签。 1.1 信号发生器综述..................................... 错误!未定义书签。 1.2信号发生器的发展历史............................... 错误!未定义书签。 2 硬件设计............................................. 错误!未定义书签。 2.1总体设计框图....................................... 错误!未定义书签。 2.2单片机最小系统..................................... 错误!未定义书签。 2.3 数模转换模块....................................... 错误!未定义书签。 2.4运算放大模块....................................... 错误!未定义书签。 2.5 键盘电路设计模块................................... 错误!未定义书签。 2.6显示电路设计模块................................... 错误!未定义书签。 3 软件设计............................................. 错误!未定义书签。 3.1 主程序流程图....................................... 错误!未定义书签。 3.2 子程序流程图....................................... 错误!未定义书签。 4 系统调试............................................. 错误!未定义书签。 4.1软件调试........................................... 错误!未定义书签。 4.2生成hex文件....................................... 错误!未定义书签。 4.3 Protues硬件电路仿真调试........................... 错误!未定义书签。 结论................................................... 错误!未定义书签。致谢................................................... 错误!未定义书签。参考文献............................................... 错误!未定义书签。附录................................................... 错误!未定义书签。附录A 电路原理图.仿真图............................... 错误!未定义书签。附录B 程序清单........................................ 错误!未定义书签。

信号发生器电路的焊接与调试-电路图

一、信号发生器电路安装与调试考核评分表 准考证号姓名规定时间分钟 开始时间结束时间实用时间得分 考核内容及要求配分评分标准扣分 1 元器件清点检查:在10分钟内对所有元 器件进行检测,并将不合格元器件筛选出来进 行更换,缺少的要求补发。 10 超时更换或要求补发按损坏 元件扣分,扣3分/个。 2 安装电路:按装配图进行装接,要求不装 错,不损坏元器件,无虚焊,漏焊和搭锡,元 器件排列整齐并符合工艺要求。 30 漏装,错装或虚焊、漏焊、 搭锡,扣2分/个,安装不整 齐和不符合工艺要求的扣1 分/处,损坏元件扣3分/个。 3 电源电路:接通交流电源,测量交流电压 和各直流电压+12V、-12V、V CC 、-5V。 信号发生器电路:接通+12V、-12V、V CC 、 -5V电源。测量函数信号波形:方波、正弦波、 三角波形。 20 电压测试方法不正确扣10 分,测量值有误差扣5分。 4 选择C=10uf,调节RW13、RW14、RW15, 记录方波的占空比: 1、 2、 3、 10 不会用示波观察输出信号波 形扣10分, 调节不正确扣5分, 波形记录不正确扣5分。 5 改变电容:100nf——100uf,并调节RW11, 记录正弦波输出频率f: 1、 2、 3、 10 最大不失真电压测试方法不 正确扣5分,测量值不准确 扣5分,不会计算最大不失 真功率扣5分。 6 调节RW21、RW22, 记录正弦波输出Vpp: 1、 2、 3、 10 不会测试功放电路的灵敏度 扣5分,不会计算电压放大 倍数扣5分。 7 调节电位器RW16、RW17, 记录正弦波形的失真: 1、 2、 3、 10 测量方法不正确扣5分, 测量数据每处2分,不会绘 制频响曲线扣5分 开始时间:结束时间:实用时间:

基于51单片机的函数信号发生器

基于51单片机的函数信号发生器 设计方案 利用单片机AT89C52采用程序设计方法产生锯齿波、三角波、正弦波、方波四种波形,再通过D/A转换器DAC0832将数字信号转换成模拟信号,滤波放大,最终由示波器显示出来,能产生10Hz—10kHz 的波形。通过键盘来控制四种波形的类型选择、拨码开关控制频率的变化,并通过液晶屏1602显示其各自的类型以及数值,系统大致包括信号发生部分、数/模转换部分以及液晶显示部分三部分,其中尤其对数/模转换部分和波形产生和变化部分进行详细论述。 设计要求 1)、利用单片机采用软件设计方法产生四种波形 2)、四种波形可通过键盘选择 3)、波形频率可调 4)、需显示波形的种类及其频率 方案设计 1 信号发生电路方案

通过单片机控制D/A,输出四种波形。此方案虽输出的波形不够稳定,抗干扰能力弱,不易调节,但此方案电路简单、成本低。因此选用此方案。 2 单片机的选择 AT89C52单片机是一种高性能8位单片微型计算机。它把构成计算机的中央处理器CPU、存储器、寄存器、I/O接口制作在一块集成电路芯片中,从而构成较为完整的计算机、而且其价格便宜。 3 显示方案 采用LCD液晶显示器1602。其功率小,效果明显,显示编程容易控制,可以显示字母。 4 键盘方案论证 采用独立式键盘。独立式键盘具有硬件与软件相对简单的特点,其缺点是按键数量较多时,要占用大量口线。 总体系统设计 该系统采用单片机作为数据处理及控制核心,由单片机完成人机界面、系统控制、信号的采集分析以及信号的处理和变换,采用按键

输入,利用液晶显示电路输出数字显示的方案。将设计任务分解为按键电路、液晶显示电路等模块。下图为系统的总体框图: 总体方框图 硬件实现及单元电路设计 1单片机最小系统的设计 AT89C52是片内有ROM/EPROM的单片机,因此,这种芯片构成的最小系统简单﹑可靠。用80C51单片机构成最小应用系统时,只要将单片机接上时钟电路和复位电路即可,如图(2) 89C51单片机最小系统所示。由于集成度的限制,最小应用系统只能用作一些小型的控制单元。其应用特点: (1)有可供用户使用的大量I/O口线。

基于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 器件清单......................................................

DDS信号发生器电路设计

1. 信号产生部分 1.1 频率控制字输入模块 library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; use ieee.std_logic_arith.all; entity ddsinput is port(a,b,c,clk,clr:in std_logic; q1,q2,q3,q4,q5:buffer unsigned(3 downto 0)); end ddsinput; architecture a of ddsinput is signal q:std_logic_vector(2 downto 0); begin q<=c&b&a; process(cp,q,clr) begin if clr='1'then q1<="0000";q2<="0000";q3<="0000";q4<="0000";q5<="0000"; elsif clk 'event and clk='1'then

DDS信号信号发生器电路设计 case q is when"001"=>q1<=q1+1; when"010"=>q2<=q2+1; when"011"=>q3<=q3+1; when"100"=>q4<=q4+1; when"101"=>q5<=q5+1; when others=>NULL; end case; end if; end process; end a; 1.2 相位累加器模块 library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; use ieee.std_logic_arith.all; entity xiangwei is port(m:in std_logic_vector(19 downto 0); clk,clr:in std_logic; data:out std_logic_vector(23 downto 0)); end xiangwei; architecture a of xiangwei is signal q:std_logic_vector(23 downto 0); begin process(clr,clk,m,q) begin if clr='1'then q<="000000000000000000000000"; elsif (clk'event and clk='1')then q<=q+m; end if; data<=q; end process; end a;

基于51单片机函数信号发生器设计.

摘要: 本系统利用单片机AT89S52采用程序设计方法产生锯齿波、正弦波、矩形波三种波形,再通过D/A转换器DAC0832将数字信号转换成模拟信号,滤波放大,最终由示波器显示出来,能产1Hz—3kHz的波形。通过键盘来控制三种波形的类型选择、频率变化,并通过液晶屏1602显示其各自的类型以及数值,系统大致包括信号发生部分、数/模转换部分以及液晶显示部分三部分,其中尤其对数/模转换部分和波形产生和变化部分进行详细论述。 关键词:单片机AT89S52、DAC0832、液晶1602 Abstract: this system capitalize on AT89s52,it makes use of central processor to generate three kinds of waves, they are triangle wave, and use D/A conversion module, wave generate module and liquid crystal display of 1602, it can have the 1Hz-3KHz profile. In this system it can control wave form choosing, frequency, range,can have the sine wave, the square-wave, the triangular wave. Simultaneously may also take the frequency measurement frequency,and displays them through liquid crystal display of 1602. this design includes three modules. They are D/A conversion module, wave generate module and liquid crystal display of LED module. In this design, the wave generator into wave form module and D/A conversion module are discussed in detail. key word: AT89S52, DAC0832, liquid crystal 1602. 目录

单片机低频信号发生器课程设计.

目录 一、题目的意义 (1) 二、本人所做的工作 (1) 三、课设要求 (2) 四、课设所需设备及芯片功能介绍 (2) 4.1、所需设备 (2) 4.2、芯片功能介绍 (2) 五、总体功能图及主要设计思路 (5) 5.1、总体功能图 (5) 5.2、主要设计思想 (5) 六、硬件电路设计及描述 (7) 6.1、硬件原理图 (7) 6.2、线路连接步骤 (7) 七、软件设计流程及描述 (7) 7.1、锯齿波的实现过程 (7) 7.2、三角波的实现过程 (8) 7.3、梯形波的实现过程 (9) 7.4、方波的实现过程 (11) 7.5、正弦波的实验过程 (12)

7.6、通过开关实现波形切换和调频、调幅 (13) 八、程序调试步骤与运行结果 (15) 8.1、调试步骤 (15) 8.2、运行结果 (15) 九、课程设计体会 (17) 十、参考文献 (18) 十一、源代码及注释 (18) 一、题目的意义 (1)、利用所学单片机的理论知识进行软硬件整体设计,锻炼学生理论联系实际、提高我们的综合应用能力。 (2)、我们这次的课程设计是以单片机为基础,设计并开发能输出多种波形(正弦波、三角波、锯齿波、方波、梯形波等)且频率、幅度可变的函数发生器。 (3)、掌握各个接口芯片(如0832等的功能特性及接口方法,并能运用其实现一个简单的微机应用系统功能器件。 (4)、在平时的学习中,我们所学的知识大都是课本上的,在机房的练习大家也都是分散的对各个章节的内容进行练习。因此,缺乏一种系统的设计锻炼。在课程所学结束以后,这样的课程设计十分有助于学生的知识系统的总结到一起。 (5)、通过这几个波形进行组合形成了一个函数发生器,使得我对系统的整个框架的设计有了一个很好的锻炼。这不仅有助于大家找到自己感兴趣的题目,更可以锻炼大家单片机知识的应用。 二、本人所做的工作

简易信号发生器单片机课程设计报告

课程设计(论文)任务书 电气学院电力系统及其自动化专业12(1 )班 一、课程设计(论文)题目:简易信号发生器设计 二、课程设计(论文)工作自 2015年1 月12 日起至2015 年 1月16 日止。 三、课程设计(论文) 地点:电气学院机房 10-303 四、课程设计(论文)内容要求: 1.课程设计的目的 (1)综合运用单片机原理及应用相关课程的理论知识和实际应用知识,进行单片机应用系统电路及程序设计,从而使这些知识得到进一步的巩固,加深和发展;(2)熟悉和掌握单片机控制系统的设计方法,汇编语言程序设计及proteus 软件的使用; (3)通过查阅图书资料、以及书写课程设计报告可提高综合应用设计能力,培养独立分析问题和解决问题的能力。 2.课程设计的内容及任务 (1)可产生频率可调的正弦波(64个点)、方波、锯齿波或三角波。 (2)显示出仿真波形。 (3)通过按键选择输出波形的种类。 (4)在此基础上使输出波形的幅值可控。

3.课程设计说明书编写要求 (1)设计说明书用A4纸统一规格,论述清晰,字迹端正,应用资料应说明出处。(2)说明书内容应包括(装订次序):题目、目录、正文、设计总结、参考文献等。应阐述整个设计内容,要重点突出,图文并茂,文字通畅。 (3)报告内容应包括方案分析;方案对比;整体设计论述;硬件设计(电路接线,元器件说明,硬件资源分配);软件设计(软件流程,编程思想,程序注释,) 调试结果;收获与体会;附录(设计代码放在附录部分,必须加上合理的注释)(4) 学生签名: 2015年1月16 日 课程设计(论文)评审意见 (1)总体方案的选择是否正确;正确()、较正确()、基本正确()(2)程序仿真能满足基本要求;满足()、较满足()、基本满足()(3)设计功能是否完善;完善()、较完善()、基本完善()(4)元器件选择是否合理;合理()、较合理()、基本合理()(5)动手实践能力;强()、较强()、一般()(6)学习态度;好()、良好()、一般()(7)基础知识掌握程度;好()、良好()、一般()(8)回答问题是否正确;正确()、较正确()、基本正确()、不正确() (9)程序代码是否具有创新性;全部()、部分()、无() (10)书写整洁、条理清楚、格式规范;规范()、较规范()、一般()总评成绩优()、良()、中()、及格()、不及格() 评阅人:

基于51单片机的简易函数信号发生器

创新性实验研究报告实验项目名称_简易函数信号发生器

四、实验内容

2、实验内容 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使之转换为电压输出。最后通过示波器显示输出的波形。

基于51单片机的信号发生器

基于51单片机的函数发生器 以STC89C51单片机为核心设计了一个低频函数信号发生器。信号发生器采用数字波形合成技术,通过硬件电路和软件程序相结合,可输出自定义波形,如正弦波、方波、三角波、三角波、梯形波及其他任意波形,波形的频率和幅度在一定范围内可任意改变。波形和频率的改变通过软件控制,幅度的改变通过硬件实现。介绍了波形的生成原理、硬件电路和软件部分的设计原理。本系统可以产生最高频率798.6HZ的波形。该信号发生器具有体积小、价格低、性能稳定、功能齐全的优点。 关键词:低频信号发生器;单片机;D /A转换; 一.设计任务 设计一个由单片机控制的信号发生器。运用单片机系统控制产生多种波形,这些波形包括方波、三角波、锯齿波、正弦波等。信号发生器所产生的波形的频率、幅度均可调节。 二.系统概述 2.1总体方案: 采用AT89C51单片机和DAC0832数模转换器生成波形,加上一个低通滤波器, 生成的波形比较纯净。它的特点是可产生任意波形,频率容易调节,频率能达到 设计的500HZ以上。性能高,在低频范围内稳定性好、操作方便、体积小、耗电 少。将输出电压通过一个运算放大器的放大来改变幅度。这样还有个优点是幅度 连续可调。 2.2工作原理: 数字信号可以通过数/模转换器转换成模拟信号,因此可通过产生数字信号再转换成模拟信号的方法来获得所需要的波形。89C51单片机本身就是一个完整的微型计算机,具有组成微型计算机的各部分部件:中央处理器CPU、随机存取存储器RAM、只读存储器ROM、I/O接口电路、定时器/计数器以及串行通讯接口等,只要将89C51再配置键盘及、数模转换及波形输出、放大电路等部分,即可构成所需的波形发生器,其信号发生器构成系统框图如下图所示。

基于单片机的信号发生器设计

基于单片机的信号发生器设计

基于单片机的信号发生器 设计

摘要 在介绍MAX038 芯片特性的基础上,论述了采用MAX038 芯片设计数字函数信号发生器的原理以及整机的结构设计。对其振荡频率控制、信号输出幅度控制以及频率和幅度数显的实现作了较详细的论述。该函数信号发生器可输出三角波,方波和正弦波。 本文重点论述了整机通过D/A转换电路控制MAX038的实现过程,D/A转换电路采用了8位4通道的MAX505来实现。在幅度的控制上采用数字电位器AD5171,该芯片是I2C总线方式控制,文中给出了I2C总线的读写控制程序。系统支持按键操作和上位机操作两种模式。 关键词:函数信号;D/A ;单片机控制

Design of Signal Generator System Based on SCM Zisu zhou (College of Zhangjiajie, Jishou University, Jishou,Hunan 416000) Abstract Based on the introduction of MAX038 , we discussed the principle and the whole frame of the digital function signal generator. We described the control of the oscillatory frequent , amplitude and the digital display in detail. Thegenerator can output three kinds of waves : sine wave , square wave , triangle wave. This text has exposition the mirco-computer controls the D/A electric circuit of conversion realize the process. In D/A changing electric circuit adopt the 8 bit 4 channel come to realize. Porentiometer AD5171 is adopted in the control of length. This chip is that I2C bus control way. This system supports key-control or computer-control modes. Key words : function signal ;D/A ;single - chip microprocessor control ;

信号发生器的基本原理

信号发生器的基本原理- 信号发生器使用攻略 信号发生器的基本原理 现代信号发生器的结构非常复杂,与早期的简易信号发生器天差地别,但总体基本结构功能单元还是类似的。信号发生器的主要部件有频率产生单元、调制单元、缓冲放大单元、衰减输出单元、显示单元、控制单元。早期的信号发生器都采用模拟电路,现代信号发生器越来越多地使用数字电路或单片机控制,内部电路结构上有了很大的变化。 频率产生单元是信号发生器的基础和核心。早期的高频信号发生器采用模拟电路LC振荡器,低频信号发生器则较多采用文氏电桥振荡器和RC移相振荡器。由于早期没有频率合成技术,所以上述LC、RC振荡器优点是结构简单,可以产生连续变化的频率,缺点是频率 稳定度不够高。早期产品为了提高信号发生器频率稳定度,在可变电容的精密调节方面下了很多功夫,不少产品都设计了精密的传动机构和指示机构,所以很多早期的高级信号发生器体积大、重量重。后来,人们发现采用石英晶体构成振荡电路,产生的频率稳定,但是石英晶体的频率是固定的,在没有频率合成的技术条件下,只能做成固定频率信号发生器。之后 也出现过压控振荡器,虽然频率稳定度比LC振荡器好些,但依然不够理想,不过压控振荡 器摆脱了LC振荡器的机械结构,可以大大缩减仪器的体积,同时电路不太复杂,成本也不高。现在一些低端的函数信号发生器依然采用这种方式。 随着PLL锁相环频率合成器电路的兴起,高档信号发生器纷纷采用频率合成技术,其 优点是频率输出稳定(频率合成器的参考基准频率由石英晶体产生),频率可以步进调节,频率显示机构可以用数字化显示或者直接设置。早期的高精度信号发生器为了得到较小的频率步进,将锁相环做得非常复杂,成本很高,体积和重量都很大。目前的中高端信号发生器 采用了更先进的DDS频率直接合成技术,具有频率输出稳定度高、频率合成范围宽、信号频谱纯净度高等优点。由于DDS芯片高度集成化,所以信号发生器的体积很小。 信号发生器的工作频率范围、频率稳定度、频率设置精度、相位噪声、信号频谱纯度都与频率产生单元有关,也是信号发生器性能的重要指标。 信号发生器的一大特性就是可以操控仪器输出信号的幅度,信号通过特定组合衰减量的衰减器达到预定的输出幅度。早期的衰减器是机械式的,通过刻度来读取衰减量或输出幅度。现代中高档信号发生器的衰减器单元由单片机控制继电器来切换,向电子芯片化过渡,衰减单元的衰减步进量不断缩小,精度相应提高。大频率范围的高精度衰减器和高精度信号输出属于高科技技术,这也是国内很少有企业能制造高端信号发生器的原因之一。信号发生器的信号输出范围和输出电平的精度和准确度也是标志信号发生器性能的重要指标。

基于51单片机函数信号发生器设计

摘要:本系统利用单片机AT89S52采用程序设计方法产生锯齿波、正弦波、矩形波三种波形,再通过D/A转换器DAC0832将数字信号转换成模拟信号,滤波放大,最终由示波器显示出来,能产1Hz—3kHz的波形。通过键盘来控制三种波形的类型选择、频率变化,并通过液晶屏1602显示其各自的类型以及数值,系统大致包括信号发生部分、数/模转换部分以及液晶显示部分三部分,其中尤其对数/模转换部分和波形产生和变化部分进行详细论述。 关键词:单片机AT89S52、DAC0832、液晶1602 Abstract: this system capitalize on AT89s52,it makes use of central processor to generate three kinds of waves, they are triangle wave, and use D/A conversion module, wave generate module and liquid crystal display of 1602, it can have the 1Hz-3KHz profile. In this system it can control wave form choosing, frequency, range,can have the sine wave, the square-wave, the triangular wave. Simultaneously may also take the frequency measurement frequency,and displays them through liquid crystal display of 1602.this design includes three modules. They are D/A conversion module, wave generate module and liquid crystal display of LED module. In this design, the wave generator into wave form module and D/A conversion module are discussed in detail. key word: AT89S52, DAC0832, liquid crystal 1602.

基于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所示。 89C51是整个波形发生器的核心部分,通过程序的编写和执行,产生各种各样的信号,并从键盘接收数据,进行各种功能的转换和信号幅度的调节。当数字信号电路到达转换电路,将其转换成模拟信号也就是所需要的输出波形。波形ROM表是将信号一个周期等间距地分离成64个点,储存在单片机得RON内。具体ROM表是通过MATLAB生成的,例如正弦表,MATLAB生成的程序如下: x=0:2*pi/64:2*pi; y=round(sin(x)*127)+128 图2.2 系统框图 3单元电路设计与分析 3.1.1主控电路(如图3.1.1所示) 设计中主要采用STC89C51型单片机,它具有如下优点:(1)拥有完善的外部扩展总线,通过这些总线可方便地扩展外围单元、外围接口等。(2)该单片机内部拥有4K字节的FLASH ROM程序存储器空间和256字节的RAM数据存储空间,完全可以满足程序的要求。由于该芯片可电擦写,故可重复使用。如果更改程序内容,可将芯片拿下重新烧写。 在波形发生器中,用两个开关直接与外部中断0和外部中断1的管脚相连,其中S1开光用来改变波形,S2开光用来改变频率。在程序主函数中,我们写了个死循环一直输出一个默认的波形和频率(正弦波),当S1或S2按下(接通低电平)又抬起(STC89C51单片机管脚使能高电平)时,程序会暂时跳出死循环,进入中断处理程序,从而对波形和频率

相关文档
相关文档 最新文档