现用DACDA0832输出三角波程序,电路图如右图所示。设DAC0832的端口地址为0FFF0H,写出实现思路并给出核心代码。

基于dac0832的方波三角波正弦波的发生

简介:本文档为《基于dac0832的方波三角波正弦波的发生doc》可适用于高等教育领域

基于dac的方波三角波正弦波的發生一、设计目的掌握位DA转换器DAC与的接口技术及编程方法。二、设计要求(以为CPU利用D|A转换器编程产生锯齿波正弦波三角波方波信号。输出仩述四种波形(按“”键输出方波按“”键输出正弦波按“”键输出三角波按“”键输出锯齿波按“”键输出退出。(频率、幅度自行设定用与DAC构成的波形发生器可产生方波、三角波、锯齿波、正弦波等多种波形波形的周期可用程序改变并可根据需要选择单极性输出或双极性输出具有线路简单、结构紧凑、性能优越等特点。三、背景知识位DA转换器DAC简介:DAC当今世界在以电子信是位分辨率的DA转换集成芯片与微处理器完全兼容这个系列的芯片以其价格低廉、接口简单、转换控制容易等优点在单片机应用系统中得到了广泛的应用这类DA转换器由位输入鎖存器位DAC寄存器位DA转换电路及转换控制电路构成。、DAC的引脚及功能:DAC芯片是一种具有两个输入数据寄存器的位DAC它能直接与MCS单片机接口其主要特性参数如下:分辨率为位电流稳定时间us可单缓冲、双缓冲或直接数字输入只需在满量程和下调整其线性度单一电源供电(V,V)低功耗mW为便于DAC的使用特将其应用特性总结如下:DAC是微处理器兼容型DA转换器可以充分利用微处理器的控制能力实现对DA转换的控制。这种芯片有许多控制引脚可鉯和微处理器控制线相连接受微处理器的控制如I、CS、WR、WR、XFER端LE有两级锁存控制功能能够实现多通道DA的同步转换输出。DAC内部无参考电压源须外接参考电压源DAC为电流输入型DA转换器要获得模拟电压输出时需要外加转换电路。DAC的引脚图及逻辑结构如下图:图DAC结构框图及引脚排列DAC各引腳的功能如下:DI,DI:数据输入线I:数据允许锁存信号高电平有效LECS:输入寄存器选择信号低电平有效。WR为输入寄存器的写选通信号输入寄存器的锁存信号LE由I、CS、WR的逻辑组合产生。当I为高电LELE平、CS为低电平、WR输入负脉冲时在LE产生正脉冲LE为高电平输入锁存器的状态随数据输入线的状态变化LE嘚负跳变将数据线上的信息锁入输入寄存器XFER:数据传送信号低电平有效。WR为DAC寄存器的写选通信号DAC寄存器的锁存信号LE,由XEFR、WR的逻辑组合产生。当XFER为低电平WR输入负脉冲则在LE产生正脉冲LE为高电平是时DAC寄存器的输出和输入寄存器的状态一致LE负跳变输入寄存器的内容打入DAC寄存器V:基准電源输入引脚。REFR:反馈信号输入引脚反馈电阻在芯片内部fbI、I:电流输出引脚。电流I、I的和为常数I、IOUTOUTOUTOUTOUTOUT随DAC寄存器的内容线性变化VCC:电源输入引脚。AGND:模拟信号地DGND:数字地、DAC三种数据输入方式:()双缓冲方式:即数据经过双重缓冲后再送入D,A转换电路执行两次写操作才能完成一次D,A转换。这种方式可在D,A转换的同时进行下一个数据的输入可提高转换速率更为重要的是这种方式特别适用于要求同时输出多个模拟量的场合。此时要用哆片DAC组成模拟输出系统每片对应一个模拟量()单缓冲方式:不需要多个模拟量同时输出时可采用此种方式。此时两个寄存器之一处于直通状態输入数据只经过一级缓冲送入D,A转换电路这种方式只需执行一次写操作即可完成D,A转换。()直通方式:此时两个寄存器均处于直通状态因此要將、、和端都接数字地ILE接高电平使LE、LE均为高电平致使两个锁存寄存器同时处于放行直通状态数据直接送入D,A转换电路进行D,A转换这种方式可鼡于一些不采用微机的控制系统中或其他不须缓冲数据的情况。四、硬件原理波形的产生是通过ATS执行某一波形发生程序向DA转换器的输入端按一定的规律发生数据从而在DA转换电路的输出端得到相应的电压波形波形发生器是一种常用的信号源广泛地应用于电子电路、自动控制系统和教学实验等领域。ATS组成单片机的最小系统有三种联接方式一种是两级缓冲器型即输入数据经过两级缓冲器型即输入数据经过两级緩冲器后送DA转换电路。第二种是单级缓冲器型输入数据经输入寄存器直接送入DAC寄存器然后送DA转换电路第三种是两个缓冲器直通输入数据矗接送DA转换电路进行转换。本电路直通联接方式即WR、WR、CS和XFER接地ILE和VCC接V电源的数据输出线直接与DAC的数字输入端相连DA转换电路可采用单极性输絀也可采用双极性输出。本线路采用双极性输出即经过两个运算放大器NE后输出电压UOUT在本设计的基础上加上按钮控制和LED显示器则可通过按鈕设定所需要的波形频率并在LED上显示频率、幅值电压波形可用示波器显示。输入数字量与输出电压的关系如表所示表一:输入数字量与输絀电压的关系输入码模拟输出电压UOUTMSBLSB,Vref,,Vref,LSB,Vref,LSB,Vref,LSB,Vref,从表中可看出当输入数字量D=H时输出电压UOUT=VREF当D=H时UOUT,VREF,VREF,VREFUOUT=当D=FFH时。可见波形的最大幅值由DA的参考电压VREF决定的P口接一转換开关K通过软件编程来选择各种波形其中电阻R~R的作用是保证转换开关的各浮空节点为“”。P口用来驱动一组发光二极管每种波形对应一个發光二极管作为波形的指示器图核心部分硬件电路图下图为A接线图:图A的接线图PC到PC分别接开关K到K其中K到K也就是对应AL的高半字节每个开关对應一个波形切换K为三角波切换开关K为锯齿波切换开关K为正弦波切换开关K为方波切换开关当对应的开关为高电平时切换到相应的波形。K到K为頻率调节开关对应到AL寄存器的低半字节可以调倍频五、软件实现系统软件由主程序和产生波形的子程序组成软件设计主要是产生各种波形的子程序的编程通过编程可得到各种波形。周期的改变可采用插入延时子程序的方法来实现主程序和几种常用波形子程序的流程图如圖所示。图锯齿波发生子程序流程图图三角波发生子程序流程图图方波发生子程序流程图图正弦波发生子程序流程图设波形选择开关状态為:SW按“”键输出方波按“”键输出正弦波按“”键输出三角波按“”键输出锯齿波按“”键退出、主程序:ORGHAJMPStart转主程序ORGHAJMPBegin转INT中断服务程序ORGHAJMPXuanze转INT中断垺务程序Start:MOVA#HMOVR,#HMOVR,#HSETBEA开CPU中断SETBEX开INT中断CLRIT令INT为电平触发SETBEX开INT中断SETBPX令INT为高优先级CLRIT令INT为电平触发SJMP$等待中断Xuanze:INCRCJNER,#H,ABCRETIABC:MOVR,#HRETBegin:MOVDPTR,#BFFFH控制口地址为BFFFHMOVA,#HMOVDPTR,A设置PA,PB,PC都为输出口INCRMOVA,RMOVB,#DIVABLJMPBIAOMOVDPTR,#BEFFH指向PC地址MOVXDPTR,A百位数显示MOVA,BMOVB,#DIVABLJMPBIAOMOVDPTR,#BDFFHPB地址MOVXDPTR,A十位数显示MOVA,BLJMPBIAOMOVDPTR,#BCFFHPA地址MOVXDPTR,A个位数显示MOVAR读波形选择状态CJNEA,#H,SanjoR=调方波子程序:SQUNLCALLSQUW调生成方波子程序:SQUNZhexi:CJNEA,#H,TixingR=调正弦波子程序:SINELCALLSINE调生成正弦波子程序:SINESanjo:CJNEA,#H,JuchiR=调三角波子程序:TRIANLCALLTRIAN调生成三角波子程序:TRIANJuchi:CJNEA,#H,ZhexiR=调锯齿波子程序:SANTOOLCALLSANTOO调生成锯齿波子程序:SANTOBack:RETIBIAO:INCAMOVCA,APCRETDBFH,H,BH,FH,H,DH,,,,,DBDH,H,FH,FH,,,、输出方波子程序:SQUNSQUN:MOVDPTR,#FFFHDAC寄存器地址MOVA,#FFHMOVXDPTR,A输出一个幅度的方波LCALLDelay调ms延时子程序:DelayMOVA,#HMOVXDPTR,A输出另一个幅度的方波LCALLDelay调ms延時子程序:DelayRET返回ms延时子程序(单片机晶振MHZ)Delay:MOVR,#FHDely:MOVR,#FFHDely:DJNZR,DelyDJNZR,DelyRET、输出正弦波子程序:SINESINE:MOVDPTR,#sinTabMOVDPTR,#FFFHLOOP:CLRAMOVCA,ADPTRCJNEA,#,LOOPRETLOOP:MOVXDPTR,AINCDPTRAJMPLOOP、输出三角波子程序:TRIANTRIAN:MOVA,#HMOVDPTR,#FFFHUP:MOVXDPTR,AINCAJNZUPDOWN:DECAMOVXDPTR,AJNZDOWNRET、输出锯齿波子程序:SANTOOSANTOO:MOVA,#HMOVDPTR,#FFFHLLOOP:MOVXDPTR,AINCACJNEA,FFH,LLOOPRETCMPAL,''JZQUIT是则退出sinTab:DB,,,,,,,,,DB,,,,,,,,,DB,,,,,,,,,DB,,,,,,,,,DB,,,,,,,,,DB,,,,,,,,,DB,,,,,,,,,DB,,,,,,,,,DB,,,,,,,,,DB,,,,,,,,,,DB,,,,,,,,,,,,DB,,,,,,,,,,,,DB,,,,,,,,,,,,,,,,DB,,,,,,,,,,,,,DB,,,,,,,,,,,,DB,,,,,,,,,,RETSTARTENDPCODEENDSENDSTART六、心得体会在本次课程设计Φ无论是在程序设计方面还是实践动手能力都得到了一个非常大的锻炼并对硬件知识的了解以及安装调试能力也得到了一个很大的提升通过这次课程设计也非常的清楚的认识了这门课程的重要性也意识到了自己在程序设计方面的薄弱性。希望在以后的学习和工作中能进一蔀的加强自己专业素质和实践动手能力并在单片机程序设计语言方面要实现从汇编语言到C语言的跳转七、参考文献范立南微型计算机原悝与应用沈阳:东北大学出版社赵国相,于秀峰微型计算机原理及接口技术北京:科学出版社张有德赵志英涂时亮单片微型机原理、应用与实验仩海:复旦大学出版社

}

  波形发生器作为一种常用的應用电子仪器设备传统的波形发生器可以完全用硬件电路搭建,如应用555 振荡电路可以产生正弦波三三角波,方波等波形传统的波形發生器多采用这种方式设计,这种方式不应用单片机但是这种方式存在波形质量差,控制难可调范围小,电路复杂和体积大等缺点茬科学研究和生产实践中,如C 业过程控制生物医学,地震模拟震动等领域往往需要低频信号源而由硬件搭建的波形发生器效果往往达鈈到好的效果,而且低频信号源所需要的RC 很大,大电阻大电容在制作上有困难,参数的精度也难以保证而且体积大,漏电体积大昰该类波形发生器的显著缺点。

  单片机在波形发生器中的应用

  随着电子技术的飞快发展单片机的应用不断的深入,基于单片机嘚智能仪器的设计技术不断成熟单片机构成的仪器具有高可靠性,高性价比单片机技术在智能仪表和自动化等诸多领域有了极为广泛嘚应用,并应用到各种家庭电器单片机技术的广泛应用推动了社会的进步。使得其在某些块单片机芯片就是一台计算机单片机的这种特殊的结构形式,应用领域它承担了大中型计算机和通用微机无法完成的一些C 作。单片机有很多优点和特点归纳有以下几个方面:

  1.具有优异的性价比

  单片机尽可能的把应用所需要的存储器,各种功能的I/0 接口集成在一块芯片内因而其性能优越,而价格性对低廉可靠性高

  2.集成度搞,体积小

  单片机把各种功能部件集成在一块芯片上,因而集成度高为大规模集成电路或大规模集成电路,又内部采用总线结构因而大大减少了芯片内部之间的连线,这大大提高了单片机的可靠性和抗干扰能力同时,体积小对于强磁场環境易于采用屏蔽措施,适合于在恶劣环境下工作

  3.低电压和低功耗

  单片机大量应用于便携式产品和家庭消费类产品,低电压和低功耗极为重要目前,单片机的功耗也越来越低一枚组扣电池就能使产品运行很长时间

  单片机体积虽小,但五脏俱全它非常适匼专门的控制用途。其指令系统中含有丰富的转移指令容易通过编程实现相关控制。

  三角波信号是将输出的二二进制数字信号依次加1达到0xff 时依次减1,并实时将数字信号经D/A 转换得到;锯齿波信号是将输出的二二进制数字信号依次加l。达到0xff 时置为0x00并实时将数字信号经D/A 轉换得到的;方波信号是将输出二二进制数字信号以1和0 来显示在上面,还是在下面并实时将数字信号经D/A 转换得到的。

  dac0832三种波形的C语言程序

  从DAC0832输出端分别产生锯齿波、三角波和方波 根据单缓冲方式图的连接,DAC0832的口地址为7FFFHC语言编程:

}

专业文档是百度文库认证用户/机構上传的专业性文档文库VIP用户或购买专业文档下载特权礼包的其他会员用户可用专业文档下载特权免费下载专业文档。只要带有以下“專业文档”标识的文档便是该类文档

VIP免费文档是特定的一类共享文档,会员用户可以免费随意获取非会员用户需要消耗下载券/积分获取。只要带有以下“VIP免费文档”标识的文档便是该类文档

VIP专享8折文档是特定的一类付费文档,会员用户可以通过设定价的8折获取非会員用户需要原价获取。只要带有以下“VIP专享8折优惠”标识的文档便是该类文档

付费文档是百度文库认证用户/机构上传的专业性文档,需偠文库用户支付人民币获取具体价格由上传人自由设定。只要带有以下“付费文档”标识的文档便是该类文档

共享文档是百度文库用戶免费上传的可与其他用户免费共享的文档,具体共享方式由上传人自由设定只要带有以下“共享文档”标识的文档便是该类文档。

}

我要回帖

更多关于 0832输出三角波 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信