波形发生器设计2011109313刘旭东20112134彭声浩2010800521向.doc

波形发生器设计2011109313刘旭东20112134彭声浩2010800521向.doc

  1. 1、本文档共23页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
波形发生器设计2011109313刘旭东20112134彭声浩2010800521向

波形发生器设计 2011109313 刘旭东 声浩 2010800521 向嫚丽 1.实验目的 掌握数/模转换的基本原理及编程方法; 掌握D/A转换芯片DAC0832的结构特点、工作原理及使用方法; 掌握利用串行口扩展I/O口的方法; 掌握BCD译码驱动器74LS47的结构、功能及使用方法 2.实验要求 设计一个单片机系统,能够在不同的开关控制下输出不同的波形,可供选择的波形有方波、三角波、梯形波、锯齿波、和正弦波,并能显示输出波形的编号。 3.程序流程图 程序的主流程图如下: 主流程图 4.课程设计报告内容 4.1波形图思路 在8051单片机的控制下,产生三角波,锯齿波,方波,梯形波以及正弦波,各种波形所采用的硬件接口都是一样的,由于控制程序不同而产生不同的波形 4.2波形图设计过程 将该任务分成六个模块进行设计,分别为:锯齿波模块,三角波模块,方波模块,正弦波模块,,梯形波模块,将所有模块拼合成总体模块。 我们所涉及的电路: 4.2.1 DAC0832 DAC0832是8位分辨率D/A转换集成芯片,与处理器完全兼容,具有价格低廉,接口简单,转换控制容易等优点,在单片机应用系统中得到广泛的应用。 D/A转换器由八位输入锁存器、八位DAC寄存器、八位D/A转换电路以及转换电路构成。 DAC0832输出是电流型的,但实际应用中往往需要电压输出信号,所以还必须一个外接的运算放大器转换称电压。其引脚如下图1所示: 图1:DAC0832引脚图 ? D0~~~ 图2:74LS47引脚图 ? D、C、B、A:BCD码输入引脚 ? a、b、c、d、e、f、g:7段LED数码管的输出引脚 ? LT:测试引脚,当本引脚输入低电平时,所连接的7段数码管全亮。正常情况下,应输入高电平 ? RBI:涟波淹没输入引脚。正常情况下,应输入高电平 ? BI/RBO:淹没输入或涟波淹没输出引脚。正常显示下,应输入高电平或空接。若本引脚输入低电平,且D、C、B、A引脚输入为0,则该位数不显示,这项功能用于消除前置0或者消除尾端0. ? D、C、B、A:BCD码输入引脚 ? a、b、c、d、e、f、g:7段LED数码管的输出引脚 ? LT:测试引脚,当本引脚输入低电平时,所连接的7段数码管全亮。正常情况下,应输入高电平 ? RBI:涟波淹没输入引脚。正常情况下,应输入高电平 ? BI/RBO:淹没输入或涟波淹没输出引脚。正常显示下,应输入高电平或空接。若本引脚输入低电平,且D、C、B、A引脚输入为0,则该位数不显示,这项功能用于消除前置0或者消除尾端0. 4.2.3 7段数码管 7段数码管一般有8个发光二极管组成,其中有7个细长的发光二极管组成数字显示,另外一个圆形的发光二极管显示小数点。 当发光二极管导通时,相应的一个点或一个笔画发光。控制相应的二极管导通,就能显示各种字符。发光二极管的阳极连在一起称为共阳极数码管,阴极连在一起称为共阴极数码管。 图3:七段数码管引脚图 4.3 波型分析及流程图 4.3.1锯齿波模块 8051单片机的累加器A从0开始循环增量,每增量一次向DAC0832写入一个数据,得到一个输出电压,这样可以获得一个正向的阶梯波。 DAC0832的分辨率为8位,如其满足的电压为5V,则一个阶梯的幅度为 5V/(2*2*2*2*2*2*2*2)=19.5mV 程序如下: LOOP1: ;正向锯齿波 MOV R1,#02H; 1us LCALL DISP; 2us L11: MOV R3,#00H; 1us L12: MOV A,R3; 1us MOVX @DPTR,A; 2us INC R3; 1us CJNE R3,#0FFH,L12; 2us JB P2.1,STR; 2us AJMP L11; 2us 程序从标号LOOP1处执行到指令到执行AJMP LOOP共需14个机器周期,采用12MHZ的晶振,一个机器周期为1us,则每个阶梯的时间为t=14*1us,一个正向阶梯波的总周期的总时间为T=255*t=3570us,即此阶梯波的重复频率为F=1/3570=280HZ.由此可见,由软件来产生波形,其频率是较低的。要想提高频率,可通过改进程序,减少执行时间,但这种方法是有限的,根本的办法还得靠改进路. 图4锯齿波 由图4可见,由于每一个阶梯波较小,总体看起来是一个锯齿波.如果要改变这种波形的周期,可采用延时的方法。 程序若如下: DELAY: MOV R6,#0AH ;延时1ms子程序 DEL2:

文档评论(0)

youbika + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档