单片机波形发生器Word文件下载.docx

上传人:b****4 文档编号:17268264 上传时间:2022-11-30 格式:DOCX 页数:27 大小:839.33KB
下载 相关 举报
单片机波形发生器Word文件下载.docx_第1页
第1页 / 共27页
单片机波形发生器Word文件下载.docx_第2页
第2页 / 共27页
单片机波形发生器Word文件下载.docx_第3页
第3页 / 共27页
单片机波形发生器Word文件下载.docx_第4页
第4页 / 共27页
单片机波形发生器Word文件下载.docx_第5页
第5页 / 共27页
点击查看更多>>
下载资源
资源描述

单片机波形发生器Word文件下载.docx

《单片机波形发生器Word文件下载.docx》由会员分享,可在线阅读,更多相关《单片机波形发生器Word文件下载.docx(27页珍藏版)》请在冰豆网上搜索。

单片机波形发生器Word文件下载.docx

体积小、价格低廉、性能稳定、实现方便、功能齐全。

关键词:

AT89S52单片机,DAC0832芯片,LM324运算放大器,PROTEUS和WAVE仿真软件等。

8位数码管显示

1波形发生器概述

在电子工程、通信工程、自动控制、遥测控制、测量仪器、仪表和计算机等技术领域,经常需要用到各种各样的信号波形发生器。

随着集成电路的迅速发展,用集成电路可很方便地构成各种信号波形发生器。

用集成电路实现的信号波形发生器与其它信号波形发生器相比,其波形质量、幅度和频率稳定性等性能指标,都有了很大的提高。

1.1波形发生器的发展状况

波形发生器是能够产生大量的标准信号和用户定义信号,并保证高精度、高稳定性、可重复性和易操作性的电子仪器。

函数波形发生器具有连续的相位变换、和频率稳定性等优点,不仅可以模拟各种复杂信号,还可对频率、幅值、相移、波形进行动态、及时的控制,并能够与其它仪器进行通讯,组成自动测试系统,因此被广泛用于自动控制系统、震动激励、通讯和仪器仪表领域。

在70年代前,信号发生器主要有两类:

正弦波和脉冲波,而函数发生器介于两类之间,能够提供正弦波、余弦波、方波、三角波、上弦波等几种常用标准波形,产生其它波形时,需要采用较复杂的电路和机电结合的方法。

这个时期的波形发生器多采用模拟电子技术,而且模拟器件构成的电路存在着尺寸大、价格贵、功耗大等缺点,并且要产生较为复杂的信号波形,则电路结构非常复杂。

同时,主要表现为两个突出问题,一是通过电位器的调节来实现输出频率的调节,因此很难将频率调到某一固定值;

二是脉冲的占空比不可调节。

在70年代后,微处理器的出现,可以利用处理器、A/D/和D/A,硬件和软件使波形发生器的功能扩大,产生更加复杂的波形。

这时期的波形发生器多以软件为主,实质是采用微处理器对DAC的程序控制,就可以得到各种简单的波形。

90年代末,出现几种真正高性能、高价格的函数发生器、但是HP公司推出了型号为HP770S的信号模拟装置系统,它由HP8770A任意波形数字化和HP1776A波形发生软件组成。

HP8770A实际上也只能产生8中波形,而且价格昂贵。

不久以后,Analogic公司推出了型号为Data-2020的多波形合成器,Lecroy公司生产的型号为9100的任意波形发生器等。

到了二十一世纪,随着集成电路技术的高速发展,出现了多种工作频率可过GHz的DDS芯片,同时也推动了函数波形发生器的发展,2003年,Agilent的产品33220A能够产生17种波形,最高频率可达到20M,2005年的产品N6030A能够产生高达500MHz的频率,采样的频率可达1.25GHz。

由上面的产品可以看出,函数波形发生器发展很快近几年来,国际上波形发生器技术发展主要体现在以下几个方面:

(1)过去由于频率很低应用的范围比较狭小,输出波形频率的提高,使得波形发生器能应用于越来越广的领域。

波形发生器软件的开发正使波形数据的输入变得更加方便和容易。

波形发生器通常允许用一系列的点、直线和固定的函数段把波形数据存入存储器。

同时可以利用一种强有力的数学方程输入方式,复杂的波形可以由几个比较简单的公式复合成v=f(t)形式的波形方程的数学表达式产生。

从而促进了函数波形发生器向任意波形发生器的发展,各种计算机语言的飞速发展也对任意波形发生器软件技术起到了推动作用。

目前可以利用可视化编程语言(如VisualBasic,VisualC等等)编写任意波形发生器的软面板,这样允许从计算机显示屏上输入任意波形,来实现波形的输入。

(2)与VXI资源结合。

目前,波形发生器由独立的台式仪器和适用于个人计算机的插卡以及新近开发的VXI模块。

由于VXI总线的逐渐成熟和对测量仪器的高要求,在很多领域需要使用VXI系统测量产生复杂的波形,VXI的系统资源提供了明显的优越性,但由于开发VXI模块的周期长,而且需要专门的VXI机箱的配套使用,使得波形发生器VXI模块仅限于航空、军事及国防等大型领域。

在民用方面,VXI模块远远不如台式仪器更为方便。

(3)随着信息技术蓬勃发展,台式仪器在走了一段下坡路之后,又重新繁荣起来。

不过现在新的台式仪器的形态,和几年前的己有很大的不同。

这些新一代台式仪器具有多种特性,可以执行多种功能。

而且外形尺寸与价格,都比过去的类似产品减少了一半。

1.2国内外波形发生器产品比较

早在1978年,由美国Wavetek公司和日本东亚电波工业公司公布了最高取样频率为5MHz,可以形成256点(存储长度)波形数据,垂直分辨率为8bit,主要用于振动、医疗、材料等领域的第一代高性能信号源,经过将近30年的发展,伴随着电子元器件、电路、及生产设备的高速化、高集成化,波形发生器的性能有了飞速的提高。

变得操作越来越简单而输出波形的能力越来越强。

波形操作方法的好坏,是由波形发生器控制软件质量保证的,编辑功能增加的越多,波形形成的操作性越好。

1.3关于波形发生器认识与设计想法

在日常的工作和学习中,波形发生器是一种常用的信号源,广泛地应用于电子电路、自动控制系统和教学实验等领域。

目前使用波形发生器大部分是利用分立元件组成的起体积大,可靠性差,准确度低。

目前我们实验室用的较多的波形发生器主要有两种:

低频正弦波发生器和通用多波形发生器,前者只能产生正弦波,调节范围不大,但是信号稳定,失真度底,主要用在对波形有很高的要求的实验中;

后者能产生正弦波、方波和三角波,也有的能产生三种以上波形。

这两种波形发生器都比较昂贵,而在我们很多的实验中有的要求产生更多的波形种类,有很多对于波形的要求不是很高,有的只是演示一下,在本课题中将这两方面的缺点结合起来加以改进,最大限度地利用单片机资源。

本次课程设计将以AT89S51单片机为核心,采用AD/DA转换接口技术构成的波形发生器可产生方波、三角波、锯齿波、梯形波等多种波形,波形的周期可以用程序改变,并可根据需要选择单极性输出或双极性输出,具有线路简单、结构紧凑、价格低廉、性能优越等优点。

在本设计的基础上,加上开关键盘控制和LED显示,则可开关键盘输入选定所需要的波形,并用相应的LED显示。

利用AT89S51单片机产生方波、锯齿波、三角波及梯形波,并可以在不同的波形之间任意切换,并可以根据实际情况的需要在波形存储器中写入不同的波形,可以随时添加,能满足一般的实验及演示的需要,并且成本很低,操作简洁方便。

2.系统总体方案及硬件设计

依据应用场合.需要实现的波形种类,波形发生器的具体指标要求会有所不同。

依据不同的设计要求选取不同的设计方案。

通常,波形发生器需要实现的波形有正弦波、方波、三角波和锯齿波。

有些场合可能还需要任意波形的产生。

各种波形共有的指标有:

波形的频率、幅度要求,频率稳定度,准确度等。

对于不同波形,具体的指标要求也会有所差异,例如,占空比是脉冲波形特有的指标。

波形发生器的设计方案多种多样,大致可以分为三大类:

纯硬件设计法、纯软件设计法和软硬件结合设计法。

软硬件结合法软硬件结合的波形发生器设计方法同时兼具软硬件设计的优势:

既具有纯硬件设计的快速、高性能,同时又具有软件控制的灵活性、智能性。

如以单片机和单片集成函数发生器为核心(如图2.1)。

辅以键盘控制、液晶显示等电路,设计出智能型函数波形发生器,采用软硬件结合的方法可以实现功能较全、性能更优的波形发生器,同时还可以扩展波形发生器的功能,比如通过软件编程控制实现波形的存储、运算、打印等功能,采用USB接口设计。

使波形发生器具有远程通信功能等。

目前,实验、科研和工业生产中使用的信号源大多采用此方法来实现。

图2.1软硬件结合的波形发生器

波形的产生是通过AT89S52单片机执行某一波形发生程序,向D/A转换器的输入端按一定的规律发生数据,从而在D/A转换电路的输出端得到相应的电压波形。

AT89S52单片机的最小系统有三种联接方式。

一种是两级缓冲器型,即输入数据经过两级缓冲器型,即输入数据经过两级缓冲器后,送D/A转换电路。

第二种是单级缓冲器型,输入数据经输入寄存器直接送入DAC寄存器,然后送D/A转换电路。

第三种是两个缓冲器直通,输入数据直接送D/A转换电路进行转换。

本电路仿真的总图如下:

图3.1系统电路图

2.1MCS-51单片机的内部结构

2.1.1内部结构概述

典型的MCS-51单片机芯片集成了以下几个基本组成部分。

1一个8位的CPU

2128B或256B单元内数据存储器(RAM)

34KB或8KB片内程序存储器(ROM或EPROM)

44个8位并行I/O接口P0~P3。

5两个定时/计数器。

65个中断源的中断管理控制系统。

7一个全双工串行I/O口UART(通用异步接收、发送器)

8一个片内振荡器和时钟产生电路。

图3.2单片机引脚

2.1.2CPU结构

CPU是单片机的核心部件。

它由运算器和控制器等部件组成。

1. 

运算器

运算器以完成二进制的算术/逻辑运算部件ALU为核心。

它可以对半字节(4)、单字节等数据进行操作。

例如,能完成加、减、乘、除、加1、减1、BCD码十进制调整、比较等算术运算,完成与、或、异或、求反、循环等逻操作,操作结果的状态信息送至状态寄存器。

运算器还包含有一个布尔处理器,用以处理位操作。

它以进位标志位C为累加器,可执行置位、复位、取反、位判断转移,可在进位标志位与其他可位寻址的位之间进行位数据传诵等操作,还可以完成进位标志位与其他可位寻址的位之间进行逻辑与、或操作。

2.程序计数器PC

PC是一个16位的计数器,用于存放一条要执行的指令地址,寻址范围为64kB,PC有自动加1功能,即完成了一条指令的执行后,其内容自动加1。

3.指令寄存器

指令寄存器用于存放指令代码。

CPU执行指令时,由程序存储器中读取的指令代码送如指令寄存器,经指令译码器译码后由定时有控制电路发出相应的控制信号,完成指令功能。

2.1.3存储器和特殊功能寄存器

1.存储器(Memory)是计算机系统中的记忆设备,用来存放程序和数据。

计算机中的全部信息,包括输入的原始数据、计算机程序、中间运行结果和最终运行结果都保存在存储器中。

它根据控制器指定的位置存入和取出信息。

2.特殊功能寄存器

特殊功能寄存器(SFR)的地址范围为80H~FFH。

在MCS-51中,除程序计数器PC和四个工作寄存器区外,其余21个特殊功能寄存器都在这SFR块中。

其中5个是双字节寄存器,它们共占用了26个字节。

各特殊功能寄存器的符号和地址见附表2。

其中带*号的可位寻址。

特殊功能寄存器反映了8051的状态,实际上是8051的状态字及控制字寄存器。

用于CPUPSW便是典型一例。

这些特殊功能寄存器大体上分为两类,一类与芯片的引脚有关,另一类作片内功能的控制用。

与芯片引脚有关的特殊功能寄存器是P0~P3,它们实际上是4个八位锁存器(每个I/O口一个),每个锁存器附加有相应的输出驱动器和输入缓冲器就构成了一个并行口。

MCS-51共有P0~P3四个这样的并行口,可提供32根I/O线,每根线都是双向的,并且大都有第二功能。

其余用于芯片控制的寄存器中,累加器A、标志寄存器PSW、数据指针DPTR等的功能前已提及。

2.2P0-P3口结构

P0口功能:

P0口具有两种功能:

第一,P0口可以作为通用I/O接口使用,P0.7—P0.0用于传送CPU的输入/输出数据。

输出数据时可以得到锁存,不需外接专用锁存器,输入数据可以得到缓冲。

第二,P0.7—P0.0在CPU访问片外存储器时用于传送片外存储器de低8位地址,然后传送CPU对片外存储器的读写

P1口功能:

P1口的功能和P0口de第一功能相同,仅用于传递I/O输入/输出数据。

P2口的功能:

2口的第一功能和上述两组引脚的第一功能相同,即它可以作为通用I/O使用。

它的第二功能和P0口引脚的第二功能相配合,作为地址总线用于输出片外存储器的高8位地址。

P3口功能:

P3口有两个功能:

第一功能与其余三个端口的第一功能相同;

第二功能作控制用,每个引脚都不同。

P3.0—RXD串行数据接收口

P3.1—TXD串行数据发送口

P3.2—INT0外中断0输入

P3.3—INT1外中断1输入

P3.4—T0计数器0计数输入

P3.5—T1计数器1计数输入

P3.6—WR外部RAM写选通信号

P3.7—RD外部RAM读选通信号

2.3时钟电路和复位电路

单片机的时钟信号用来提供单片机内各种微操作的时间基准;

复位操作则使单片机的片内电路初始化,使单片机从一种确定的状态开始运行。

2.3.1时钟电路

单片机的时钟信号通常用两种电路形式得到:

内部振荡和外部振荡方式。

图3.3时钟部分电路图

在引脚XTAL1和XTAL2外接晶体振荡器或陶瓷谐振荡器,构成了内部振荡方式。

由于单片机内部有一个高增益反相放大器,当外接晶振后,就构成了自积振荡,并产生振荡时钟脉冲。

晶振通常选用6MHZ、12MHZ、或24MHZ。

2.3.2单片机的时序单位

振荡周期:

晶振的振荡周期,又称时钟周期,为最小的时序单位。

状态周期:

振荡频率经单片机内的二分频器分频后提供给片内CPU的时钟周期。

因此一个状态周期包含2个振荡周期。

机器周期:

1个机器周期由6个状态周期12个振荡周期组成,是计算机执行一种基本操作的时间单位。

指令周期:

执行一条指令所需的时间。

一个指令周期由1-4个机器周期组成,依据指令不同而不同.

2.3.3单片机的复位状态

当MCS-5l系列单片机的复位引脚RST(全称RESET)出现2个机器周期以上的高电平时,根据应用的要求,复位操作通常有两种基本形式:

上电复位和上电或开关复位。

上电复位要求接通电源后,自动实现复位操作。

上电或开关复位要求电源接通后,单片机自动复位,并且在单片机运行期间,用开关操作也能使单片机复位。

上电后,由于电容C3的充电和反相门的作用,使RST持续一段时间的高电平。

当单片机已在运行当中时,按下复位键K后松开,也能使RST为一段时间的高电平,从而实现上电或开关复位的操作。

图3.4复位电路

单片机的复位操作使单片机进入初始化状态,其中包括使程序计数器PC=0000H,这表明程序从0000H地址单元开始执行。

单片机冷启动后,片内RAM为随机值,运行中的复位操作不改变片内RAM区中的内容,21个特殊功能寄存器复位后的状态为确定值统复位是任何微机系统执行的第一步,使整个控制芯片回到默认的硬件状态下。

51单片机的复位是由RESET引脚来控制的,此引脚与高电平相接超过24个振荡周期后,51单片机即进入芯片内部复位状态,而且一直在此状态下等待,直到RESET引脚转为低电平后,才检查EA引脚是高电平或低电平,若为高电平则执行芯片内部的程序代码,若为低电平便会执行外部程序。

51单片机在系统复位时,将其内部的一些重要寄存器设置为特定的值,至于内部RAM内部的数据则不变。

2.4DAC0832的引脚及功能

1.DAC0832芯片:

DAC0832是8分辨率的D/A转换集成芯片。

与微处理器完全兼容。

这个DA芯片以其价格低廉、接口简单、转换控制容易等优点,在单片机应用系统中得到广泛的应用。

D/A转换器由8位输入锁存器、8位DAC寄存器、8位D/A转换电路及转换控制电路构成。

2.DAC0832的主要特性参数如下:

DAC0832芯片的原理:

DAC0832是双列直插式8位D/A转换器。

能完成数字量输入到模拟量(电流)输出的转换。

图1为DAC0832的引脚图。

其主要参数如下:

分辨率为8位,转换时间为1μs,满量程误差为±

1LSB,参考电压为(+10~-10)V,供电电源为(+5~+15)V,逻辑电平输入与TTL兼容。

在DAC0832中有两级锁存器,第一级锁存器称为输入寄存器,它的允许锁存信号为ILE,第二级锁存器称为DAC寄存器,它的锁存信号也称为通道控制信号/XFER。

3.DAC0832结构:

D0~D7:

8位数据输入线,TTL电平,有效时间应大于90ns(否则锁存器的数据会出错);

ILE:

数据锁存允许控制信号输入线,高电平有效;

CS:

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

WR1:

数据锁存器写选通输入线,负脉冲(脉宽应大于500ns)有效。

由ILE、CS、WR1的逻辑组合产生LE1,当LE1为高电平时,数据锁存器状态随输入数据线变换,LE1的负跳变时将输入数据锁存;

XFER:

数据传输控制信号输入线,低电平有效,负脉冲(脉宽应大于500ns)有效;

WR2:

DAC寄存器选通输入线,负脉冲(脉宽应大于500ns)有效。

由WR1、XFER的逻辑组合产生LE2,当LE2为高电平时,DAC寄存器的输出随寄存器的输入而变化,LE2的负跳变时将数据锁存器的内容打入DAC寄存器并开始D/A转换。

IOUT1:

电流输出端1,其值随DAC寄存器的内容线性变化;

IOUT2:

电流输出端2,其值与IOUT1值之和为一常数;

Rfb:

反馈信号输入线,改变Rfb端外接电阻值可调整转换满量程精度;

Vcc:

电源输入端,Vcc的范围为+5V~+15V;

VREF:

基准电压输入线,VREF的范围为-10V~+10V;

AGND:

模拟信号地

DGND:

数字信号地

4.DAC0832工作方式:

(1)直通方式:

当ILE接高电平,

都接数字地时,DAC处于直通方式,8位数字量一旦到达DI7~DI0输入端,就立即加到8位D/A转换器,被转换成模拟量。

例如在构成波形发生器的场合,就要用到这种方式,即把要产生基本波形的数据存在ROM中,连续取出送到DAC去转换成电压信号。

(2)单缓冲方式:

只要把两个寄存器中的任何一个接成直通方式,而用另一个锁存器数据,DAC就可处于单缓冲工作方式。

一般的做法是将

都接地,使DAC寄存器处于直通方式,另外把ILE接高电平,

接端口地址译码信号,

接CPU的

信号,这样就可以通过一条MOVX指令,选中该端口,使

有效,启动D/A转换。

本设计就是采用单缓冲方式控制DAC0832

电路连接如下所示:

(3)双缓冲方式:

主要在以下两种情况下需要用双缓冲方式的D/A转换。

在需要同步进行D/A转换的多路DAC系统中,采用双缓冲方式,可以在不同的时刻把要转换的数据打入各DAC的输入寄存器,然后由一个转换命令同时启动多个DAC转换。

先用3条输出指令选择3个端口,分别将数据写入各DAC的输入寄存器,当数据准备就绪后,再执行一次写操作,使

变低同时选通3个D/A的DAC寄存器,实现同步转换。

2.5LM324芯片

LM324是四运放集成电路,它采用14脚双列直插塑料封装,外形如图所示。

它的内部包含四组形式完全相同的运算放大器,

除电源共用外,四组运放相互独立。

每一组运算放大器可用图1所示的符号来表示,它有5个引出脚,其中“+”、“-”为两

个信号输入端,“V+”、“V-”为正、负电源端,“Vo”为输出端。

两个信号输入端中,Vi-(-)为反相输入端,表示运放

输出端Vo的信号与该输入端的位相反;

Vi+(+)为同相输入端,表示运放输出端Vo的信号与该输入端的相位相同。

LM324的引脚排列见图2

图1 

 

图2

LM324的特点:

1.短跑保护输出2.真差动输入级

3.可单电源工作:

3V-32V4.低偏置电流:

最大100nA(LM324A)

5.每封装含四个运算放大器。

6.具有内部补偿的功能。

7.共模范围扩展到负电源8.行业标准的引脚排列

9.输入端具有静电保护功能

由于LM324四运放电路具有电源电压范围宽,静态功耗小,可单电源使用,价格低廉等优点,因此被广泛应用在各种电路中。

3软件原理

系统软件由主程序和产生波形的子程序组成,软件设计主要是产生各种波形的子程序的编程,通过编程可得到各种波形。

周期的改变可采用插入延时子程序的方法来实现。

主程序和几种常用波形子程序的流程图如图所示。

3.1主流程图

图4.1主程序流程图

信号的产生:

利用8位D/A转换器DAC0832,可以将8位数字量转换成模拟量输出。

数字量输入的范围为0~255,对应的模拟量输出的范围在VREF-到VREF+之间。

根据这一特性,可以利用单片机的并行口输出的数字量,产生常用的波形。

例如,要产生幅度为0~5V的锯齿波,只要将DAC0832的VREF-接地,VREF+接+5V,单片机的并行口首先输出00H,再输出01H、02H,直到输出FFH,再输出00H,依此循环,这样在图4.2所示的Vout端就可以看到在0到5V之间变化的锯齿波。

3.2子程序单元及流程图

3.2.1方波发生子程序流程图

3.2.2.三角波子程序及流程图:

3.2.3.梯形波子程序及流程图

3.2.4正弦波子程序及流程图

4实验仿真

4.1方波仿真图

方波程序如下:

voidtime3()//方波

{

P0=b2;

if(a5==245)

{

b2=255;

}

if(a5==0)

{

b2=0;

}

if(b2==255)

a5--;

if(b2==0)

a5++;

}

4.2三角波

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板 > 节日庆典

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1