欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    单片机原理及应用技术项目化项目7简单数字电压表的设计课件.ppt

    • 资源ID:87476053       资源大小:1.98MB        全文页数:80页
    • 资源格式: PPT        下载积分:12金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要12金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    单片机原理及应用技术项目化项目7简单数字电压表的设计课件.ppt

    项目7简单数字电压表的设计模块模块7 7简单数字电压表的设计简单数字电压表的设计7.1 项目描述项目描述7.2 项目目的与要求项目目的与要求7.3 项目支撑知识链接项目支撑知识链接 7.4 项目实施项目实施 项目拓展技能与练习项目拓展技能与练习 项目7简单数字电压表的设计【项目导入】工业测控领域的测量信号大多是模拟量,这些模拟量要送入单片机进行处理就必须进行模/数转换(A/D转换),经过A/D转换的信息就可以通过I/O口进行输出显示。单片机的A/D应用在工业控制领域十分广泛,在此我们通过数字电压表的设计来讲述单片机的A/D转换和数码管的接口显示电路,以便让读者掌握A/D转换器和数码管显示在单片机控制系统中的应用。项目7简单数字电压表的设计【项目目标】1.知识目标(1)理解A/D转换器的基本原理;(2)掌握A/D转换器与单片机的接口使用;(3)掌握数码管与单片机的接口连接。项目7简单数字电压表的设计2.能力目标(1)能够正确使用A/D转换器;(2)能够设计单片机与A/D转换器的接口电路;(3)能编程控制A/D转换器的数据转换;(4)能够设计单片机与数码管的接口电路。项目7简单数字电压表的设计项目7简单数字电压表的设计7.2 项目目的与要求项目目的与要求本项目的目的就是使用单片机AT89C51、ADC0809转换器、数码管设计一块数字电压表,该电压表能够准确测量05V之间的直流电压值,其测量最小分辨率为0.02V。项目在实施过程中需要解决以下关键问题。(1)ADC0809芯片的转换特性以及它与单片机的接口电路;(2)LED数码管显示原理及接口电路设计;(3)单片机C语言及程序设计。项目7简单数字电压表的设计7.3 项目支撑知识链接项目支撑知识链接7.3.1 A/D转换器及其接口电路转换器及其接口电路1A/D转换器单片机只能接收二进制数,但是在单片机构成的系统中,许多输入量都是非数字信号的模拟量,比如速度、压力、流量、温度等。这些模拟量要送入单片机进行处理,就必须转换成数字信号。A/D转换的作用就是把模拟量转换成单片机能够接收的数字量。因此人们把实现模/数转换的部件称为A/D转换器。项目7简单数字电压表的设计1)A/D转换器的性能指标性能指标是选用A/D转换芯片的依据,也是衡量芯片质量的重要参数。A/D转换器的性能指标主要由以下几个。(1)分辨率。分辨率表示输出数字量变化的一个最低有效位(LeastSignificantBit,LSB)所对应的输入模拟电压的变化量,一般定义为转换器的满刻度电压(基准电压)VFSR与2n之间的比值,即分辨率=VFSR/2n,其中n为A/D转换器输出的二进制位数,n越大,分辨率越高。项目7简单数字电压表的设计项目7简单数字电压表的设计(3)转换时间。A/D转换器完成一次A/D转换所需要的时间。转换时间越短,适应输入信号快速变化能力越强。当需要A/D转换的模拟量变化较快时,就需选择转换时间短的A/D转换器,否则会引起较大误差。转换时间的倒数就是转换速率。项目7简单数字电压表的设计(4)转换精度。转换精度是一个实际的A/D转换器和理想的A/D转换器相比的转换误差。绝对精度一般以LSB为单位给出,相对精度则是绝对精度与满量程的比值。(5)温度系数。温度系数表示A/D转换器受温度影响的程度。一般用环境温度变化1所产生的相对误差来表示,单位是ppm/(106/)。项目7简单数字电压表的设计项目7简单数字电压表的设计(1)采样与保持。采样就是将一个时间上连续变化的模拟量转换成时间上离散的模拟量。取样定理:设取样脉冲s(t)的频率为fs,输入模拟信号x(t)的最高频率分量为fmax,必须满足fs2fmax,y(t)才可以正确地反映输入信号(从而能不失真地恢复原模拟信号)。取样的具体过程如图7-2所示。项目7简单数字电压表的设计项目7简单数字电压表的设计由于A/D转换需要一定的时间,因此在每次采样以后,需要把采样电压保持一段时间。采样后保持的过程如图7-3所示。图7-3采样保持电路及输出波形项目7简单数字电压表的设计s(t)有效期间,开关管VT导通,uI向C充电,uO(=uI)跟随uI的变化而变化;s(t)无效期间,开关管VT截止,uO(=uC)保持不变,直到下次采样。由于集成运放A具有很高的输入阻抗,因此在保持阶段,电容C上所存电荷不易泄放。(2)量化和编码。数字量最小单位所对应的最小量值叫作量化单位。将采样-保持电路的输出电压化为量化单位的整数倍的过程叫作量化。用二进制代码来表示各个量化电平的过程叫作编码。项目7简单数字电压表的设计项目7简单数字电压表的设计图7-4划分量化电平的两种方法项目7简单数字电压表的设计2常用A/D器件的接口电路1)ADC0809简介ADC0809是一种逐次逼近式8路模拟量输入、8位数字量输出的A/D转换器。其内部有一个8通道多路开关,它可以根据地址码锁存译码后的信号,仅选通8路模拟输入信号中的一个进行A/D转换。ADC0809的主要特性如下:(1)分辨率为8位。(2)转换时间为100s。项目7简单数字电压表的设计(3)单一电源为+5V。(4)模拟输入电压范围为05V,不需要零点和满刻度校准。(5)具有可控三态输出缓存器。(6)启动转换控制为脉冲式(正脉冲),上升沿使所有内部寄存器清零,下降沿使A/D转换开始。(7)工作范围温度为4085。(8)低功耗,约为15mW。项目7简单数字电压表的设计ADC0809的内部逻辑结构图如图7-5所示。由图可以看出,ADC0809由一个8路模拟开关、一个地址锁存与译码器、一个A/D转换器和一个三态输出锁存器构成。多路开关可选通8个模拟通道,允许8路模拟通道分时输入,供A/D转换器进行转换。三态输出锁存器用于锁存A/D转换完成的数字量,当OE端为高电平时,才可以从三态输出锁存器取走转换完的数据。项目7简单数字电压表的设计图7-5ADC0809的内部逻辑图项目7简单数字电压表的设计项目7简单数字电压表的设计图7-6ADC0809引脚项目7简单数字电压表的设计(1)START:A/D转换启动信号端。START端输入下降沿时启动芯片,开始A/D转换,在数据转换期间该引脚需要保持低电平状态;START端输入上升沿时复位。(2)EOC:转换结束信号输出端。EOC=0时,表示正在进行转换;EOC=1时,表示转换结束。该端既可以作为查询的状态标志,也可以作为中断请求信号。项目7简单数字电压表的设计(3)OE:输出允许信号端,用于控制三态输出锁存器向单片机输出转换后的数字量。OE=0时,输出数据线呈高阻;OE=1时,输出转换得到的数据。(4)CLOCK:时钟信号端。由于ADC0809内部没有时钟发生装置,因此该引脚用于连接外部时钟,时钟频率在101280kHz之间。(5)Vcc和GND:Vcc为电源端,接5V;GND为接地端。项目7简单数字电压表的设计项目7简单数字电压表的设计项目7简单数字电压表的设计从前面的引脚功能可以看出,只有在ALE信号有效时,ADDA、ADDB、ADDC输入的通道地址才被锁存。启动信号START启动后开始转换,但是EOC信号是在START的下降沿到来10s后才变为无效的低电平。这要求查询程序待EOC无效后再开始查询,转换结束后由OE产生信号输出数据。项目7简单数字电压表的设计项目7简单数字电压表的设计图7-7ADC0809与单片机的连接项目7简单数字电压表的设计1)模拟通道的选择在图7-7中模拟通道选择信号ADDA、ADDB和ADDC分别接低三位地址A0、A1、A2(即P0.0、P0.1、P0.2),而地址锁存允许信号ALE由P2.0控制,则8路模拟通道的地址为0FEF8H0FEFFH。此外,通道地址选择以作写选通信号。项目7简单数字电压表的设计图中把ALE信号与START信号连接在一起,这样可以使得在信号的前沿写入通道地址,紧接着在其后沿就可以启动转换。ADC0809的启动信号START由片选线P2.0与写信号的“或非”产生。这要求一条向ADC0809写操作指令来启动转换:#defineADDIN0XBYTE0 xfef0/定义0809的口地址ADDIN0=0 x00;/启动A/D转换(INT0)项目7简单数字电压表的设计2)转换数据的传送A/D转换后的数据应及时传送给单片机进行处理。数据的传送可采用下述三种方式:(1)定时传送方式。对于一种A/D转换来说,转换时间作为一项技术指标是已知和固定的,因此可采用延时子程序处理。在A/D转换启动后就调用延时子程序,时间延时已到,转换就完成了,然后就可进行数据传送。项目7简单数字电压表的设计(2)查询方式。A/D转换芯片有转换完成的状态信息,例如ADC0809的EOC引脚,因此可采用查询方式测试EOC的状态,即可知道转换是否完成,并确定何时进行数据传送。(3)中断方式。把转换完成的状态信号(EOC)作为中断请求信号,以中断方式进行数据传送。不管采用上述哪种方式,只要确定转换完成,就可通过指令进行数据传送。首先送出口地址并以信号有效(OE信号即有效)时,将数据送上数据总线,供单片机读取。项目7简单数字电压表的设计【例7-1】在图7-7所示的接口电路设计中实现8路模拟量输入,该系统为巡回监测系统。过程分析:ADC0809的8路通道地址为0FEF0H0FEF8H。在51程序设计中,要访问外部RAM器件,需通过XBYTE指令定义在本系统中。ADC0809的通道0的地址为0 xfef0,读取该通道值的语句为ad_value=XBYTE0 xfef0。项目7简单数字电压表的设计程序设计如下:#include#include#defineAD08090 xfef0sbitP3_5=P35;Unsignedchardat=0 xff;Unsignedcharchannel_num=0 x00;Unsignedcharad_value8;/*主程序*/项目7简单数字电压表的设计main()IT1=1;EA=1;EX1=1;XBYTEAD0809+channel_num=0 x00;/启动ADC0809While(1);/*主程序*/VoidInt1_Int1SR()interrupt2项目7简单数字电压表的设计ad_valuechannel_num=XBYTEAD0809+channel_num;channel_num+;XBYTEAD0809+channel_num=0 x00;/重新启动ADC0809If(channel_num=8)channel_num=0;项目7简单数字电压表的设计7.3.2 LED数码管显示控制技术数码管显示控制技术1LED数码管在单片机应用系统中,如果需要显示的内容只有数码和某些字母,则使用LED数码管是一种较好的选择。LED数码管即为发光二极管显示器(LightEmittingDiode,LED),具有显示醒目、成本低、配置灵活、接口方便等特点。单片机应用系统中常用它来显示系统的工作状态和采集的信息输入数值等。项目7简单数字电压表的设计1)LED数码管简介LED数码管显示器由8只发光二极管组成。7只发光二极管排成“8”字形,另一段构成小数点,各段标记如图7-8所示。通过不同的组合,可用来显示数字09、字母AF及小数点“”等。项目7简单数字电压表的设计图7-87段数码管结构项目7简单数字电压表的设计LED数码管按其外形尺寸有多种形式,使用较多的是0.5英寸和0.8英寸;按显示颜色也有多种,主要有红色和绿色;按亮度强弱可以分为超亮、高亮和普亮。LED数码管的使用与发光二极管相同,根据其材料不同,正向压降一般为1.52V,额定电流为10mA,最大电流为40mA。静态显示时取10mA为宜,动态扫描显示可以加大脉冲电流,但一般不超过40mA。项目7简单数字电压表的设计LED数码管按电路中的连接方式可以分为共阴极和共阳极两种接法,如图7-8(b)和(c)所示。共阴极LED显示器的发光二极管所有字段的阴极均连接低电平,因此在使用共阴极数码管时,需要在相应字段上加高电平,才会使其发光;共阳极数码管所有字段的阳极均连接高电平,在使用时,需要在相应显示字段上加低电平。由于发光二极管排成“8”字形,因此要显示某个字符时,将相应字段点亮即可。例如,要显示1,点亮b、c段;要显示2,点亮a、b、g、e、d段。输出点亮相应段的数码称字形码,字形码各位定义见表7-2。项目7简单数字电压表的设计项目7简单数字电压表的设计2)编码方式LED数码管的编码方式有多种,按小数点计否可以分为七段码和八段码;按公共端连接方式可以分为共阴极字段码和共阳极字段码。不计小数点的共阴字段码和共阳字段码互为反码。表7-3给出的是共阴极和共阳极数码管的八段码编码表。项目7简单数字电压表的设计项目7简单数字电压表的设计2LED数码管显示电路1)数码管静态显示及其接口电路在静态显示方式下,每位数码管的ag和dp端与一个8位的I/O口相连。静态显示的主要优点是电路设计简单,显示稳定,编程简单,而且LED的亮度控制容易,只需在驱动端增加相应的电流调节电阻即可方便地调节LED的亮度;不足之处是占用硬件资源较多,每个LED需要独占8条输出线,随着显示位数的增加,需要的I/O口线也将增加。图7-9就是2位共阳极数码管的静态电路。项目7简单数字电压表的设计图7-9数码管静态显示接口电路项目7简单数字电压表的设计在图7-9中显示“28”的程序如下:#includeucharcodeDSY_CODE=/段码表0 xc0,0 xf9,0 xa4,0 xb0,0 x99,0 x92,0 x82,0 xf8,0 x80,0 x90,0 xff;voidmain()P0=0 xFF;While(1)P0=DSY_CODE2;/显示数字2P2=DSY_CODE8;/显示数字8项目7简单数字电压表的设计2)数码管动态显示及其接口电路LED静态显示使用的元器件较多,在数码管显示器较多的场合,电路显得繁琐,为了简化线路,降低成本,单片机应用系统中常常采用动态扫描显示方式。动态扫描显示是将显示各位的所有相同字段线连在一起,每一位的a段连在一起,b段连在一起,h段连在一起,共8段,由一个8位的I/O口控制,而每一位的公共端由另外一个I/O口控制,如图7-10所示。项目7简单数字电压表的设计图7-10动态扫描显示电路项目7简单数字电压表的设计动态方式的工作原理是:逐个地循环点亮各位显示器,也就是说在任一时刻只有1位显示器在显示。为了使人看到所有显示器都在显示,就需加快循环点亮各位显示器的速度(提高扫描频率),利用人眼的视觉残留效应,给人感觉到与全部显示器持续点亮的效果一样。项目7简单数字电压表的设计一般地,每秒循环扫描不低于50次。在这里需要指出的是,由于每位显示器只有部分时间点亮,因此看上去亮度有所下降,为了达到与持续点亮一样的亮度效果,必须加大显示器的驱动电流。一般有几位显示器,电流就得加大几倍。动态扫描显示电路的特点是:占用I/O端线少;电路较简单,硬件成本低;编程较复杂,CPU要定时扫描刷新显示。当要求显示的位数较多时,通常采用动态扫描显示方式,如图7-10所示。项目7简单数字电压表的设计从图7-10中可以看出,各位数码管的ah端并联在一起,通过驱动器与单片机系统的P1口相连,每只数码管的共阳极通过电子开关与Vcc相连,电子开关(三极管)受控于P3口。图中数码管为共阳极数码管。要点亮某一位数码管时,先将该位显示代码送至P1口,再选通该位电子开关(相应的口线输出低电平)。项目7简单数字电压表的设计在图7-9中,动态显示“28”的C51程序如下:#include#include#defineucharunsignedintsbitP30=P30sbitP37=P37/定义位线ucharcodeDSY_CODE=/段码表0 xc0,0 xf9,0 xa4,0 xb0,0 x99,0 x92,0 x82,0 xf8,0 x80,0 x90,0 xff;项目7简单数字电压表的设计/*延时程序*/VoidDelayMS(unitx)uchart;while(x-)for(t=120;t0;t-);/*主程序*/voidmain()项目7简单数字电压表的设计While(1)P0=DSY_CODE2;/数字2的段码送P0口P30=0;DelayMS(1);P30=1;/关闭P0=DSY_CODE8;/数字8的段码送P0口P37=0;DelayMS(1);P37=1;项目7简单数字电压表的设计7.4 项项 目目 实实 施施按照项目的设计要求,将系统分为主控模块、A/D转换模块、LED显示模块、驱动电路模块等,如图7-11所示。主控模块是AT89C51小系统,A/D转换模块采用ADC0809转换器芯片,LED显示模块采用3位7段共阳数码管实现。项目7简单数字电压表的设计图7-11单片机的数字电压表系统框图项目7简单数字电压表的设计7.4.1 项目硬件设计项目硬件设计单片机的P1.0P1.7作为3位动态数码管的字段显示控制,3位数码管采取共阴极数码管,数/模转换器ADC0809采样通道3输入的模拟量,CLK信号连接P1.3引脚,由T0定时器提供,P1.2连接START可启动模/数转换,P1.1连接EOC可判断模/数转换是否结束,数据的传输由P1.0控制,ADC0809的参考电压VREF=Vcc,VREF接地,硬件的具体设计见硬件原理图7-12。项目7简单数字电压表的设计图7-12数字电压表的硬件原理图项目7简单数字电压表的设计7.4.2 项目软件设计项目软件设计由于ADC0809在进行A/D转换时需要CLK信号,而本设计中的CLK接在单片机的P1.3引脚上,因此产生CLK信号的方法要用软件来实现,即由定时器T0来提供。编程思路如下:首先在确定控制方式后,对引脚进行初始化并选择转换的通道,然后启动A/D转换,待转换结束后要把数据传送到P0口进行显示。具体思路如程序流程图7-13所示。项目7简单数字电压表的设计图7-13程序流程图项目7简单数字电压表的设计根据程序流程图,写出单片机C语言程序清单如下:#include#defineucharunsignedchar#defineuintunsignedint/各数字的数码管段码(共阴)ucharcodeDSY_CODE=0 x3f,0 x06,0 x5b,0 x4f,0 x66,0 x6d,0 x7d,0 x07,0 x7f,0 x6f;sbitCLK=P13;/时钟信号sbitST=P12;/启动信号项目7简单数字电压表的设计sbitEOC=P11;/转换结束信号sbitOE=P10;/输出使能/*延时子程序*/voidDelayMS(uintms)uchari;while(ms-)for(i=0;i120;i+);/*数码管显示转换结果子程序*/voidDisplay_Result(uchard)项目7简单数字电压表的设计P2=0 xf7;/第4个数码管显示个位数P0=DSY_CODEd%10;DelayMS(5);P2=0 xfb;/第3个数码管显示十位数P0=DSY_CODEd%100/10;DelayMS(5);P2=0 xfd;/第2个数码管显示百位数P0=DSY_CODEd/100;DelayMS(5);项目7简单数字电压表的设计/*主程序*/voidmain()TMOD=0 x02;/T1工作模式2TH0=0 x14;TL0=0 x00;IE=0 x82;TR0=1;P1=0 x3f;/选择ADC0809的通道3(0111)(P1.4P1.6)while(1)项目7简单数字电压表的设计ST=0;ST=1;ST=0;/启动A/D转换while(EOC=0);/等待转换完成OE=1;Display_Result(P3);OE=0;/*T0定时器中断给ADC0809提供时钟信号*/voidTimer0_INT()interrupt1CLK=CLK;项目7简单数字电压表的设计7.4.3 项目综合仿真与调试项目综合仿真与调试1使用KeilC51编译源程序KeilC51是MCS-51系列兼容单片机的开发系统,利用它可以编辑、编译、汇编、连接C程序和汇编程序,从而可以生成在单片机中进行烧录的.hex文件,具体步骤在项目1中已作详细介绍(在此略去),具体生成的文件如图7-14所示。项目7简单数字电压表的设计图7-14数字电压表程序仿真生成的.hex文件项目7简单数字电压表的设计2使用Proteus系统仿真软件调试并验证系统运行的结果具体仿真的步骤在项目1中已作详细介绍。下面给出Proteus下的仿真结果,如图7-15所示。在图7-15中,可通过调节电位器来显示不同的电压值(05V)。项目7简单数字电压表的设计图7-15数字电压表的Proteus仿真图项目7简单数字电压表的设计3动手做在完成系统仿真后,可以按照本系统硬件设计部分给出的原理图,在万能板(或印刷板)上进行电子元器件的连接与调试。本项目所需的元件清单见表7-4。项目7简单数字电压表的设计项目7简单数字电压表的设计项目7简单数字电压表的设计项项 目目 小小 结结本项目通过设计制作一个数字电压表,讲述了A/D转换的原理、ADC0809转换器的使用和LED7段数码管接口电路的设计。经过对仿真实验结果进行分析可知,达到了预期效果。设计中通过对信息采集、数据处理及信息显示等方面的学习,大家可掌握单片机对ADC0809的数据处理和单片机与数码管的接口技术,为今后应用单片机处理相关应用问题奠定扎实的基础。项目7简单数字电压表的设计项目拓展技能与练习项目拓展技能与练习【拓展技能训练】在项目7的基础上设计一块电压表,实现ADC0809的各个通道的电压测量,用Proteus软件进行仿真。项目7简单数字电压表的设计【项目练习】(1)叙述A/D转换的原理。(2)简述ADC0809内部结构和引脚的使用功能。(3)简述数码管的显示原理。(4)写出共阳极数码管显示字符和数字的编码。项目7简单数字电压表的设计(5)设计单只数码管循环显示数字“09”,要求:主程序中的循环语句反复将09的段码送至P0口,使数字09循环显示,结果用Proteus进行仿真。(6)设计用数/模转换芯片ADC0809来控制PWM输出,要求:通过调节可变电阻Rp1来调节脉冲宽度。

    注意事项

    本文(单片机原理及应用技术项目化项目7简单数字电压表的设计课件.ppt)为本站会员(可****)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开