51单片机毕业课程设计波形发生器_第1页
51单片机毕业课程设计波形发生器_第2页
51单片机毕业课程设计波形发生器_第3页
51单片机毕业课程设计波形发生器_第4页
51单片机毕业课程设计波形发生器_第5页
已阅读5页,还剩18页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、河南理工大学单片机应用与仿真训练设计报告多功能信号发生器设计姓名:王彦凯王翱翔专业班级:电仪09-03指导老师:王莉所在学院:电气工程与自动化学院2012年6月25日摘要本设计是多功能信号发生器,以 AT89S52单片机为核心,通过按键输入控 制输出信号的类型、频率和幅值,采用 DA转换芯片DAC0832俞出相应的波形, 同时以LED显示器进行实时显示信号相关信息。我们采用C语言进行编程,可实现100-1Khz的方波,锯齿波,三角波和正弦波四种波形的产生,且波形的频 率、幅值可通过按键调节,并显示在数码管上。而且,波形的幅值还可通过电位 器实现无极调幅,增加了可选幅值范围。经测试该设计方案线路

2、优化,结构紧凑, 性能优越,满足设计要求。关键字:单片机AT89S52 DAC0832信号发生器目录第1章概述11.1选题背景及其意义 11.2单片机概述11.3信号发生器分类11.4研究题目及其意义 2第2章信号发生器方案设计与选择 32.1 方案的设计与选择 32.2设计原理简介32.3设计功能5第3章主要电路元器件介绍 63.1 AT89S52单片机简介 63.1.1 单片机简介63.1.2 主要性能63.1.3 管脚功能说明73.2 DAC0832 简介83.2.1 DAC0832的主要特性参数83.2.2 DAC0832 结构83.2.3 DAC0832 工作方式93.3数码显示管

3、103.3.1 原理及分类103.3.2 显示器的工作方式 103.3.3 数码管字型码 11第4章单元电路的硬件设计 124.1 硬件原理框图124.2 单片机AT89S52系统的设计 124.3时钟电路134.4复位电路134.5数码管电路144.6 DAC0832模数转换电路154.7 LM324运放电路和低通滤波电路 164.8按键和波形指示LED电路17第5章系统软件设计 185.1软件开发环境简介185.1.1 Keil uVisio n4 简介 185.1.2 Proteus7.10 简介195.1.3 Keil 与Proteus 联合调试仿真 195.2主程序205.3按键处理

4、程序 215.4 数码管输出程序分析 225.5各种波形产生思路225.5.1 方波产生思路225.5.2 锯齿波产生思路 225.5.3 三角波产生思路235.5.4 正弦波产生思路235.6仿真的各种波形效果 23第6章课程设计体会 24参考文献25致谢26附1 :源程序代码271. 主程序272. 头文件27附2 :系统原理图31附3 :实物效果图32第 1 章 概述1.1 选题背景及其意义信号发生器又称信号源或振荡器,在生产实践和科技领域中有着广泛的应 用。各种波形曲线均可以用三角函数方程式来表示。 能够产生多种波形, 如方波、 锯齿波、三角波、正弦波的电路被称为函数信号发生器。在通信

5、、广播、电视系 统,在工业、农业、生物医学领域内,函数信号发生器在实验室和设备检测中具 有十分广泛的用途。信号发生器作为一种常见的应用电子仪器设备, 传统的可以完全由硬件电路 搭接而成, 如采用 555振荡电路发生正弦波、 三角波和方波的电路便是可取的路 径之一,不用依靠单片机。 但是这种电路存在波形质量差, 控制难, 可调范围小, 电路复杂和体积大等缺点。在科学研究和生产实践中,如工业过程控制, 生物医 学,地震模拟机械振动等领域常常要用到低频信号源。 而由硬件电路构成的低频 信号其性能难以令人满意,而且由于低频信号源所需的 RC 很大;大电阻,大电 容在制作上有困难,参数的精度亦难以保证;

6、体积大,漏电,损耗显著更是致命 的弱点。一旦工作需求功能有增加,则电路复杂程度会大大增加1.2 单片机概述单片机是一种集成在电路芯片, 是采用超大规模集成电路技术把具有数据处 理能力的中央处理器 CPU随机存储器RAM只读存储器ROM多种10 口和中 断系统、定时器计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟 多路转换器、 AD 转换器等电路)集成到一块硅片上构成的一个小而完善的计算 机系统。单片机具有集成度高、系统结构简单、使用方便、实现模块化、可靠性 高、处理功能强、速度快等特点,因为被广泛应用于仪器仪表、家用电器、医用 设备、航空航天、专用设备的智能化管理及过程控制等领域。1

7、.3 信号发生器分类信号发生器是指产生所需参数的电信号的仪器。因其应用广泛,种类繁多, 特性各异,分类也不尽一致。按信号波形可分为正弦信号、函数信号、脉冲信号 和随机信号发生器等四大类; 按频率覆盖范围分为低频信号发生器、 高频信号发 生器和微波信号发生器;按输出电平可调节范围和稳定度分为简易信号发生器、 标准信号发生器和功率信号发生器;按频率改变的方式分为调谐式信号发生器、 扫频式信号发生器、 程控式信号发生器和频率合成式信号发生器等。 信号发生器 又称信号源或振荡器,在生产实践和科技领域中有着广泛的应用。1.4 研究题目及其意义信号发生器是一种经常使用的设备, 由纯粹物理器件构成的传统的设

8、计方法 存在许多弊端,如:体积较大、重量较沉、移动不方便、信号失真较大、波形形 状调节过于死板,无法满足用户对精度、便携性、稳定性等要求,研究设计出一 种具有频率稳定、准确、波形质量好、输出频率范围宽、便携性好等特点的波形 发生器具有较好的市场前景。 以满足工业领域对信号源的要求。 本次试验实现利 用单片机 AT89S52 和 8 位 DA 转换芯片 DAC0832 共同实现方波、锯齿波、三 角波、正弦波这四种常用波形的发生。 根据设计的要求, 对各种波形的频率和幅 度进行程序的编写,并将所写程序装入单片机的程序存储器中。在程序运行中, 当接收到来自外界的命令, 需要输出某种波形时再调用相应的

9、中断服务子程序和 波形发生程序, 经电路的数模转换器和运算放大器处理后, 从信号发生器的输出 端口输出。 并且可以通过数码管和键盘显示模块, 键盘可以实现对几种波形的切 换。第 2 章 信号发生器方案设计与选择信号发生器是指产生所需参数的电信号的仪器。按信号波形可分为正弦信 号、波形信号、 脉冲信号和随机信号发生器等四大类。 本文利用单片机构造低频 信号发生器,可产生正弦波,方波,三角波,锯齿波四种波形,通过 DA 转换器 DAC0832 把数字信号转变为模拟信号, 经 LM324 放大输出到示波器, 与此同时 外接 8 位 LED 数码管显示输出信号的类型、频率和幅值。2.1 方案的设计与选

10、择方案一:NE555数字芯片结合外围电路,组成波形发生器,能够产生,方波, 三角波,锯齿波和正弦波,电路简单,而且,频率和幅值都能调节,但是不能显 示频率。方案二:采用单片函数发生器可产生正弦波、方波等,操作简单易行,用 DA 转换器的输出来改变调节电压,可以实现数控调整频率,但产生信号的频率 稳定度不高。方案三:利用芯片组成的电路输出波形,MAX038是MAXIM公司生产的一个 只需要很少外部元件的精密高频波形产生器, 他能产生准确的高频正弦波、 三角 波、方波。输出频率和占空比可以通过调整电流、电压或电阻来分别地控制。所 需的输出波形可由在 A0 和 A1 输入端设置适当的代码来选择,且具

11、有输出频率 范围宽、波形稳定、失真小、使用方便等特点。方案四:采用Atmel公司的AT89S52单片机编程方法实现,该方法的可以 通过编程的方法控制信号波形的频率和幅度, 而在硬件电路不便的情况下, 通过 程序实现频率的变化和输出波形的选择,并同时在显示器显示相应的结果。方案一和二输出信号频率不够稳定; 方案三成本高, 程序复杂度高;方案四, 软硬件结合,硬件成本低,软件起点低,优化型相对比较好,容易实现,且满足 设计要求。综合考虑,我们采用了方案四,用 AT89S52 单片机设计多功能信号 发生器,能够满足信号的频率稳定性和精度的准确行。2.2 设计原理简介该设计设计一个多功能信号发生器,我

12、们采用的是 AT89S52 单片机用软件 实现信号的输出。该单片机是一个微型计算机,包括中央处理器CPU, RAM, ROM、IO 接口电路、定时计数器、串行通讯等,是波形设计的核心。该信号发生器 原理框图如图 2.1 ,总体原理为: 利用 AT89S52 单片机构造多功能信号发生器, 可产生正弦波,方波,三角波,锯齿波四种波形,通过 C 语言对单片机的编程即可产生相应的波形信号,并可以通过键盘进行各种功能的转换和信号频率的控 制,当输出的数字信号通过数模转换成模拟信号也就得到所需要的信号波形,通过运算放大器的放大输出波形,同时让显示器显示输出的波形信息。图2-1系统框图本方案其主要模块包括复

13、位电路、时钟信号、键盘控制、DA转化及LED显 示。其各个模块的工作原理如下:1. 复位电路是为单片机复位使用,使单片机接口初始化;89C51等CM0S51 系列单片机的复位引脚RET是施密特触发输入脚,内部有一个上拉低电阻,当 振荡器起振以后,在RST引脚上输出2个机器周期以上的高电平,器件变进入复位状态开始,此时 ALE、PSEN P0 P1、P2、P4输出高电平,RST上输入 返回低电平以后,变退出复位状态开始工作。该方案采用的是人工开关复位, 在系统运行时,按一下开关,就在 RST断出现一段高电平,使器件复位。2. 时钟信号是产生单片机工作的时钟信号,控制着计算机的工作节奏,可 以通过

14、提高时钟频率来提高 CPU的速度。AT89S52内部有一个可控的反相放大 器,弓I脚XTAL1、XTAL2为反相放大器输入端和输出端,在 XTAL1、XTAL2上 外接12MHZ晶振和30pF电容便组成振荡器。时钟信号常用于 CPU定时和计 数。3. 键盘模块是是用于控制信号输入的类型,当按键按下时,可以通过单片 机编AT89S52单片机数模准换器、DAC0832 LM324运放放大、接口电路、键 盘输入程读取闭合的键号,实现相应的信号输出。其步骤主要是a、判断是否有键按下;b、去抖动,延时20ms左右;c、识别被按下的键号;d、处理,实现功能。4. DA转换也称为数模转换,是把数字量变换成模

15、拟量的线性电路。 单片机 产生的数字信号通过DAC0832转化成模拟信号,输出相应的电流值,通过LM324 集成运算放大器可以取出模拟量得电压值,最后利用示波器获得输出的模拟信号的波形;衡量数模转换的性能指标有分辨率、转换时间、精度、线性度等。LED显示器用由若干个发光二极管按一定的规律排列而成,是一种能够将电能转化为可见光的固态的半导体器件,它可以直接把电转化为光用于是显示相关 输出波形的信息,包括信号的类型、频率和幅值。2.3设计功能1. 产生方波、锯齿波、三角波、正弦波四种波形频率100HZ-1KHZ按键可实现步进100HZ调节。2. 产生-5V- +5V的幅值的波形信号,幅值调节可选按

16、键步进0.1V,也可选择用电位器无极调节。3. 显示采用8位LED显示器,前两位显示幅值;后四位显示频率。4. 按键输入采用8个按键实现输入,P00-P07。表2.1按键功能及10借口方波锯齿波三角波正弦波幅值加幅值减频率加频率减按键K8 1K7K1K2r K6K3K5 1K4I0P0.7P0.6P0.0P0.1P0.5P0.2P0.4P0.3第 3 章 主要电路元器件介绍3.1 AT89S52 单片机简介3.1.1 单片机简介AT89S52是一种低功耗、高性能CMOS睑微控制器,具有8K在系统可编程Flash 存储器。使用 Atmel 公司高密度非易失性存储器技术制造,与工业 80C5 1

17、产品指令和引脚完全兼容。 片上 Flash 允许程序存储器在系统可编程, 亦适于 常规编程器。在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得AT89S52在众多嵌入式控制应用系统中得到广泛应用。其外形及引脚排列如图3-1 所示。图 3-1 51 单片机引脚图3.1.2 主要性能与MCS-51单片机产品兼容;8K 字节在系统可编程 Flash 存储器; 1000 次擦写周期;全静态操作: 0Hz-33MHz; 三级加密程序存储器;32 个可编程 IO 口线;三个 1 6位定时器计数器; 六个中断源;全双工UART串行通道; 低功耗空闲和掉电模式; 掉电后中断可唤醒; 看门狗定时器

18、; 双数据指针; 掉电标识符。3.1.3 管脚功能说明? VCC:供电电压46V典型值5V);? GND接地;? RST:复位引脚输入高电平使89C51复位,返回低电平退出复位;? EAVpp:运行方式时,EA为程序存储器选择信号,EA接地时CPU总是从 外部存储器中取指令,EA接高电平时CPU可以从内部或外部取指令;F LASH编程方式时,该引脚为编程电源输入端 Vpp( =5V或12V);? PSEN:外部程序存储器读选通信号,CPU从外部储存器取指令时,从PSEN引脚输出读选通信号(负脉冲);? ALE PROG运行方式时,ALE为外部储存器低8位地址锁存信号,FLASH 编程方式时,该

19、引脚为负脉冲输入端;? XTAL1, XTAL2为内部振荡器电路(反相放大器)的输入端和输出端,外接 晶振电路;? P0 口: P0 口为一个8位漏级开路双向10 口,每脚可吸收8TTL门电 流。当P0 口的管脚第一次写1时,被定义为高阻输入。P0能够用于 外部程序数据存储器,它可以被定义为数据地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此 时P0外部必须被拉高;? P1 口: P1 口是一个内部提供上拉电阻的 8位双向I0 口,P1 口缓冲 器能接收输出4TTL门电流。P1 口管脚写入1后,被内部上拉为高,可 用作输入,P1 口被外部下拉为

20、低电平时,将输出电流,这是由于内部上 拉的缘故。在FLASH编程和校验时,P1 口作为第八位地址接收;? P2 口: P2 口为一个内部上拉电阻的8位双向IO 口,P2 口缓冲器可 接收,输出4个TTL门电流,当P2 口被写“ 1”时,其管脚被内部上 拉电阻拉高,且作为输入。并因此作为输入时,P2 口的管脚被外部拉低, 将输出电流。这是由于内部上拉的缘故。P2 口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2 口输出地址的高八位。在给 出地址“ 1”时,它利用内部上拉优势,当对外部八位地址数据存储器进 行读写时,P2 口输出其特殊功能寄存器的内容。P2 口在FLASH编程和 校

21、验时接收高八位地址信号和控制信号;? P3 口: P3 口管脚是8个带内部上拉电阻的双向IO 口,可接收输出4 个TTL门电流。当P3 口写入“ 1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3 口将输出电流(ILL)这是由于上拉的缘故。P3 口也可作为AT89S52的一些特殊功能口如表 3.1。表3.1引脚第二功能引脚第二功能P3.0RXD(串行输入口)P3.4T0 (记时器0外部输入)P3.1TXD(串行输出口)P3.5T1 (记时器1外部输入)P3.2INT0 (外部中断0 )P3.6WR(外部数据存储器写选通)P3.3INT1 (外部中断1)P3.7RD

22、 (外部数据存储器读选通)3.2 DAC0832 简介DAC0832是8分辨率的DA转换集成芯片。与微处理器完全兼容。这个DA芯片以其价格低廉、接口简单、转换控制容易等优点,在单片机应用系统中得 到广泛的应用。DA转换器由8位输入锁存器、8位DAC寄存器、8位DA转换电 路及转换控制电路构成。3.2.1 DAC0832 的主要特性参数* 分辨率为 8 位;* 电流稳定时间 1us ;* 可单缓冲、双缓冲或直接数字输入;* 只需在满量程下调整其线性度;*单一电源供电(+5V+15V;* 低功耗, 20mW。3.2.2 DAC0832 结构* D(D7: 8位数据输入线,TTL电平,有效时间应大于

23、90ns(否则锁存器 的数据会出错 ) ;* ILE :数据锁存允许控制信号输入线,高电平有效;* CS :片选信号输入线(选通数据锁存器),低电平有效;* WR1数据锁存器写选通输入线,负脉冲(脉宽应大于500ns)有效。由ILE、CS WR的逻辑组合产生LE1,当LE1为高电平时,数据锁存器状态随输 入数据线变换, LE1 的负跳变时将输入数据锁存;图 3-2 DAC0832 的逻辑框图和引脚排列* XFER数据传输控制信号输入线,低电平有效,负脉冲(脉宽应大于500ns) 有效;* WR2 DAC寄存器选通输入线,负脉冲(脉宽应大于500ns)有效。由WR2 XFER的逻辑组合产生LE2

24、,当LE2为高电平时,DAC寄存器的输出随寄存器的 输入而变化,LE2的负跳变时将数据锁存器的内容打入 DAC寄存器并开始DA转 换。* IOUT1 :电流输出端1,其值随DAC寄存器的内容线性变化;* IOUT2 :电流输出端2,其值与IOUT1值之和为一常数;* Rfb :反馈信号输入线,改变 Rfb 端外接电阻值可调整转换满量程精度;* Vcc :电源输入端,Vcc的范围为+5V+15V;* VREF:基准电压输入线,VREF的范围为-10V+10V* AGND模拟信号地* DGND数字信号地3.2.3 DAC0832 工作方式单缓冲方式。单缓冲方式是控制输入寄存器和 DAC寄存器同时接

25、收资料, 或者只用输入寄存器而把DAC寄存器接成直通方式。此方式适用只有一路模拟 量输出或几路模拟量异步输出的情形。双缓冲方式。双缓冲方式是先使输入寄存器接收资料,再控制输入寄存 器的输出资料到DAC寄存器,即分两次锁存输入资料。此方式适用于多个DA转 换同步输出的情节。直通方式。直通方式是资料不经两级锁存器锁存,即CS* ,XFER* ,WR1*, WR2* 均接地, ILE 接高电平。此方式适用于连续反馈控制线路和不带微机的控 制系统,使用时,必须通过另加10接口与CPUS接,以匹配CPU与 DA转换。3.3 数码显示管3.3.1 原理及分类一位 LED 显示器由 8 个发光二极管组成,其

26、中 7 个发光二极管 a- )将 这些部分组合在一起。运行 Keil软件需要 WIN98 NT WIN2OO0 WINXP等操作 系统。如果你使用C语言编程,那么Keil几乎就是你的不二之选,即使不使用 C 语言而仅用汇编语言编程,其方便易用的集成环境 强大的软件仿真调试工 具也会令你事半功倍。优点:1. Keil C51 生成的目标代码效率非常之高,多数语句生成的汇编代码很紧 凑,容易理解。在开发大型软件时更能体现高级语言的优势。2. 与汇编相比, C 语言在功能上 结构性 可读性 可维护性上有明显的优势,因而易学易用。用过汇编语言后再使用C来开发,体会更加深刻。KeilC51软件提供丰富的

27、库函数和功能强大的集成开发调试工具,全Win dows界面5.1.2 Proteus7.1O 简介Proteus软件是英国Labcenter electronics 公司出版的EDA工具软件(该 软件中国总代理为广州风标电子技术有限公司)。它不仅具有其它EDA工具软件 的仿真功能,还能仿真单片机及外围器件。它是目前最好的仿真单片机及外围 器件的工具。虽然目前国内推广刚起步,但已受到单片机爱好者 从事单片机 教学的教师 致力于单片机开发应用的科技工作者的青睐。 Proteus 是世界上 著名的EDA工具(仿真软件),从原理图布图、代码调试到单片机与外围电路协 同仿真,一键切换到PCB设计,真正实

28、现了从概念到产品的完整设计。是目前 世界上唯一将电路仿真软件、PCB设计软件和虚拟模型仿真软件三合一的设计 平台,其处理器模型支持 8051、HC11、PICDsPIC33、AVR、ARM、8086 和 MSP430 等,2010年又增加了 Cortex和DSP系列处理器,并持续增加其他系列处理器 模型。在编译方面,它也支持IAR、Keil和MPLA等多种编译器。功能特点:Proteus软件具有其它EDA工具软件(例:multisim )的功能。这些功能 是:1 原理布图2. PCB自动或人工布线3. SPICE电路仿真革命性的特点1. 互动的电路仿真用户甚至可以实时采用诸如 RAM ROM键

29、盘,马达,LED LCD ADDA 部 分 SPI 器件,部分 IIC 器件。2. 仿真处理器及其外围电路可以仿真51系列、AVR PIC、ARM等常用主流单片机。还可以直接在基 于原理图的虚拟原型上编程,再配合显示及输出,能看到运行后输入输出的效 果。配合系统配置的虚拟逻辑分析仪、示波器等, Proteus 建立了完备的电子 设计开发环境。5.1.3 Keil 与 Proteus 联合调试仿真把 Keil 与 Proteus 联合调试将大大加快开发进度。用 Proteus 把硬件电 路搭载出来, 用 keil 写 c 程序,把写好要调试的程序下载到 Proteus 仿真的单 片机里, 然后,

30、 更改程序调试参数。在 Proteus 里边有示波器, 可以用示波器查 看程序的运行结果,不断调试,摘到达到满意的效果时在进行实物调试,这样 不仅加快了调试的进程,而且使单片机的rom的擦写次数明显减少,增加了单片机的使用寿命。5.2 主程序图 5-1 主程序 流程图主程序首先将需要初始化的部分进行初始化, 然后负责循环执行按键扫描, 数 码管显示、指示LED显示和DA数据输出。这些过程都是以模块化的程序实现的, 程序中有,按键扫描程序、数码管扫描 显示程序、LED扫描显示程序、定时器定时计算程序、查表程序和 DA数据输出 程序,通过调用这些程序完成波形的产生,幅值和频率的改变。5.3按键处理

31、程序程序位于函数keyscan()中,keyscan()函数位于主循环中,每循环一次调用 一次,检测键盘是否按下,如果按下去延时抖动,然后检测到底是哪个按键按 下,针对不同的按键按下采取不同的动作。因为按键采用的是扫描法,故需要注意消抖的处理,在此用软件法去抖动 即可。软件法去抖动的实质是软件延时,即检测到某一键状态变化后延时一段 时间,再检测该按键的状态是否保持着,如是则作为按键处理,否则,视为抖 动,不予理睬。去抖动的延时时间一般参考资料多描述为20ms左右,在实际应用中应大于20ms。否则,会导致按一次多处理,影响程序正常执行。图5-2 按键扫描及处理程序流程图表5.1各按键功能及10情

32、况方波锯齿波三角波正弦波幅值加幅值减频率加频率减按键K8 1K7K1K2r K6K3K5 1K4IOP0.7P0.6P0.0P0.1P0.5P0.2P0.4P0.3按键是以上表中的中的定义方式工作的,不同的按键按下就会有不同的参 数,程序根据这些参数来执行,从而产生不同的波形,不同的频率,在数码管上显示不同的信息5.4数码管输出程序分析图5-3数码管显示流程图数码管输出程序是送段选码和位选码的程序,位于主程序中。轮流点亮6个数码管,每大约5ms变换一次,由于轮换的次数太快,由于视觉暂留效应,看上去是6个数码管看上去好像一直点亮。5.5各种波形产生思路5.5.1方波产生思路方波的产生比较简单,只

33、需要根据按键输入的幅值和频率计算出相应的DA数据送给数据就可以产生相应的波形。具体来说,例如产生500Hz的2.5V的波形。首先,要计算出定时器的定时频率,由于,方波只有两种状态,峰值和值。峰值时由按键设定的,其中峰值占一个周期的一半,即要定时产生 1000Hz 的定时器频率,每进一次中断函数就把DA的数据更新为上次值的取反。让DA 数据在峰值和0之间依次切换即可。5.5.2锯齿波产生思路首先,根据按键设定的波形频率,选择一个周期内合适的点数,根据点数 和峰值计算相邻2个点的幅度的步进值,根据点数和频率设定相邻2点的时间值,计算出定时器的初值,然后,定时输出刷新DA的数据就可以产生一定频率和幅

34、值的波形。5.5.3三角波产生思路首先,根据按键设定的波形频率,选择一个周期内合适的点数,根据点数 和峰值计算相邻2个点的幅度的步进值,根据点数和频率设定相邻2点的时间值,计算出定时器的初值,然后,设置一个变量每进一次定时中断DA数据就加幅值步进,当等于总点数的一半时,每进一次定时中断就把DA数据减幅值步进直到DA数据为0,计数变量清零。每进一次定时中断输出刷新DA的数据就可以产生一定频率和幅值的三角波。5.5.4正弦波产生思路首先,写一个表格,然后根据按键设定的波形频率,选择一个周期内合适 的点数,根据点数和峰值计算相邻 2个点的幅度的步进值,根据点数和频率设 定相邻2点的时间值,计算出定时

35、器的初值,然后,设置一个变量每进一次定 时中断DA数据就加幅值步进,当等于总点数的一半时,每进一次定时中断就 查表把DA数据减幅值步进直到DA数据为0,计数变量清零。每进一次定时 中断查表输出刷新DA的数据就可以产生一定频率和幅值的三角波。5.6仿真的各种波形效果 LSI0|311-1!1*#图5-4各种波形效果图第6章课程设计体会经过将近两周的单片机课程设计,终于完成了我们的多功能信号发生器的 设计,基本达到设计要求,从心底里来说,还是很高兴的,毕竟这次设计把实 物都做了出来。在本次设计的过程中,我发现很多的问题,虽然以前还做过这样的设计但 这次设计真的让我长进了很多。对于单片机设计,其硬件

36、电路是比较简单的, 主要是解决程序设计的问题,而程序设计是一个很灵活的东西,它反映了你解 决问题的逻辑思维和创新能力,它才是一个设计的灵魂所在。因此在整个设计 过程中大部分时间是用在程序上面的。很多子程序是可以借鉴书本上的,但怎 样衔接各个子程序才是关键的问题所在,这需要对单片机的结构很熟悉。因此 可以说单片机的设计是软件和硬件的结合,二者是密不可分的。要设计一个成功的电路,必须要有耐心,要有坚持的毅力。在整个电路的 设计过程中,花费时间最多的是各个单元电路的连接及电路的细节设计上,如 在多种方案的选择中,我们仔细比较分析其原理以及可行的原因。这就要求我 们对硬件系统中各组件部分有充分透彻的理解和研究,并能对之灵活应用。完 成这次设计后,我在书本理论知识的基础上又有了更深层次的理解。同时在本次设计的过程中,我还学会了高效率的查阅资料、运用工具书、 利用网络查找资料。我发现,在我们所使用的书籍上有一些知识在实际应用中 其实并不是十分理想,各种参数都需要自己去调整。偶而还会遇到错误的资料 现象,这就要求我们应更加注重实践环节。最后还要在此感谢指导老师们和我的同学,他们在整个过程中都给予了我 充分的帮助与支持。display();参考文献1 谭浩强 .C 程序设

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论