为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

DAC0832波形发生器

2017-09-28 37页 doc 391KB 52阅读

用户头像

is_672950

暂无简介

举报
DAC0832波形发生器DAC0832波形发生器 盐城工学院课程设计说明书(2011) 目录 1(概述 ............................................................................................................................. 2 1.1DAC0832设计波形发生器的历史背景和意义 ..................................................... 2 1.2DAC0832设...
DAC0832波形发生器
DAC0832波形发生器 盐城工学院课程设计说明书(2011) 目录 1(概述 ............................................................................................................................. 2 1.1DAC0832设计波形发生器的历史背景和意义 ..................................................... 2 1.2DAC0832设计波形发生器的发展和现状 ............................................................ 2 2(课题设计 ............................................................................................................. 3 2.1系统功能概述 ..................................................................................................... 3 2.2方案的提出及论证 ............................................................................................. 3 方案一 ............................................................................................................... 3 方案二 ............................................................................................................... 3 方案三 ............................................................................................................... 3 方案四 ............................................................................................................... 4 3(系统硬件设计 ............................................................................................................. 4 3.1 系统硬件总体设计概述 .................................................................................... 4 3.2 系统各个模块的设计 ........................................................................................ 4 3.2.1 单片机系统模块 .................................................................................... 4 3.2.2 晶振时钟模块 ........................................................................................ 7 3.2.3 复位电路模块 ........................................................................................................ 8 3.2.3 数模转换模块 ........................................................................................ 9 3.2.4 运放模块 .............................................................................................. 10 4(软件设计流程 ........................................................................................................... 10 4.1 系统总体控制功能图 ...................................................................................... 10 4.2 各波形的产生 .................................................................................................. 11 4.2.1 锯齿波的实现 ...................................................................................... 11 4.2.2 方波的实现 .......................................................................................... 11 4.2.3 三角波的实现 ...................................................................................... 12 4.2.4 正弦波的实现 ...................................................................................... 12 5.软硬件联调及调试结果 .............................................................................................. 13 5.1 硬件电路调试 .................................................................................................. 13 5.2 各功能模块软件调试 ...................................................................................... 13 5.2.1矩形波软件调试 ................................................................................... 13 5.2.2锯齿波软件调试 ................................................................................... 14 5.2.3正弦波软件调试 ................................................................................... 14 5.2.4三角波软件调试 ................................................................................... 15 5.2.5阶梯波软件调试 ................................................................................... 15 5.3实物图 .............................................................................................................. 16 结束语 ............................................................................................................................. 19 参考文献 ......................................................................................................................... 19 附录 ................................................................................................................................. 20 附录1 原理图 ......................................................................................................... 20 附录2 PCB图.......................................................................................................... 21 附录3 C语言程序清单 .......................................................................................... 21 附录4 元器件清单 ................................................................................................. 25 盐城工学院课程设计说明书(2011) 1(概述 1.1DAC0832设计波形发生器的历史背景和意义 自20世纪90年代以来,单片机已进入了一个高速发展的阶段,世界上著名的半导体厂商都注重新型单片机的研制、生产和推广。单片机的应用已经深入到国民经济的各个领域中,由单片机控制的微型电脑产品比比皆是。单片机正朝着面向多层次用户的多品种多规格方向发展。 基于单片机和DAC0832的函数信号发生器的设计,本课题是充分运用大学期间对所学专业知识,结合现在使用的信号发生器的基本功能,完成一个系统的设计的全过程,通过单片机和模数转换芯片以及放大器产生多种波形的函数信号发生器在控制领域有着相当广泛的应用。 应用单片机控制的信号发生器的设计,整个系统控制简单,能够全方位的掌握在校期间所学的大部分知识,对单片机的学习是必不可少的,数模转换也是一个非常重要的知识,在对于数字电子和模拟电子的掌握上有非常大的应用,运算放大器的使用更加增强了对模拟模拟电路得理解,整个系统体积小,成本低廉,功能齐全,通过不同的按键,系统输出相应的波形,从而对所学的知识做了全面的深入的学习和掌握。 1.2DAC0832设计波形发生器的发展和现状 信号发生器在生产实践和科技领域中有着广泛的应用。函数信号发生器在电路实验和设备检测中具有十分广泛的用途。例如在通信、广播、电视系统中都需要射频发射,这就需要信号发生器,在工业、农业、生物医学等领域内,如高频感应加热、熔炼、淬火、超声诊断、核磁共振图像等,都需要功率或大或小、频率或高过低的信号。在现代社会中,自动化技术早已渗透到社会生产的各个领域中,高精度、宽频率、高稳定性的信号发生器对于所属整体系统的性能改善和提高起着至关重要的作用。多波形的函数信号发生器是电子实验室的基础设备之一,目前各类学校广泛使用的是标准产品,虽然功能齐全,性能指标高,但是价格昂贵,本文所研究的信号发生器采用单片机和DAC0832结合起来,通过数字电子电路向模拟电路转化,该系统虽然性能指标不如标准产品,但是它体积小,成本低,便于携带等特点,亦可作为电子随身设备之一。系统通过单片机产生数字信号通过DAC0832转换为模拟信号,再通过放大器就可以得到各种波形,通过几个按键切换想要的波形。 2 盐城工学院课程设计说明书(2011) 2(课题方案设计 2.1系统功能概述 本系统中所应用的控制芯片为STC89C51,这个单片机用于产生最初的信号源,通过单片机循环产生数据,再将数据传给数模转换芯片。单片机通过内部程序控制给出数据的频率,从而控制整个系统的信号输出频率。单片机送给数模转换芯片DAC0832的数据通过内部器件转换成模拟信号输出,这是输出的是数字信号,需要通过运算放大器转化为模拟信号,如果要得到双极性的信号,那么就要通过两级运放转化。 系统中有五个按键与单片机的P1口相连,每个按键对应不同的波形,分别为方波、锯齿波、三角波、梯形波和正弦波,当P1.0按键按下时,P1.0引脚为低电平,系统的输出波形为方波,同样的道理,以后的每个按键分别按下时则系统的输出为相应的波形,当没有按键按下时,没有任何波形的输出,从而整个系统的输入设备为与P1口相连的五个按键,输出为与按键相应的波形。 在不同的实验要求中,有不同的波形需求,本系统的设计基本能够满足实验室的各种实验,节约了成本,减小了体积,降低了功耗。 2.2方案的提出及论证 方案一 用分立元件组成的函数信号发生器通常是单函数信号发生器,且频率不高,工作不是很稳定,而且不易调试,虽然结构很简单,制作容易,但是输出的信号频率线性度差、频率稳定度低、频率稳定度低、频率分辨率低、频率变换时间比较长,相位的噪声大以及人机界面不友好等缺点。 方案二 可以由晶体管、运放IC等通用器件制作,更过的则是应用专门的函数信号发生器IC,如8038等,它们功能较少而且精度不高,频率上限不高,调节方式也不够灵活,频率和占空比也不能独立调节,二者相互影响。 方案三 利用专用直接数字合成DDS芯片的函数信号发生器,能产生任意波形并能达到很高的频率,但是成本较高,从成本上考虑,不适合选择这么昂贵的芯片。 3 盐城工学院课程设计说明书(2011) 方案四 利用常用的单片机STC89C51和常用的数模转换芯片DAC0832结合,在利用运放转化为模拟电压,通过按键输入给单片机控制不同波形的输出,其体积小,成本低, 因为我选择此方案。 功率小,又达到学习的目的,如图2.2所示, 按键输入数模转换 89C51复位电路极性转换 晶振电路波形输出 图2.2方案四原理框图 3(系统硬件设计 3.1 系统硬件总体设计概述 本系统主要是应用在实验室的信号的地要求,对于不同的实验需要有不同的波形需求,在实验条件要求不高的情况下,比如一定的脉宽调制,需要一定频率的方波进行调节,这时需要一个简单的方波,而本系统正好能够提供这样一种波形,还有其他一些条件下都可以通过本系统的控制来调节。 本系统提供了五种不同的波形输出,通过五个按键控制相应的方波,锯齿波,梯形波,三角波和正弦波。每次只能有一个键按下,没有按键按下时没有波形产生,按键输入信号给单片机,单片机对按键的情况进行处理,例如第一个按键按下时,系统需要产生一个方波,那么单片机循环输出0和1,那么通过DAC0832就通过运放循环输出高低电平,这样系统就能够输出方波,同样的道理,锯齿波、三角波、正弦波的产生也可以采用相似的道理。 本设计的硬件系统分为三个模块:单片机系统模块,DA转换模块,放大器模块。 3.2 系统各个模块的设计 3.2.1 单片机系统模块 本系统采用的单片机芯片是STC89C52,此芯片是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—Falsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。STC89C52是一种带4K字节闪 4 盐城工学院课程设计说明书(2011) 烁可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除100次。该器件采用高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,STC89C52单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。 主要特性: 与MCS-51 兼容 4K字节可编程闪烁存储器 , 寿命:1000写/擦循环,数据保留时间:10年 全静态工作:0Hz-24Hz 三级程序存储器锁定 128*8位内部RAM 32可编程I/O线 两个16位定时器/计数器 5个中断源 可编程串行通道低功耗的闲置和掉电模式 片内振荡器和时钟电路 图3.2.1-1 STC89C52单片机管脚图 管脚图如图3.2.1-1所示 51单片机内部有一个全双工的串行通信口,即串行接收和发送缓冲器(SBUF),这两个在物理上独立的接收发送器,既可以接收数据也可以发送数据。但接收缓冲器只能读出不能写入,而发送缓冲器则只能写入不能读出,它们的地址为99H。这个通信口既可以用于网络通信,亦可实现串行异步通信,还可以构成同步移位寄存器使用。如果在传行口的输入输出引脚上加上电平转换器,就可方便地构成标准的RS-232接口。 串行数据通信两种形式 异步通信 在这种通信方式中,接收器和发送器有各自的时钟,它们的工作是非同步的,异步通信用一帧来表示一个字符,其内容如下:一个起始位,仅接着是若干个数据位。 同步通信格式中,发送器和接收器由同一个时钟源控制,为了克服在异步通信中,每传输一帧字符都必须加上起始位和停止位,占用了传输时间,在要求传送数据量较大的场合,速度就慢得多。同步传输方式去掉了这些起始位和停止位,只在传输数据块时先送出一个同步头(字符)标志即可。 同步传输方式比异步传输方式速度快,这是它的优势。但同步传输方式也有其缺点,即它必须要用一个时钟来协调收发器的工作,所以它的设备也较复杂。 串行数据通信的传输速率 串行数据传输速率有两个概念,即每秒转送的位数bps(Bit per second)和每秒 5 盐城工学院课程设计说明书(2011) 符号数—波特率(Band rate),在具有调制解调器的通信中,波特率与调制速率有关。 串行口和控制寄存器 单片机串行口寄存器结构如图3.2.1-2所示。SBUF为串行口的收发缓冲器,它是一个可寻址的专用寄存器,其中包含了接收器和发送器寄存器,可以实现全双工通信。但这两个寄存器具有同一地址(99H)。MCS-51的串行数据传输很简单,只要向发送缓冲器写入数据即可发送数据。而从接收缓冲器读出数据即可接收数据。 TI发送中 断 发送SBUF TXD串行输 出 系统总 线 移 接受位 SBUF 时 RXD串行钟 输入移位寄 输入 存器 RI接受中 断 图3.2.1-2 串行口寄存器结构图 串行口控制寄存器: SCON控制寄存器,它是一个可寻址的专用寄存器,用于串行数据的通信控制,单元地址是98H,其结构格式如表3.2.1-1所示。 表3.2.1-1 SCON寄存器结构 SCON寄存器结构 SCON D7 D6 D5 D4 D3 D2 D1 D0 SM0 SM1 SM2 REN TB8 RB8 TI RI 位地址 9FH 9EH 8DH 9CH 9BH 9AH 99H 98H SM0、SM1:串行口工作方式控制位。 SM0,SM1 工作方式 00 方式0 01 方式1 10 方式2 11 方式3 SM2:多机通信控制位。 多机通信是工作于方式2和方式3,SM2位主要用于方式2和方式3。接收状态,当串行口工作于方式2或3,以及SM2=1时,只有当接收到第9位数据(RB8)为1时,才把接收到的前8位数据送入SBUF,且置位RI发出中断申请,否则会将接受到的数据放弃。[11]当SM2=0时,就不管第位数据是0还是1,都难得数据送入SBUF, 6 盐城工学院课程设计说明书(2011) 并发出中断申请。 工作于方式0时,SM2必须为0。 REN:允许接收位。 REN用于控制数据接收的允许和禁止,REN=1时,允许接收,REN=0时,禁止接收。 TB8:发送接收数据位8。 在方式2和方式3中,TB8是要发送的——即第9位数据位。在多机通信中同样亦要传输这一位,并且它代表传输的地址还是数据,TB8=0为数据,TB8=1时为地址。。 TI:发送中断标志位。 可寻址标志位。方式0时,发送完第8位数据后,由硬件置位,其它方式下,在发送或停止位之前由硬件置位,因此,TI=1表示帧发送结束,TI可由软件清“0”。 RI:接收中断标志位。 可寻址标志位。接收完第8位数据后,该位由硬件置位,在其他工作方式下,该位由硬件置位,RI=1表示帧接收完成。 电源管理寄存器PCON PCON主要是为CHMOS型单片机的电源控制而设置的专用寄存器,单元地址是87H,其结构格式如表3.2.1-2所示。 表3.2.1-2PCON电源管理寄存器结构 PCON电源管理寄存器结构 PCON D7 D6 D5 D4 D3 D2 D1 D0 位符号 SMOD - - - GF1 GF0 PD IDL 在CHMOS型单片机中,除SMOD位外,其他位均为虚设的,SMOD是串行口波特率倍增位,当SMOD=1时,串行口波特率加倍。系统复位默认为SMOD=0。 3.2.2 晶振时钟模块 单片机的工作过程是:取一条指令、译码、进行微操作,再取一条指令、译码、进行微操作,这样自动的、一步一步的由微操作依序完成相应的指令规定的功能。各指令的微操作在时间上有严格的次序,这种微操作的时间次序称作时序。 89C51单片机的时钟信号通常由两种方式产生。一是内部时钟方式,二是外部时钟方式。内部时钟方式如图3.2(a)所示。只要在单片机的XTAL1和XTAL2引脚外接晶振即可。图中,电容C1和C2的作用是稳定频率和快速起振,电容值在5-30pF,典型值为30pF。晶振CYS的震荡频率要小于12MHz,典型值6MHz、12MHz或11.0592MHz。 外部时钟方式是把外部已有的时钟信号引入到单片机内,如图3.2(b)所示。此方式用于多片89C51单片机同时工作,并要求各单片机同步运行的场合。 7 盐城工学院课程设计说明书(2011) 图3.2.2 89C51单片机时钟方式 89C5189C51 CYSXTAL2XTAL2悬空C11818 振荡器 外部19191C2 时钟XTAL1XTAL2 信号 (a)内部时钟方式(b)内部时钟方式 实际应用中通常采用外接晶振 的内部时钟方式,晶振的频率高一些时可以提高指令的执行速度,但相应的功耗和噪声也会增加,在满足系统功能的前提下,应选择低一些的晶振频率。当系统要与PC机通信时,应选择11.0592MHz的晶振,这样便于将波特率设定为标称值。 3.2.3 复位电路模块 复位是使单片机或系统中的其他部件处于某种确定的厨师状态。单片机的工作就是从复位开始的。 当80C51的RST引脚加高电平复位信号(保持2个以上机器周期)时,单片机内部就执行复位操作。复位信号变低时,单片机开始执行程序。 实际操作中,复位操作有两种基本形式:一种是上电复位,另一种是上电与按键均有效的复位,如图3.2.3所示 C1C1 99RSTRST +5VR2+5V R1 DR189C5189C51 (a)上电复位电路(b)按键与上电复位 图3.2.3 单片机复位电路 上电复位要求接通电源后,单片机自动实现复位操作。常用的上电复位电路如图3.3(a)所示,上电瞬间RST引脚获得高电平,随着电容C1的充电,RST引脚的高电平将逐渐下降。RST引脚的高电平只要能保持足够的时间(2个机器周期),单片机就可以进行复位操作。该电路得典型的电阻和电容参数为:晶振:12MHz时,C1 8 盐城工学院课程设计说明书(2011) 为10uF,R1为8.2KΩ;晶振为6MHz时,C1为22uF,R1为1KΩ。 按键与上电均有效的复位电路如图3.3(b)所示,上电复位原理与图3.3(a)相同,另外在单片机运行期间,还可以利用按键完成复位操作。晶振为6MHz时,R2为200Ω。 实际应用中如果单片机断电后,有可能在较短的时间内再次加电,可以在R1上并接一个放电二极管,这样可以有效的提高此种情况下复位的可能性。 3.2.3 数模转换模块 DAC0832芯片主要特性与结构 DAC0832系列为美国国家半导体公司生产的具有2个数据寄存器的8位分辨率的D/A转换芯片。此芯片与微处理器完全兼容,可以完全相互代换,并且价格低廉,接口简单,转换控制容易,在单片机应用系统中得到了广泛的应用。 DAC0832的主要特性: 分辨率为8为; 转换时间为1us; 可单缓冲、双缓冲或者直接数字转换; 只需在满量程下调整其线性度; 逻辑电平输入与TTL兼容; 单一电源供电(+5V,+15V); 低功耗(0.2Mw); 基准电压的范围为?10V。 DAC0832的内部结构: DAC0832的内部结构框图如图3.2.3-1所示。它由8为输入锁存器、8为DAC寄存器、8为D/A转换器电路及转换控制电路构成,通过两个输入寄存器构成两级数据输入锁存。 VrefCS1VCC20DI7,DI08位输入8位DAC8位D/AIOUT2219WR1ILE锁存器寄存器转换器IOUT1318AGNDWR2DAC0832417DI3XFER516ILEILE1ILE2DI2DI4&615DI1DI5&714DI0DI6Rfb813VrefD17AGNDCS912RfbIOUT2&1011VCCWR1DGNDIOUT1 WR2XFER 图3.2.3-1 DAC0832内部逻辑框图 图3.2.3-2 DAC0832管脚图 9 盐城工学院课程设计说明书(2011) 使用时,数据输入可以采用两级锁存(双锁存)、单级锁存(一级锁存,一级直通方式)或直接输入(两级直通)形式。上图中,2个与门电路组成据存期输出控制逻辑电路,该逻辑电路得功能是进行数据锁存控制,当ILE1(ILE2)=1是,寄存器的输出跟输入数据变化。 DAC0832的引脚如图3.2.3-2所示。 3.2.4 运放模块 uA741通用高增益运算通用放大器,早些年最常用的运放之一.应用非常广泛, 双列直插8脚或圆筒8脚封装。工作电压?22V,差分电压?30V,输入电压?18V,允许功耗500mW.其管脚与OP07(超低失调精密运放)完全一样,uA741 通用放大器,性能不是很好,但满足一般需求,因为他太老了,引脚图如图3.2.4所示。 图3.2.4 UA741运算放大器管脚图 4(软件设计流程 4.1 系统总体控制功能图 函数发生器的设计 K0 K1 K2KK4 键 键键键3 锯 三梯键正 齿 角形方弦 波 波 波 波 波 图3.8 系统总体控制功能图 10 盐城工学院课程设计说明书(2011) 4.2 各波形的产生 4.2.1 锯齿波的实现 4.2.2 方波的实现 11 盐城工学院课程设计说明书(2011) 4.2.3 三角波的实现 4.2.4 正弦波的实现 12 盐城工学院课程设计说明书(2011) 5.软硬件联调及调试结果 5.1 硬件电路调试 按照电路图将各器件焊接到实验板上,在焊接过程中难免会出现短路或断路的现象,这就需要对焊接完的硬件电路进行调试。 首先,用焊接完的实物和电路图进行对照,找出是否有遗漏或者接错的地方,如有发现及时更正。 其次,用万用表检查电路中是否有短路和断路的现象,并检查所有的电源线是否导通,所有的地线是否导通。 再次,将电路分成多个小模块,并且编辑一些专门的小程序,来检测它们是否正确。 最后,接通电源,用万用表检测各部分电路的电压和电流是否正常。 5.2 各功能模块软件调试 硬件电路检查无误后,需要对系统的各个模块进行软件与硬件相结合的调试。本设计使用的是keil系列仿真器,将仿真器接入硬件电路中,并和电脑的串行口工作。如果电路工作不正常,那么将程序设置几个断点,并单步运行程序,找出程序的错误及时更正。 5.2.1矩形波软件调试 13 盐城工学院课程设计说明书(2011) 5.2.2锯齿波软件调试 5.2.3正弦波软件调试 14 盐城工学院课程设计说明书(2011) 5.2.4三角波软件调试 5.2.5阶梯波软件调试 15 盐城工学院课程设计说明书(2011) 5.3实物图 16 盐城工学院课程设计说明书(2011) 17 盐城工学院课程设计说明书(2011) 18 盐城工学院课程设计说明书(2011) 结束语 本次设计由于自己理论知识的有限和实践经验的不足,使得本设计还存在着一些不足与缺陷,但是基本实现了波形发生器的控制。 在这次课程设计中,我是受益非常多的。在老师的指导下同学的帮助下,不仅了解许多关于自动控制和单片机程序编写的知识,并且能够运用这些知识进行温度系统的弱点对强电的自动控制,进一步研究,,掌握系统功能,特性,解决一些实际的问题。为以后的学习道路打下了坚实的基础。 参考文献 [1] 康光华.电子技术基础 模拟部分.高等教育出版社. [2] 康光华.电子技术基础 数字部分.高等教育出版社. [3] 李华.MCS-51单片机实用接口技术.北京航空航天大学出版社. [4] 刘文涛.单片机语言C51典型应用设计.人民邮电出版社. [5] 尹建华.微型计算机原理与接口技术.北京:高等教育出版社.2003. [6] [英国]Guiyun Tian.单片机原理及应用(英文版)高等教育出版社. [7] 李刚,林凌,王炎.新概念单片机教程.天津大学出版社. [8] 李全利,迟荣强.单片机原理及接口技术.高等教育出版社. [9] 赵文博,刘文涛.单片机语言C51典型程序设计.人民邮电出版社. [10] 李刚.51系列单片机系统设计与应用技巧.北京航空航天大学出版社. [11] 张毅刚.MCS—51单片机应用设计.哈尔滨:哈尔滨工业大学出版社. [12] 李朝青.单片机原理与接口技术.北京:航空航天大学出版社.1999. 19 盐城工学院课程设计说明书(2011) 附录 附录1 原理图 +12VR2 471K1U3356+88.82UA741AC Volts U210k1011GNDIOUT1912RFBIOUT28813VREFDI7A17714DI0DI6-12V26615DI1DI5B35516DI2DI44417DI3XFERXFC318GNDWR2WR219WR1ILE(BY1/BY2)WRD120CSVCCXFDAC0832C1 U1U422pF32111939X1D0Q0XTAL1P0.0/AD0452238D1Q112MP0.1/AD1XFC2763337D2Q2P0.2/AD289441836D3Q3XTAL2P0.3/AD313125535D4Q4P0.4/AD414156622pF34D5Q5P0.5/AD517167733D6Q6R1P0.6/AD6181988932D7Q7RSTP0.7/AD710k121OEP2.0/A8C31122LEP2.1/A9ALE23P2.2/A10292474LS373PSENP2.3/A113025RP110uFALEP2.4/A12ALE3126RESPACK-8EAP2.5/A1327P2.6/A1428P2.7/A151110P1.0P3.0/RXD2211P1.1P3.1/TXD3312方波P1.2P3.2/INT04413P1.3P3.3/INT15514锯齿波P1.4P3.4/T06615P1.5P3.5/T17716三角波P1.6P3.6/WRWR8817P1.7P3.7/RD9阶梯波AT89C51正弦波 20 盐城工学院课程设计说明书(2011) 附录2 PCB图 附录3 C语言程序清单 #include #include #define uint unsigned int #define uchar unsigned char #define DAC0832 XBYTE[0xfffe] sbit k1=P1^0; sbit k2=P1^1; sbit k3=P1^2; sbit k4=P1^3; sbit k5=P1^4; unsigned char mm=0; 21 盐城工学院课程设计说明书(2011) unsigned char flag=0; unsigned char x,y; uchar code SETTAB[]={ //正弦波数据(正部分) 0x80, 0x83, 0x86, 0x89, 0x8D, 0x90, 0x93, 0x96, //(正上升部分) 0x99, 0x9C, 0x9F, 0xA2, 0xA5, 0xA8, 0xAB, 0xAE, 0xB1, 0xB4, 0xB7, 0xBA, 0xBC, 0xBF, 0xC2, 0xC5, 0xC7, 0xCA, 0xCC, 0xCF, 0xD1, 0xD4, 0xD6, 0xD8, 0xDA, 0xDD, 0xDF, 0xE1, 0xE3, 0xE5, 0xE7, 0xE9, 0xEA, 0xEC, 0xEE, 0xEF, 0xF1, 0xF2, 0xF4, 0xF5, 0xF6, 0xF7, 0xF8, 0xF9, 0xFA, 0xFB, 0xFC, 0xFD, 0xFD, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0xFD, 0xFD, 0xFC, 0xFB, 0xFA, 0xF9, 0xF8, 0xF7, 0xF6, //(正下降部分)80 0xF5, 0xF4, 0xF2, 0xF1, 0xEF, 0xEE, 0xEC, 0xEA, 0xE9, 0xE7, 0xE5, 0xE3, 0xE1, 0xDE, 0xDD, 0xDA, 0xD8, 0xD6, 0xD4, 0xD1, 0xCF, 0xCC, 0xCA, 0xC7, 0xC5, 0xC2, 0xBF, 0xBC, 0xBA, 0xB7, 0xB4, 0xB1, 0xAE, 0xAB, 0xA8, 0xA5, 0xA2, 0x9F, 0x9C, 0x99, 0x96, 0x93, 0x90, 0x8D, 0x89, 0x86, 0x83, 0x80, //正弦波数据(负部分) 0x80, 0x7C, 0x79, 0x78, 0x72, 0x6F, 0x6C, 0x69 , //(负下降部分)128,0x80 0x66, 0x63, 0x60, 0x5D, 0x5A, 0x57, 0x55, 0x51 , 0x4E, 0x4C, 0x48, 0x45, 0x43, 0x40, 0x3D, 0x3A , 0x38, 0x35, 0x33, 0x30, 0x2E, 0x2B, 0x29, 0x27 , 0x25, 0x22, 0x20, 0x1E, 0x1C, 0x1A, 0x18, 0x16 , 0x15, 0x13, 0x11, 0x10, 0x0E, 0x0D, 0x0B, 0x0A , 0x09, 0x08, 0x07, 0x06, 0x05, 0x04, 0x03, 0x02 , 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02 , 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09 , //(负上升部分)//80 0x0A, 0x0B, 0x0D, 0x0E, 0x10, 0x11, 0x13, 0x15 , 0x16, 0x18, 0x1A, 0x1C, 0x1E, 0x20, 0x22, 0x25 , 0x27, 0x29, 0x2B, 0x2E, 0x30, 0x33, 0x35, 0x38 , 0x3A, 0x3D, 0x40, 0x43, 0x45, 0x48, 0x4C, 0x4E , 0x51, 0x55, 0x57, 0x5A, 0x5D, 0x60, 0x63, 0x66 , 0x69, 0x6C, 0x6F, 0x72, 0x76, 0x79, 0x7C, 0x80 }; void DelayMS(uint ms) { uchar i; while(ms--) { 22 盐城工学院课程设计说明书(2011) for(i=0;i<120;i++); } } void fangbo() { DAC0832=y; x++; if(flag==0) {y=0xff; if(x==128){flag=1;y=0x00;} //方波+ } else {y=0x00; if(x==0){flag=0;y=0xff;} //方波- } } void juchibo() //锯齿波 { DAC0832=y; y+=1; } void sanjiaobo() { DAC0832=y; x++; if(flag==0) {y+=2; //三角波数据(上升部分) if(x==128){flag=1;y-=2;} } else {y-=2; if(x==0){flag=0;y=0;} //三角波数据(下升部分) } } void jietibo() //阶梯波 { DAC0832=y; y+=25; } 23 盐城工学院课程设计说明书(2011) void sin() //正弦波 {DAC0832=SETTAB[y]; x++; y++; } void read_key() { if(k1==0) {DelayMS(10); if(k1==0) { mm=1; while(k1==0); } } else if(k2==0) {DelayMS(10); if(k2==0) { mm=2; while(k2==0); } } else if(k3==0) {DelayMS(10); if(k3==0) { mm=3; while(k3==0); } } else if(k4==0) {DelayMS(10); if(k4==0) { mm=4; while(k4==0); } } else if(k5==0) {DelayMS(10); if(k5==0) { mm=5; while(k5==0); } } } 24 盐城工学院课程设计说明书(2011) main() { TMOD=0x02; TL0=156; TH0=156; TR0=1; ET0=1; EA=1; mm=0; for(;;) { read_key(); } } void t_0() interrupt 1 using 2 { switch(mm) {case 1: fangbo();break; case 2: juchibo();break; case 3: sanjiaobo();break; case 4: jietibo();break; case 5: sin();break; } } 附录4 元器件清单 瓷片电容 30pf 2个 电阻 1kΩ 1个 电阻 10kΩ 1个 晶振 12M 1个 极性电容 10uf 1个 电位器 10kΩ 1个 单片机 STC89C52 1个 运算放大器 UA741 1个 锁存器 74LS373 1个 按钮 6个 导线 若干 25
/
本文档为【DAC0832波形发生器】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
热门搜索

历史搜索

    清空历史搜索