ImageVerifierCode 换一换
格式:PPT , 页数:48 ,大小:887.02KB ,
资源ID:1071895      下载积分:10 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.docduoduo.com/d-1071895.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(第七章-太原广播电视大学 郭建勇.ppt)为本站会员(无敌)主动上传,道客多多仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知道客多多(发送邮件至docduoduo@163.com或直接QQ联系客服),我们立即给予删除!

第七章-太原广播电视大学 郭建勇.ppt

1、微型计算机技术,教 学 指 导(七),太原广播电视大学 郭建勇,第7章 微机的基本接口技术 重点内容:微机的基本接口技术:行列式的小键盘和LED数据显示器与微机的接口方式。 DA、AD芯片的基本工作原理和简单运用。 要求掌握芯片的基本结构特征,掌握它们在不同应用场合的使用方法,以及软件编程时的基本步骤。从而进一步了解微机与外设的基本接口方法,以便构成用户自行设计的系统。 71 小型键盘的接口技术与识别按键的软件方法 键盘有两种类型:非编码式键盘和编码式键盘。 非编码式键盘用软件来识别并产生代码。 编码键盘是用硬件来识别,检测按键,并产生相应的代码。,7.7.1 键盘矩阵及接口电路 1.采用行扫

2、描法实现的键盘接口电路 44键盘矩阵的基本结构,矩阵中有4行4列,共16个键。每个键所对应的行与列的交叉点是唯一的。如果某键被按下,该键所对应的行线接为低电平,所对应的列线也接为低电平。,2采用反转法实现的键盘接口电路 并行口8255A实现的键盘接口电路,图中A端口地址接在行线上,B端口地址接在列线上,由于8255A是可编程的并行口,两个端口A和B,可通过软件设置为A口为输出,B口为输入,也可设置为B口为输入,A口为输出。输出、输入互相交换时显得是十分方便,这样可用反转法的软件来实现键闭合时的快速识别。,7.1.2 扫描方式及程序实现在扫描键盘过程中,应注意如下两个问题:(1)消抖动: 硬件实

3、现,复杂麻烦。 软件实现,用延时程序消除抖动:先延时20ms避开键发生的抖动。(2)防止按一次键而有多个对应键值输入的情况:按一次键,只做一次键处理,消除了一次按键有多次键值输入的错误情况。1行扫描法及程序实现方法是:初始状态时所有的行线和列线都为高电平; 然后逐行输出低电平;再读列线,看那列输出为0,行列交叉点即为按下的按键。,实际应用中:第一步是先检查出是否有键按下。第二步是要确定按下的是哪个键。用软件实现的步骤是: 确定是否有键按下。 去抖动。 对被按下的键进行译码。 对任何一个键均作一次处理。,所有行线L都送0,读列线R值,有键按下?,设置行扫描初值,行扫描初值送BL,输出行扫描初值,

4、有键按下?,取行扫描值组合键的扫描码BL=行扫描码+列扫描码,BL左移一位为扫描下一行作准备,转作其他,所有行扫完?,MOV AL,00 MOV DX,Portl OUT DX,AL MOV DX,PORTR IN AL,DX CMP AL,FFH JZ DISP CALL Delay MOV CL, FEH MOV DX, PortlA1: MOV AL, CL MOV BL, CL OUT DX, AL ROL CL, 1,所有的行线都输出低电平,读取列值,是否有为零的列线,没有键按下,转显示程序,有键按下,调延时程序,消除抖动,第0行的扫描值11111110B送CL,输出当前的扫描值,令

5、当前的扫描行为0。,循环移位,指向下一行,IN AL,DX CMP AL,FFH JZ A1 MOV CL,4 SHL BL,CL OR BL,ALDISP:,读列值,判断那列键按下,有,在BL中组合扫描码,2.行反转法及程序实现反转法识别:行线和列线分别接在PA和PB 2个并行口上,首先让行线上的PA口工作在输出方式,列线上的PB口工作在输入方式,通过编程使PA口输出低电平,然后读取PB口的列线值,如果某一列线上的值为0,则判定改列有某一键按下。为了确定是哪一行要对PA和PB进行反转,即对PA口重新进行初始化工作在输入方式,列线上的PB口工作在输出方式,并将刚读取的列线值从列线所接的PB口输

6、出,再读取行线所接的PA口,取得行线上的输入值,在闭合键所在的行线上的值必定为0。这样,当一个键被按下时,必定可读得一对唯一的行值和列值。根据这一对行值和列值就可判断是哪一行哪一列的键被按下。,72 多位七段LED数据显示器的电路结构及接口技术7.2.1 七段LED数码显示器的结构,a,b,c,d,e,f,g,dp,ABCDEFGdp,+5vcom,Com 地,ABCDEFGdp,a 管脚图 b 共阴极 c 共阳极,译码原理:将二进制代码转换成段选择码 1.在共阴极接法中,点亮字段应接高电平,为1;例如:显示2应点亮a,b,d,e,g段,则其段选择码为01011011(顺序为dp,gfedcb

7、a)5BH. 2.在共阳极接法中,点亮字段应接低电平,为0:例如:显示2应点亮a,b,d,e,g段,则其段选择码为10100100(顺序为dp,gfedcba)A4H.,MC14495,abcd,com,LE,BCD 七段译码,74L374,D0,D1,D2,D3,D4,D5,D6,D7,LE,软件译码法,7.2.2 LED显示器的静态显示接口 用一个8D驱动器,驱动一个LED显示器,每次送入显示的状态码,并且一直保持到下一次送入新的显示码为止,称为LED静态显示的接口电路。 如果要构成多位LED显示器,则要多个8D驱动器,造成硬件的浪费。7.2.3 LED显示器的多位动态显示接口 动态驱动显

8、示接口的硬件特点:将多位LED的段选择线并联接在一起,即8位中的所有同名段a接在一起,所有h段接在一起,只用一个8位的锁存器控制段码a,b,c,d,e,f,g就够了。另外用一个锁存器来控制位选择码。这样只需要2个8位的IO端口。 扫描的显示方式:即在每一瞬间只能使某一位显示相应的字符,保持延时一段时间,然后再选中下一位,利用发光显示器的余辉及人眼的视觉暂留特点,给人一种显示器同时被点燃的效果。,七段共阴极LED显示器的多位动态显示接口,LED动态显示程序行地址口:PORTL ,列地址口:PORTRBUFFERDATA: DB 8 DUP(?)TABLE :3FH,06H 79H,71HLED

9、:MOV DI ,OFFSET BUFFERDATA MOV CL ,011111111BDISP :MOV BL ,DI+0 PUSH BL POP AX MOV BX ,OFFSET TABLE XLAT MOV DX ,PORTL OUT DX ,AL MOV AL ,CL,MOV DX ,PORTR OUT DX ,AL PUSH CX MOV CX ,30HDELAY:LOOP DELAY POP CX CMP CL ,111111110B JZ EXIT INC DI SHR CL ,1 JMP DISP EXIT :RET,延迟程序,循环次数30,显示扫描到最右边的第8位吗?到了

10、转结束,不到,位移码加1循环,7.3 DA转换的工作原理 DA转换器的基本功能,是将数字量转换成对应的模拟量输出。 7.3.1 DA转换器的工作原理 为了将数字量转换为模拟量,需要将每位代码按照其“权”值转换为相应的模拟量(仅指模拟电压),然后再把对应于各位代码的模拟量加起来,所得模拟量的总和,就是与被转换数字量相对应的模拟量。 DA转换器的具体电路有多种形式,其中解码网络是普通采用的形式,解码网络的主要形式有2种,二进制权电阻网络和T型电阻网络。,1二进制权电阻网络图中:VOUT=-(I0D0+I1D1+I2D2)R1 D0VREL D1VREL D2VREL 22R 21R 20R D0

11、D1 D2 4 2 1,=,+,+,(,),=,(,+,+,),2T型电阻网络 VREFRFB I 2R 2j,VOUT=-IRFB =-,Dj,3DA转换器的主要技术参数 (1)分辨率:DAC所能分辨的最小输出电压与最大输出电压的比值称为分辨率。 VLSB 1 VOM 2N 1例如:8位DAC的分辨率为l(28-1)12550392,12位的DA的分辨率是1(212-1)l409500244。 (2)转换误差。DAC的转换误差可分为静态误差和动态误差。静态误差: 失调误差(零点误差)。 增益误差(满值误差)。 线性误差。DAC的线性误差分为积分线性误差和微分线性误差。 温度系数误差。 电源波

12、动误差。 (3)建立时间。,分辨率 =,=,4DA转换器的典型输出连接方式(1)电流输出电路,(2)电压输出电路。单极性电压输出电路。 单极性的电压输出适用于对控制量的输出要求是单方向的场合,在整个控制过程中,不要求改变控制量的极性。 单极性电压输出的连接又分为同相输出和反相输出2种。,D/A 同相输出,D/A 反相输出,双极性电压输出电路。 在某些微机应用场合,需要双极性的电压输出。例如,希望输出电压的范围在-5+5V或-12 +12V。,VOUT,7.3.2 DA转换器的芯片结构与接口方式 18位DA转换器芯片DAC0832 DAC0832内采用一个T型电阻网络,用来实现DA转换,属于电流

13、型芯片,需外接运算放大器才能得到模拟电压的输出。 (1)芯片的技术特性。DAC0832采用双列直插式20条引脚的封装,主要特性如下: 单一的电源电压(十5V),功耗20mW。 输入输出电平与TTL兼容。 分辨率8位。 电流稳定时间l。 可采用双缓冲、单缓冲或直通输入方式。 可直接与一般通用的微处理机相连。 只需在满量程下调整其线性度。,(2)芯片结构及引脚功能,DAC0832的内部功能框图,主要由三部分组成: 一部分是信号控制逻辑;另一部分是DA转换器,输出的方式为电流输出形式;第三部分是由两个8位的数据锁存器构成双缓冲形式,第一级锁存器称为输入寄存器,它的锁存信号是ILE,第二级锁存器也称为

14、DAC寄存器。它的锁存信号XFER。有了两级锁存器,芯片可工作在双锁存器的工作方式,即在输出模拟信号的同时,送入下一个数据,这样可有效地提高转换速度。 另外,有了两级锁存器以后,可以在多个DAC同时工作时,利用第二级锁存信号来实现多个DAC的同时输出。,2DA转换器的接口方式 对于芯片内部有输入寄存器的DA芯片,在CPU与DA芯片之间可以不加锁存器,直接和CPU的数据总线连接。如DAC0832,AD574等,对于DA芯片内不带锁存器的芯片,在CPU和DA芯片之间需要加锁存器。(1)不带数据输入寄存器的DAC与CPU的接口。,在许多应用场合,还要求DAC具有更高的精度和灵敏度。就需要8位以上的D

15、AC。 稳定时间:执行二次输出指令,才能得到真正所需要的模拟量。 “毛刺”的现象:由于CPU分2次执行输出指令,会带来模拟电压出现“毛刺”的现象。 为了解决这种问题,通常采用2级的数据缓冲结构和CPU总线相连。 译码器产生3个时钟,其中CKH和CKL分别作为第一级锁存器高8位和低8位的打入时钟;CK作为第二级锁存器的打人时钟,高8位和低8位数据一块打人到锁存器中。有了这种电路,CPU先执行2条输出指令,把(8十n)位的数据送到第一级数据锁存器中,然后通过第三条输出指令同时选中两片74LS273,实现一次把(8十n)位的数据从第一级锁存器送到第二级数据锁存器中,从而使DA转换器得到一个完整的转换

16、数据。,DA通过两级数据缓冲与微机连接,实现的程序段如下: MOV AL ,DATAL MOV DX ,PORTL OUT PORTL,AL MOV AL ,DATAH MOV DX ,PORTH; OUT PORTH,AL OUT PORT ,AL,低8位的数据送入第一级数据锁存器,高8位数据送人第一级数据锁存器,全部送人第二级数据锁存器,(2)带有数据锁存器的DAC与CPU的接口 在DA转换器的输出一般都要接运算放大器,微小信号经放大后才能驱动执行机构的部件。,转换数据输出程序 MOV AI ,NUM ;被转换的数据送AL MOV DX ,PORTO ;输入寄存器偶地址送DX OUT DX

17、 ,AL ;第一次被转换的数据送到输入寄存器 INC DX OUT DX,AI, ;第二次被转换的数据送到DAC寄存器,输出三角波的程序段如下: MOV DX,PortDAC S0:MOV CX,0FFH MOV AL,0S1:OUT DX,AL INC AL LOOP S1 MOV CX,0FFH S2:DEC Al OUT DX,AL LOOP S2 JMP S0,AL初始值为0,不断循环加1DAC0832输出三角波的上升沿。,AL初始值为0FF,不断循环减1,DAC0832输出三角波的下降沿。,0 0 0,255 255,输出锯齿波的程序段如下: MOV DX,PortDACJ0:MOV

18、 CX,0FFH MOV AL,0J1:OUT DX,AL INC AL LOOP J1 JMP J0,AL初始值为0不断加1,加到255后,再输出0,循环产生锯齿波。,0,0,0,0,255,255,255,7.4 AD转换的工作原理 AD转换器是把模拟量转换成数字量,(ADC)输出的器件。 (1)采样:对连续变化的模拟量要按一定的规律和周期取出其中的某一瞬时值,就是采样,也称为取样或抽样。 为了使输出信号能更好地反映输入信号的变化,采样频率一般要高于或至少等于输入信号最高频率的2倍。 (2)量化与编码:量化的过程是把在时间上连续变化的模拟量通过量化装置转变为数值上离散的阶跃量的过程。 74

19、1AD转换器的基本方法和原理 实现AD转换的方法很多,这里介绍三种:计数法、双积分法和逐次逼近法。,1计数式AD转换法 工作原理:Vin端接转换的模拟输入电压,当VinVout,比较器输出高电平,计数器由0开始计数,使输出电压Vout不断上升,当VOUT VIN,停止计数,此时的数字输出量D7D0就是与模拟电压等效的数字量。 计数式AD转换的特点是简单、速度比较慢。,2双积分式AD转换法 双积分式AD转换器属于间接电压数字转换器,它把输入电压转换为与其平均值成正比的时间间隔,同时把这个时间间隔再转变为数字,是一种间接的AD转换技术。 双积分式AD转换器的特点是,转换精度高,抗干扰能力强。但转换

20、速度较慢,通常每秒钟的转换频率小于10Hz。这种方式主要用于数字式测试仪表,温度测量等方面。,3逐次逼近式AD转换法 逐次逼近式AD转换时,也用DA转换器的输出电压Vout和输入电压Vin通过比较器进行比较。不同之处是用一个逐次逼近寄存器来存放转换过来的数字量。,工作原理:(1)在第一个时钟脉冲时,使逐次逼近寄存器的最高位D7为1,即10000000B,经D/A转换VOUT为满量程电压的一半。 当VOUTVIN,保留D7的1;若VOUTVIN,复位,D7为0;(2)第二个时钟脉冲,令D6为1,此时为11000000B或为01000000B,当VOUTVIN,保留D6的1;若VOUTVIN,复位

21、,D6为0; 重复上述过程,直到最低位D0比较完为止。经过n次比较后,逐次逼近寄存器的数据经过AD转换后,变成与输入模拟量相对应的数字量。 逐次逼近AD转换是把输入的模拟电压Vin作为一个关键字,用对分搜索的办法来逼近它。搜索一次比前一次区间缩小12,对于8位AD转换,只要搜索8次就可以找到逼近的Vin。因此,这种AD转换的速度是很快的。,实现上述转换的程序段如下:Start: XOR AX ,AX ;累加器清0 MOV BL ,80H ;置初值 MOV CX ,08H ;置循环次数 AIN: ADD AL ,BL ;计算试探值 MOV BH ,AL ;保留试探值 OUT PortA,AL ;

22、PortA是锁存器端口地址 IN AL,Ports ;Ports是输入端口的地址,读取状态值 AND AL,01 ;只取状态值,而对其它位屏蔽 JZ ENDl ;如D。为o,则说明试探值大小,因此保 ;留此位转ENDl。 MOV AL,BL NOT AL ;求反 AND AL ,BH ;使这次的试探位为0 MOV BH ,AL ;保存试探值ENDl: MOV DL ,1 ;右移,得到下一个试探值 MOV AL ,BH LOOP AIN ;继续试探和测试,4AD转换器的主要技术参数 分辨率。ADC的分辨率通常以输出二进制或(十进制)数的位数表示,它说明ADC对输入信号的分辨能力。 转换误差。AD

23、C实际输出的数字量和理想输出的数字量之间的差别称为转换误差。主要有量化误差、零点误差、增益误差、线性误差。 量化误差:是指在ADC中由于整量化所产生的固有误差。量化误差在土12LSB之间。 转换时间和转换速率。转换时间是描述ADC转换速度的动态参数。是指完成一次AD转换所需的时间,即由发出启动转换命令信号到转换结束信号开始有效的时间间隔。 转换时间的倒数称为转换速率。指的是AD转换器的转换速度,用每秒多少次来表示。 漏码:模拟量输入连续增加(或减小)时,数字量输出不是连续增加(或减小),而是越过某一个数字,就是漏码。,742 AD转换器的芯片结构与接口方式 18位AD转换器芯片ADC0809,

24、特点是:高阻抗斩波稳定比较器,带有树形模拟开关的256R电压分压器和一个逐次逼近寄存器,8个通道的多路开关可直接存取8个单端模拟信号中的一个。 256R电阻梯形网络:由于它的内部结构固有的单调性,能保证不丢失数字代码。 逐次逼近寄存器SAR。 比较器:斩波稳定比较器的基本方法是把直流输入转变为交流输入信号,这个信号通过高增益交流放大器放大,然后再恢复直流电平。这种技术可以限制放大器元件的漂移 多路开关。芯片内有一个8通道的单端模拟信号多路开关,由地址译码可以选择一个特定的输入通道。,2. A/D转换器的接口方式(1)应注意的问题AD转换器输出和CPU的接口方式。 对AD转换器的数字输出应考虑的

25、关键是:转换结果的输出应该具有三态驱动能力才能送到数据总线上。AD转换器的分辨率和微机数据总线的位数。 10位以上的AD转换器和8位数据总线连接时,数据寄存器要增加读写控制逻辑。AD转换的时间和CPU的时间配合问题。 AD转换的启动方式 转换后信号的处理:中断方式、查询方式、CPU等待方式、固定延迟程序方式。AD的控制和状态信号。 启动信号(Start);转换结束信号(EOC);输出允许信号(OE)。,输入模拟电压的连接。AD转换芯片的输入模拟电压往往即可以单端输入也可以差动输入。 接地问题。正确的连接应该是把数字地和模拟地分开来连接,将所有芯片的数字地连在一起,所有芯片的模拟地连在一起,然后

26、将模拟地和数字地分别仅连接到一个接地点,再接到所对应的模拟电路的电源或数字电路的电源上。,(2) ADC0809与微机的接口方式,由于ADC0809芯片内不带时钟,因此它的时钟端CLK需要外接时钟信号,要求时钟频率的范围应在101280kHz。芯片带有输出三态锁存器,8位输出数据的引脚可直接与微机的系统总线相连,经转换后的8位数字量可直接送到微机中。芯片的通道选择地址ADDC,ADDB,ADDA分别与数据总线的D2、Dl、Do相连接,用软件来选择要转换的模拟量是8路中的哪一路。如果不接中断,转换通道3的模拟量为数字量的程序段如下: MOV AL,03H ;送入通道3 MOV DX,PortAD

27、C OUT PortADC,AL ;发启动信号 CALL DELAY ;软件延时,等待转换结束 IN AL,PortADC ;一个数据转换结束,读人CPU中,如果转换结束信号xOC接中断信号,8路模拟量输入,对它们进行采样,采收100组数据,采集后的数据送人内存单元BUFFER中,用中断方式实现的程序段如下: LEA DI,BUFFER MOV CX,64HIN0: PUSH CX MOV AL,0 ;转换从IN。开始,并启动 MOV CX,8 MOV DX,PortADC ;PortADC是ADC0809的端口地址Input:STI ;开中断 OUT DX,AL ;送转换地址 INC AL HLT ;暂停,等中断 CTI ;关中断,LOOP Input ;中断返回,开始采集下一通道 POP CX LOOP IN0中断服务子程序; PUSH AX IN AL,DX ;送输出允许并读取数据 STOSB POP AX IRET,

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报