ImageVerifierCode 换一换
格式:DOCX , 页数:33 ,大小:400.42KB ,
资源ID:9699594      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/9699594.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(安徽工程大学波形示波器.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

安徽工程大学波形示波器.docx

1、安徽工程大学波形示波器安徽工程大学本科课程设计说明书专 业: 计算机科学与技术题 目: 数字式波形发生器学 生 姓 名: 杨凯帆 指 导 教 师: 谢永宁 2011年 6 月 前 言随着电子技术的飞速发展,单片机在生活中的应用越来越广泛。各种基于单片机的一起设备应运而生。单片机构成的仪器具有可靠性高,性价比高,便于操作等优点。单片机的种种优点往往是有接口能力和处理外界信息的能力表现出来的。 波形发生器是一种常用的信号源,广泛地应用于电子电路、自动控制系统和教学实验等领域。函数信号发生器是一种能够产生多种波形,如三角波、锯齿波、矩形波(含方波)、正弦波的电路。函数信号发生器在电路实验和设备检测中

2、具有十分广泛的用途。通过对函数波形发生器的原理以及构成分析,可设计一个能变换出三角波、正弦波、方波的函数波形发生器。本次开发时在8086的平台上,利用AT89C51和DAC0832芯片利用系统内置的8255扩展接口连接电路实现的。可产生方波、三角波,也可以根据内部程序设定的参考值调节波形的频率、幅值,利用开关控制相应的操作,具有线路简单、结构紧凑等优点。前言.1目录课程设计任务书第一章 系统总体设计思路1.1波形形成原理1.2设计思路1.3设计操作第二章 接口技术及相关芯片介绍2.1 AT89C51介绍2.2 AT89C51定时器介绍2.3 ADC0832介绍2.4 8255实验模块介绍第三章

3、 实验电路图第四章 详细设计4.1 主控模块.4.2 调频模块.4.3 调幅模块.4.4 显示方波.4.5 显示三角波.4.6 计算模块.小结参考文献附录1:实验电路图附录2:源程序课程设计任务书 课程设计题目:数字式波形发生器 原始资料应用计算机技术,通过巧妙的软件设计和简易的硬件电路,实现数字式的波形发生器。具有显示输出波形类型、及其粗调频率和幅度的功能。基本要求:、设计实验电路(要求利用实验仪的硬件资源)、分析实验原理、列出实验接线表、采用汇编语言编写实验程序、通过实验验证功能的实现、编写课程设计说明书原理:1. 方波形成原理方波就是在一个波形输出周期内输出一个高电平和一个低电平,通常是

4、每半个周期输出一个高电平,另半个周期输出低电平。输出的高低电平的宽度由定时器B确定,定时器的初值由波形频率确定,即定时的时间是波形周期的一半。先输出高电平并启动定时器,定时到则输出低电平并再次启动定时器,定时到则输出高电平并在启动定时器。2、三角波形成原理可以用数学上分割的思想,将斜线分割成很多小段,每一小段用直线代替,这样三角波的上升沿和下降沿由很多个小阶梯构成,由于阶梯很多则阶梯就很小,看上去三角波的上升沿和下降沿可以近似为直线,那么这样的波形便可以近似为三角波。按照这种原理,三角波的形成就可以转换成与方波类似的原理解决,即用定时输出,每个阶梯进行定时并输出对应的电平。这里和方波不同的地方

5、在每次定时完后不是在高低电平两者切换,而是输出的电平是按一定的步进值进行递增和递减。指导老师(签字) 完成日期 年 月 日接受任务书学生签字第一章 系统总体设计思路1.1波形形成原理1、方波形成原理方波就是在一个波形输出周期内输出一个高电平和一个低电平,通常是每半个周期输出一个高电平,另半个周期输出低电平。如下图所示。输出的高低电平的宽度由定时器B确定,定时器的初值由波形频率确定,即定时的时间是波形周期的一半。先输出高电平并启动定时器,定时到则输出低电平并再次启动定时器,定时到则输出高电平并在启动定时器。2、三角波形成原理可以用数学上分割的思想,将斜线分割成很多小段,每一小段用直线代替,这样三

6、角波的上升沿和下降沿由很多个小阶梯构成,由于阶梯很多则阶梯就很小,看上去三角波的上升沿和下降沿可以近似为直线,那么这样的波形便可以近似为三角波。 看到的波形图 放大后的波形图按照这种原理,三角波的形成就可以转换成与方波类似的原理解决,即用定时输出,每个阶梯进行定时并输出对应的电平。这里和方波不同的地方在每次定时完后不是在高低电平两者切换,而是输出的电平是按一定的步进值进行递增和递减。1.2设计思路由以上的波形形成原理可知系统需要定时器对输出的信息进行定时转换(如高低电平的转换,输出电平的逐渐变换)。需要模数转换器实现不同电压到相应的输出信号的转换。同时题目要求要能够进行基本的调节频率和幅度的功

7、能,所以这还需要有修改相关的幅度,频率等参数的功能。结合以前所做的实验以及对相关芯片的理解和认识,本次实验采用AT89C51与DAC0832,将各个控制开关接到8255,通过读取各口字的状态实现对系统的控制,包括显示波形的形状,频率,幅度等。 1.3操作设计 1.机器通电后程序全速运行后,系统处于初始状态,此时无任何信号输出,示波器显示为初始状态。 2.用户按下不同的键,选择不同的操作。P1.0控制调频,P1.1控制调幅,p1.2控制输出方波,p1.3控制输出三角波。P1.4P1.7用来控制选择字。 第二章 接口技术及相关芯片介绍 本章主要是对AT89C51,89C51定时器介绍,DAC083

8、2的介绍。 2.1AT89C51介绍 89C51引脚图AT89C51是一种带4K字节FLASH存储器(FPEROMFlash Programmable and Erasable Read Only Memory)的低电压、高性能CMOS 8位微处理器,俗称单片机。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器。AT89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。VCC:供电电压。 GND:接地。RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。 P0口: P0能够用于外部程序数据存储器,它可以被定义为

9、数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。 P1口:在FLASH编程和校验时,P1口作为第八位地址接收。 P2口:当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。P3口:P3口也可作为AT89C51的一些特殊功能口。口管脚 备选功能 P3.0 RXD(串行输入口) P3.1 TXD(串行输出口) P3.2 /INT0(外部中断0) P3.3 /INT1(外部中断1) P3.4 T0(记时器0外部输入) P3.5 T1(记时器1外

10、部输入) P3.6 /WR(外部数据存储器写选通) P3.7 /RD(外部数据存储器读选通) P3口同时为闪烁编程和编程校验接收一些控制信号。2.2 AT89C51定时器介绍89C51单片机内有两个16位的定时器/计数器。即定时器0(T0),定时器1(T1)。 AT89C51定时器结构TMOD控制字及其意义:模式说明:定时器模式2 把TL0 配置成一个可以自动恢复初值(初始常数自动重新装入)的8 位计数器,TH0 作为常数缓冲器,如图6-29 所示。TH0 由软件预置值;当TL0 产生溢出时,一方面使溢出标志TF0 置1,同时把TH0 中的8 位数据重新装入TL0 中。 T0(或T1)结构8位

11、计数结构方式2 常用于定时控制。例如希望每隔250us 产生一个定时控制脉冲,则可以采用12MHz 的振荡器,把TH0 预置为6,并使C/T=0 就能实现。方式2 还用作串行口波特率发生器。定时器方式时间常数计算设方式2 工作时,定时时间为200us,时钟振荡频率为12 MHz,计算:1 个机器周期为:12 1/f= 12 (1/12MHz) 10 6=1us设时间常数为X,则(28X)1us = 200usX = 28200= 56化成十六进制数为:X = 38H根据8 位定时器/计数器特性,高8 位F0H 送至TH0;低5 位0CH 送TL0可用下列指令实现:MOV TL0,#038H ;

12、低5 位送TL0 寄存器MOV TH0,#038H ;高8 位送TH0 寄存器但要注意到方式二的最大定时为(28-0)=256 us2.3 DAC0832的引脚及功能 DAC0832的引脚图 DAC0832是8分辨率的D/A转换集成芯片。与微处理器完全兼容。这个DA芯片以其价格低廉、接口简单、转换控制容易等优点,在单片机应用系统中得到广泛的应用。D/A转换器由8位输入锁存器、8位DAC寄存器、8位D/A转换电路及转换控制电路构成。DAC0832的主要特性参数如下:分辨率为8位;电流稳定时间1us;可单缓冲、双缓冲或直接数字输入;只需在满量程下调整其线性度;单一电源供电(+5V+15V);低功耗

13、,200mW。3 DAC0832结构: D0D7:8位数据输入线,TTL电平,有效时间应大于90ns。ILE:数据锁存允许控制信号输入线,高电平有效;CS:片选信号输入线(选通数据锁存器),低电平有效;WR1:数据锁存器写选通输入线,负脉冲(脉宽应大于500ns)有效。由ILE、CS、WR1的逻辑组合产生LE1,当LE1为高电平时,数据锁存器状态随输入数据线变换,LE1的负跳变时将输入数据锁存;XFER:数据传输控制信号输入线,低电平有效,负脉冲(脉宽应大于500ns)有效;WR2:DAC寄存器选通输入线,负脉冲(脉宽应大于500ns)有效。由WR1、XFER的逻辑组合产生LE2,当LE2为高

14、电平时,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的工作方式:根据对DAC0832的数据锁存器和DAC寄存器的不同的控制方式,DAC0832有三种工作方式:直通方式、单缓冲方式和双

15、缓冲方式2.4 8255实验模块介绍8255A是为Intel公司的微处理器配套的通用可编程并行I/O接口芯片。8255A有2个8位并行端口、2个4位并行端口,每个端口均能通过控制寄存器编程确定为全部输入、全部输出或其它指定功能。8255A实验模块的片选信号已经连接,端口地址分别为:PA口 0FF28H; PB口 0FF29H;PC口 0FF2AH; 控制口 0FF2BH。第三章 硬件电路图按照实验程序实验接线如下:1. K1K7分别接P1.0P1.7.2. 0832片选信号CS5接地址FF80H3. AOUT,GND分别接示波器。第四章 详细设计4.1主控模块 由上一部分分析,本系统主要有5个

16、模块。分别是主控程序,调频模块,调幅模块,显示方波,显示三角波。主控模块: 为了使用户在运行程序直接选择显示方波或三角波而不是先进行参数设置时能看到波形,初始波形的幅度,频率参数。 因为程序较长,要进行长跳转。ORG 00H LJMP START ORG 0030HSTART : MOV SP,#53H CLR EA CLR TR0 MOV 65H,#04FH ;幅度初值 MOV R7,#06H ;循环时间初值 MOV R5,#01H ;循环次数初值 MOV R0,#0FFH Main: JB P1.0,tiaopin ;p1.0口为1,转去执行调频子程序 JB P1.1,tiaofu ;p1

17、.1口为1,转去执行调幅子程序 JB P1.2,Jfangbo ;p1.2口为1,转去执行显示方波 JB P1.3,JSanjiao ;p1.3口为1,转去执行显示三角波 SJMP Main ;不断的查询命令空Jfangbo: LJMP fangbo ;JSanjiao: LJMP sanjiao ;4.2调频模块 本程序是让用户通过修改控制字来选择相应频率的参数。;查询用户所选择的开关,计算出其所代表的数值,根据数值去查表,得出当前的频率。;调频tiaopin: MOV A,#0H MOV 60H,#0H JNB P1.4,Next11 ;P1.4口为0则直接跳到下一位 MOV 60H,#0

18、1HNext11: MOV A,60H RL A MOV 60H,A JNB P1.5,Next12 ;P1.5 ADD A,#1H MOV 60H,ANext12: MOV A,60H RL A MOV 60H,A JNB P1.6,Next13 ;P1.6 ADD A,#01H MOV 60H,ANext13: MOV A,60H RL A MOV 60H,A JNB P1.7,Next14 ;P1.7 ADD A,#01H MOV 60H,A ;60H存放的是频率的指针Next14: MOV DPTR,#PINLV ; MOV A,60H MOVC A,A+DPTR ;读取表中第60H)

19、位的频率值 MOV R7,A ;R7中存放定时的时间 MOV DPTR,#COUNT MOV A,60H MOVC A,A+DPTR MOV R5,A ;R5中存放循环次数 MOV DPTR,#SANCOUNT MOV A,60H MOVC A,A+DPTR MOV R2,A ;R2中存放三角形的定时时间 JB P1.0,tiaopin ;查询调频操作结束 LJMP MAIN4.3调幅模块本程序是让用户通过修改控制字来选择相应频率的参数。;调幅tiaofu: MOV A,#0H MOV 62H,#0H JNB P1.4,Next21 ;P1.4口为0则直接跳到下一位 MOV 62H,#01HN

20、ext21: MOV A,62H RL A MOV 62H,A JNB P1.5,Next22 ;P1.5 ADD A,#1H MOV 62H,ANext22: MOV A,62H RL A MOV 62H,A JNB P1.6,Next23 ;P1.6 ADD A,#01H MOV 62H,ANext23: MOV A,62H RL A MOV 62H,A JNB P1.7,Next24 ;P1.7 ADD A,#01H MOV 62H,A Next24: MOV DPTR,#FUDU MOV A,62H MOVC A,A+DPTR ;R6中存放当前幅度值 MOV R6,A MOV 65H,

21、A ;62H存放的是幅度的指针 JB P1.1,tiaofu LJMP MAIN4.4显示方波 本模块实现方波的显示,根据方波的显示原理和已设定的频率、幅度,利用8951的定时功能,预订的时间到时候,跳到相反的电平输出。每半一个周期输出结束后要检查当前平p1.2是否是高电平(即是否要继续显示方波)。如果为低电平则说明用户关闭了显示方波的功能返回,否则继续显示。 本处时钟频率采用的为12MH,定时器的延时采用的是模式2方式,但是根据计算模式2的最大的延时时间为(28-0)*震荡周期*12=256us,对于显示方波来说这个延时是不够的所以在单个延时的外部添加了延时次数(即为表COUNT)中数据,通

22、过循环程序的方式实现延时时间的增长。fangbo: MOV R0,#00fH MOV DPTR,#0FF80Hqian1: MOV A,65H MOVX DPTR,A MOV A,R5 ; MOV R4,ASHOW11: CLR TF0 MOV TMOD,#02H ;0000 0110 定时器,10模式 MOV TH0,R7 ;设定定时初值 MOV TL0,R7 SETB TR0 ;启动定时器LOP11: JBC TF0,jianyi11 ;查询定时器溢出标示 SJMP LOP11jianyi11: DEC R4 ;程序循环查询 MOV A,R4 JNZ SHOW11 ;显示前半周期 JNB

23、P1.2,WAN1 ;判断是否继续显示方波 MOV R0,#0FFH MOV A,#0H MOV DPTR,#0FF80H MOVX DPTR,A MOV R1,#00FH MOV A,R5 MOV R4,ASHOW12: CLR TR0 MOV TMOD,#02H ;0000 0110 定时器,10模式 MOV TH0,R7 ;设定定时初值 MOV TL0,R7 SETB TR0 ;开定时中断LOP12: JBC TF0,jianyi12 ;查询定时器溢出标示 SJMP LOP12jianyi12: DEC R4 ;程序循环查询 MOV A,R4 JNZ SHOW12 ;显示后半周期 djn

24、z R1,hou1 JNB P1.2,WAN1 ;判断是否继续显示方波 SJMP fangboWAN1: RET4.5显示三角波 本模块实现三角波的显示,一些相似的地方,但又较方波复杂。根据已设定的频率,将每半个周期分成一定的份数,利用AT89C51的定时功能,在每一小份内,预订的时间到时候,输出电平增加一个步长,同时要检查当前值是否小于幅值,小于则继续进行加运算输出。当检测到当前值大于等于幅值后先查询P1.3是否为高电平(即是否继续显示三角波)。如果为低电平则返回,否则继续显示。在波形的后半周期则是每一个显示延时后减去一个步长,判断其与0的大小,大于则继续显示,小于等于则查询P1.3;三角波

25、的显示Sanjiao: MOV DPTR,#0FF80H MOV R3,#0 LOP21: MOV A,R3 MOVX DPTR,ASHOW21: MOV TMOD,#02H ;0000 0110 定时器,10模式 MOV TH0,R2 MOV TL0,R2 SETB TR0LOP23: JBC TF0,jia21 SJMP LOP23jia21: INC R3 MOV A,R3 CJNE A,65H,LOP21 JNB P1.3,WAN2LOP22: MOV A,R3 MOVX DPTR,ASHOW22: MOV TMOD,#02H ;0000 0110 定时器,10模式 MOV TH0,R

26、2 MOV TL0,R2 SETB TR0LOP24: JBC TF0,jia22 SJMP LOP24jia22: DEC R3 MOV A,R3 CJNE A,#0H,LOP22 JNB P1.3,WAN2 SJMP sanjiao WAN2:RET 4.6计算模块实验中所设的幅度范围为1FHFFH,频率范围为10HZ到2500HZ。频率计算公式为: t=1/f t=count*(yanshi) yanshi=(256-X)*机器周期*12;表中数据;*FUDU: DB 01H,01FH,02FH,03FH,04FH,05FH,06FH,07FH DB 08FH,09FH,0AFH,0BFH,0CFH,0DFH,0EFH,0FFHPINLV: DB 06H,06H,6H,06H,06H,06H,06H,06H DB

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

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