第8章常用外围设备接口电路第3版—双解汇编和C51程序配套免费下载的单片机实验仿真50例50例全部取自于本书中例题和习题机械工业出版社同名教材配套电子教案张志良主编Email:zzlls@126.com广州网站建设数码管和编码方式⒈LED数码管⒉LED数码管编码方式8.1.2静态显示方式及其典型应用电路LED数码管显示电路在单片机应用系统中可分为静态显示方式和动态显示方式。在静态显示方式下,每一位显示器的字段需要一个8位I/O口控制,而且该I/O口须有锁存功能,N位显示器就需要N个8位I/O口,公共端可直接接+5V(共阳)或接地(共阴)。显示时,每一位字段码分别从I/O控制口输出,保持不变直至CPU刷新显示为止,也就是各字段的亮灭状态不变。静态显示方式编程较简单,但占用I/O端线多,即软件简单、硬件成本高,一般适用显示位数较少的场合。⒈并行扩展静态显示电路【例8-2】已知电路如图8-2所示,显示数(≤255)存在内RAM30H(设为234)中,试编制显示子程序。ProteusISIS虚拟电路仿真见例9-15。⒉串行扩展静态显示电路【例8-3】已知电路如图8-3所示,P1.0控制串行输出,显示字段码已分别存在32H~30H内RAM中,试编制显示子程序。ProteusISIS虚拟仿真调试见例9-16。8.1.3动态显示方式及其典型应用电路动态扫描显示电路是将显示各位的所有相同字段线连在一起,每一位的a段连在一起,b段连在一起,…,g段连在一起,共8段,由一个8位I/O口控制,而每一位的公共端(共阳或共阴COM)由另一个I/O口控制,如图8-4所示。在某一瞬时,只让某一位的字位线处于选通状态(共阴极LED数码管为低电平,共阳极为高电平),其他各位的字位线处于开断状态,同时字段线上输出该位要显示的相应字符的字段码。在这一瞬时,只有这一位在显示,其他几位暗。同样,在下一瞬时,单独显示下一位,这样依次循环扫描,轮流显示,由于人视觉的滞留效应,人们看到的是多位同时稳定显示。动态扫描显示电路的特点是占用I/O端线少;电路较简单,硬件成本低;编程较复杂,CPU要定时扫描刷新显示。当要求显示位数较多时,通常采用动态扫描显示方式。【例8-4】已知电路如图8-5所示,显示字段码存在以TAB为首址的ROM中,试编制循环扫描(100次)显示子程序。KeilC51软件调试和ProteusISIS虚拟电路仿真见例9-17。8.3键盘接口电路8.3.1键盘接口慨述⒈按键开关去抖动问题消除抖动不良后果的方法有硬、软件两种方法:⑴硬件去抖动:利用双稳电路、单稳电路和RC滤波电路⑵软件去抖动:延时10ms后再确认该键是否确实按下。⒉按键连接方式可分为独立式按键和矩阵式键盘。独立式按键是各按键相互独立,每个按键占用一根I/O端线,每根I/O端线上的按键工作状态不会影响其他I/O端线上按键的工作状态,⑴独立式按键⑵矩阵式键盘I/O端线分为行线和列线,按键跨接在行线和列线上。按键按下时,行线与列线连通。配置灵活,但每个按键必须占用一根I/O端线,电路结构显得繁杂。适用于按键数量较少的场合。占用I/O端线较少,编程较复杂,适用于按键较多的场合。【例8-6】试按图8-12编制按键掃描子程序。8.3.3矩阵式键盘及其接口电路【例8-7】已知电路如图8-13所示,要求将闭合键编号存入以30H为首地址的内RAM,闭合键总数存入40H,试编制键盘扫描程序。ProteusISIS虚拟电路仿真见教辅书例9-19。需要说明的是,图8-13电路在许多单片机教材和技术资料中被介绍,但实际上该电路连接存在问题,当同一行有多键同时按下,且该行其中一键所在列又有多键同时按下时,会发生信号传递路径出错。例如,K1、K2、K8、K9同时按下,当P1.4行扫描输出低电平时,按理,仅有P1.2、P1.1会因K2、K1闭合而得到低电平列信号。但由于K2与K9同列且K8与K9同行,P1.4输出的低电平信号会通过K1→K9→K8传递到P1.0,产生低电平列信号,引起出错。同理,当P1.6行扫描输出低电平时,其低电平信号会通过K9→K1→K2传递到P1.2,产生低电平列信号,引起出错。不出错的条件是多键行与多键列不交叉。因此,这种矩阵式键盘电路适用于无锁按键并使用中断处理时相对合理。8.4A-D转换接口电路在单片机应用系统中,常需要将检测到的连续变化的模拟量,如电压、温度、压力、流量、速度等转换成数字信号,才能输入到单片微机中进行处理。将模拟量转换成数字量的过程称为A-D转换;8.4.1A-D转换的基本概念UA=D×UREF/2N(其中:D=D0×20+D1×21+…+DN-1×2N-1)D为N位二进制数字量,UA为电压模拟量,UREF为参考电压。无论A-D或D-A,其转换关系为:⒈A-D转换器的主要性能指标:①分辨率。分辨率=UREF/2N②量化误差。③转换时间。⒉A-D转换器分类⑴逐次逼近式⑵双积分式⑶V-F变换式8.4.2并行ADC0809及其接口电路ADC0809是8通道8位CMOS逐次逼近式A-D转换器,美国国家半导体公司产品,是目前国内应用较广泛的8位通用A-D芯片。⑶CLK:外部时钟输入端,允许范围为10~1280KHz。⑷D0~D7:A-D转换数字量输出端。⑸OE:A-D转换结果输出允许控制端,高电平有效。⑹ALE:8路通道地址锁存控制端。⑺START:A-D转换启动控制端。⑻EOC:A-D转换结束信号输出端。⑼UREF(+)、UREF(-):正负基准电压输入端。⑴IN0~IN7:8路模拟信号输入端。⑵ADDA、ADDB、ADDC:8路模拟信号转换通道地址码输入端。【例8-8】按图8-16电路,要求用中断方式对8路模拟信号依次A-D转换一次,并把结果存入以30H为首址的内RAM中,试编制程序。查询方式时,0809EOC端可不必通过反相器与或相连,直接与80C51P1口或P3口中任一端线相连,不断查询EOC电平,当EOC高电平时,表示0809A-D完成,即可读0809A-D值。延时等待方式时,0809EOC端可不必与80C51相连,而是根据时钟频率计算出A-D转换时间,每路每次需64个时钟周期,80C51一机周发出2次ALE信号,因此需要32个机器周期,略微延长后直接读A-D转换值。INT0INT18.5D-A转换接口电路将数字量转换成模拟量的过程称为D-A转换。8.5.1D-A转换的基本概念⒈基本概念由于数字量不是连续的,且每次输出数据和D-A转换需要一定的时间,因此D-A转换器输出的模拟量随时间的变化曲线不是连续的,而是呈阶梯状。但若⊿T很短,1LSB也很小,曲线的台阶就很密,则模拟量曲线仍然可以看作是连续的。⒉主要性能指标⑴分辨率:D-A转换的位数越多,分辨率越高。⑵线性度⑶转换精度⑷建立时间⑸温度系数8.5.2DAC0832及其接口电路DAC0832是8位D-A芯片,是目前国内应用较广的8位D-A芯片。⑴8位数据输入端:DI0~DI7⑵D-A控制端:ILE、、、、CSWR1WR2XFER⑶IOUT1、IOUT2:电流输出端⑷RFB:反馈电流输入端⑸UREF:基准电压输入端⒊工作方式⑴直通工作方式:5个控制信号均预置为有效⑵单缓冲工作方式:5个控制端由CPU一次选通⑶双缓冲工作方式:5个控制端分二次选通【例8-10】电路按图8-23,要求输出锯齿波如图8-25a所示,幅度为UREF/2=2.5V。KeilC51软件调试和ProteusISIS虚拟电路仿真参阅例9-22。