第7章可编程接口芯片及应用New.ppt_第1页
第7章可编程接口芯片及应用New.ppt_第2页
第7章可编程接口芯片及应用New.ppt_第3页
第7章可编程接口芯片及应用New.ppt_第4页
第7章可编程接口芯片及应用New.ppt_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

30.05.2020,机械系统计算机控制课件,1,第7章可编程接口芯片及应用,机械系统计算机接口技术机电学院,30.05.2020,机械系统计算机控制课件,2,7、可编程接口芯片及应用,并行接口8255定时计数8253,30.05.2020,机械系统计算机控制课件,3,7.1可编程并行接口8255,8255的基本功能8255的内部结构和外部引脚8255的命令字8255的工作方式8255的初始化编程,30.05.2020,机械系统计算机控制课件,4,7.1.18255的基本功能,8255具有2个独立的8位I/O口(A口和B口)和2个独立的4位I/O(C口上半部和C口下半部),提供TTL兼容的并行接口。输入时提供三态缓冲器功能;输出时提供数据锁存功能。(A口具有双向传输功能)8255有3种工作方式,方式0、方式1和方式2,能使用多种数据传送方式完成CPU与I/O设备之间的数据交换,如无条件方式、查询方式和中断方式。B口和C口的引脚具有达林顿复合晶体管驱动能力,在1.5V时输出1mA电流,适于作输出端口。C口除用做数据口外,当8255工作在方式1和方式2时,C口的部分引脚作为固定的联络信号线。,30.05.2020,机械系统计算机控制课件,5,7.1.28255的内部结构和外部引脚,内部结构A组:PA7-PA0PC7PC4B组PB7-PB0PC3PC0数据缓冲D7D0读写控制逻辑RD、WRA1、A0、CSRESET,30.05.2020,机械系统计算机控制课件,6,7.1.28255的内部结构和外部引脚,2.外部引脚(40脚)CPU侧D7-D0RD、WRCS、A1、A0外设侧PA0PA7PB0PB7PC0PC7其它RESETVCC、GND,30.05.2020,机械系统计算机控制课件,7,7.1.28255的内部结构和外部引脚,8255的端口与操作选择表,30.05.2020,机械系统计算机控制课件,8,7.1.38255的命令,1工作方式控制字(写,A1A011),30.05.2020,机械系统计算机控制课件,9,7.1.38255的命令,2C口按位置/复位控制字(写,A1A011),30.05.2020,机械系统计算机控制课件,10,7.1.48255的工作方式(方式0),1方式0(基本输入输出方式)方式0提供两个8位口(A和B)和两个4位口(PC7PC4,PC3PC0),任何一个口都可用做输入或输出(单向),由CPU用简单的I/O指令来进行读/写。习惯上将A口和B口作为数据口,将C口作为控制输出和状态输入口。方式0输入时序和参数说明,30.05.2020,机械系统计算机控制课件,11,7.1.48255的工作方式(方式1),2方式1(A口和B口有此方式,单向)1)方式1的输入INTEx为中断允许位,对应PC口寄存器(状态字)的D4位(INTEA)和D2位(INTEB),可通过对PC口按位写方法设置;PC2、PC4引脚作用:用作锁存数据口数据;中断条件:STB#(引脚)=1(无效),IBF=1、INTEx=1;PC6、7可作为数据线使用。,30.05.2020,机械系统计算机控制课件,12,7.1.48255的工作方式(,2方式1(A口和B口有此方式,单向)1)方式1的输入(续)输入过程外设把数据送到8255端口外设用选通信号STB把数据打入端口的输入锁存器输入缓冲器满信号IBF有效,CPU可查询该信号如果INTE有效,8255将使INTR有效,申请中断CPU向8255发读信号RD,从8255端口读数据中断请求信号INTR变无效,然后IBF无效,外设可送下一个数据。外设判IBF数据外设STB8255的IBF8255的INTRCPU的RD,30.05.2020,机械系统计算机控制课件,13,7.1.48255的工作方式(方式1输出),2方式1(A口和B口有此方式,单向)2)方式1的输出INTEx为中断允许位,对应PC口寄存器(状态字)的D6位(INTEA)和D2位(INTEB),可通过对PC口按位写方法设置;PC1、PC7引脚作用:用作锁存数据口数据;PC2、PC6引脚作用:用作对OBF的回应;中断条件:ACK(引脚)=1(无效),OBF=1(W无效)、INTEx=1;PC4、5可作为数据线使用。,30.05.2020,机械系统计算机控制课件,14,7.2.48255的工作方式,2方式l(A口和B口有此方式,单向)2)方式1的输出输出过程CPU发WR信号,向8255送一个数据WR使INTR无效,OBF有效,通知外设可取数据外设接到数据后,向8255回送ACK信号OBF无效,接着ACK无效,其上升沿引发INTR有效,向CPU发中断申请,请求发送新数据。,30.05.2020,机械系统计算机控制课件,15,7.1.48255的工作方式,3方式2(双向I/O,只有A口有此方式)输入控制信号:INTE为中断允许位,对应PC口寄存器(状态字)的D4位(INTEIN)可通过对PC口按位写方法设置;PC4引脚作用:STB;选通输入,低电平有效。PC5引脚作用:IBF;输入缓冲器满,高电平有效。输出控制信号:INTE为中断允许位,对应PC口寄存器(状态字)的D6位(INTEOUT)可通过对PC口按位写方法设置;PC6引脚作用:ACK;来自外设的响应信号,低电平有效。PC7引脚作用:OBF;输出缓冲器满,低电平有效。中断条件:PC3(INTR)ACK(引脚)=1(无效),OBF=1(W无效)、INTE=1;STB#(引脚)=1(无效),IBF=1、INTE=1;PC0、PC1、PC2可作为数据线使用。,30.05.2020,机械系统计算机控制课件,16,7.1.58255的初始化编程,初始化编程步骤依据PA、PB、PC的作用选择工作方式向写控制寄存器写命令字例程:8255初始化已知某系统要求使用8255的A口工作于方式1作输入,B口工作于方式0作输出,C口上半部输入,下半部输出。8255端口地址为60H-63H。编写初始化程序段分析:控制字为:10111000B=0B8H初始化程序为:MOVAL,0B8H;OUT63H,AL;PC置位/复位如上例,若A口工作于方式1作输入,要使用中断传送方式,则应当写PC4的按位置位字:MOVAL,00001001BOUT63H,AL,30.05.2020,机械系统计算机控制课件,17,例7-1,30.05.2020,机械系统计算机控制课件,18,例8255输入输出(续),A_PORTEQU8020H;定义端口的符号地址B_PORTEQU8022HC_PORTEQU8024HCTRL_PORTEQU8026HDATASEGMENT:定义数据段TAB1DB3FH,06H,5BH,4FH,31H;定义段码表DATAENDSCODESEGMENT;定义代码段ASSUMEDS:DATA,CS:CODESTART:MOVAX,DATAMOVDS,AXMOVAL,90H;设置8255A方式字MOVDX,CTRL_PORTOUTDX,ALADD1:MOVDX,A_PORTINAL,DX;取键盘信息ANDAL,OFH;屏蔽高4位MOVBX,OFFSETTAB1;取段码表首地址XLAT;查表得段码MOVDX,B_PORTOUTDX,AL;输出显示MOVCX,0600HADD2:LOOPADD2;循环延时JMPADD1CODEENDSENDSTART,30.05.2020,机械系统计算机控制课件,19,7.2定时计数8253,定时与计数1.定时定义:提供的时间基,实现延时或计时准。分类:内部定时、外部定时。2.计数定义:对外部事件进行计数。定时与计数本质上是一致的。计数的信号随机,定时的信号具有周期性。,30.05.2020,机械系统计算机控制课件,20,7.2定时计数8253,定时方法1.软件定时通过软件指令周期方法定时,如执行循环程序。增加CPU负担,通用性好,一般用于短延时。2.不可编程硬件定时采用中小规模IC构成。不增加CPU负担,成本低,定时值不可改变。3.可编程硬件定时采用可编程计数器完成,软件可改变计数值。可编程定时/计数器:实质上定时和计数本质上都是脉冲计数器,定时计的是内部基准时钟源产生的脉冲,计数是计外部脉冲。,30.05.2020,机械系统计算机控制课件,21,7.2定时计数8253,定时/计数器基本原理1.内部逻辑CPU接口:译码、操作外设接口:时钟信号、控制、输出内部逻辑:REG2.工作过程设初值控制输出,30.05.2020,机械系统计算机控制课件,22,7.2Intel8253,8253基本功能3个独立的16位定时/计数器(T/C);每个T/C功能:可按二、十进制(BCD)计数;有6种不同的工作方式;最高频率2.6MHz。,30.05.2020,机械系统计算机控制课件,23,7.2Intel8253,8253结构与引脚1.内部逻辑总线缓冲器8位R/W:写工作方式、计数初值、当前计数值2.外部引脚1)译码:CS与A1A0:2)读/写:RD、WR;,8253,30.05.2020,机械系统计算机控制课件,24,7.2Intel8253,8253结构与引脚(续)3.计数器内部逻辑CR:16位写入两次、清零CE:16位写入、计数、输出OL:16位先锁存再读出注意:GATE信号的作用与应用,重写CR的效果。计数初值:N=fclki/fouti,在不同工作方式及定时/计数时的应用不同。,30.05.2020,机械系统计算机控制课件,25,7.2Intel8253,8253结构与引脚(续)4.CPU操作功能及命令I/O端口地址:8253提供四个端口(使用A1A0);命令:初始化设置工作方式、设置计数器初值;操作重写计数器初值、读计数器计当前数值。状态:计数器当前计数值。I/O端口操作冲突时解决方法:写工作方式与写读取状态命令采用特征位方法;读取当前计数值采取时序方法。,30.05.2020,机械系统计算机控制课件,26,7.2Intel8253,8253内部寄存器操作8253命令关系表:,A1A0,30.05.2020,机械系统计算机控制课件,27,7.2Intel8253,8253命令及编程1.工作方式控制字(A1A0=11)D7D6选择计数器:00T/C0;01T/C1;10T/C2D5D4选择读/写方式:00锁存操作(读);01只读/写低字节;10只读/写高字节;11先读/写低字节再读/写高字节(16位)D3D2D1选择工作方式:000方式0;001方式1;X10方式2,X11方式3;100方式4;101方式5D0选择计数方式:0二进制计数;1BCD码计数,30.05.2020,机械系统计算机控制课件,28,例:8253设置命令字,例:已知口地址依次40H、41H、42H、43H,要求:用计数器1,16位计数,采用方式2、2进制计数。分析:T/C1,先低后高字节;方式2,二进制方式工作方式控制字:01110100B;对应控制寄存器的口地址位43H。解答:MOVAL,01110100B;OUT43H,AL;,30.05.2020,机械系统计算机控制课件,29,7.2Intel8253,8253命令及编程(续)2.计数初值1)不同通道的计数初值写到不同地址中;A1A0=00:计0;01:计1;10:计22)每次写入一个字节;3)根据控制字定义,决定高、低字节写入方法。4)初始值的范围是:二进制为65536(0000H)1(0001H)。十进制为10000(0000H)1(00001H)。,30.05.2020,机械系统计算机控制课件,30,7.2Intel8253,8253命令及编程(续)3.T/C初始化1)工作方式控制字2)设置计数初值注意:1)每个使用的T/C均要初始化;2)计数初值的设置与T/C的CLK密切相关;3)计数初值的设置方法由控制字决定。,30.05.2020,机械系统计算机控制课件,31,例程:计数器0和计数器1初始化,已知口地址依次40H、41H、42H、43H,要求:用计数器1,16位计数,采用方式2,计数初值2000。计数器1,采用方式3,计数初值50H。分析:计数器1:41H;BCD计数;01110101B计数器0:40H;二进制计数;00010110B解答:MOVAL,01110101B;T/C1,先低后高字节,方式2,BCDOUT43H,ALMOVAX,2000H;计数初值为2000OUT41H,AL;MOVAL,AHOUT41H,AL;MOVAL,00010110B;T/C0,只低字节,方式3,二进制OUT43H,ALOUT40H,50H;计数初值为50H(80),30.05.2020,机械系统计算机控制课件,32,7.2Intel8253,8253命令及编程(续)4.T/C数据读取读取当前计数值方法工作方式控制字(A1A0=11)D7D60001,D5D4=00A)锁存当前计数值或禁止计数B)读取当前计数值例程:读计数1的计数值例:MOVAL,01000101B;T/C1,锁存;先低后高字节,方式2,BCDOUT43H,ALINAL,41HMOVAH,ALINAL,41HXCHGAH,AL;AX为T/C1当前计数值,30.05.2020,机械系统计算机控制课件,33,7.2Intel8253,8253工作方式1.方式0计数结束时中断特点:一次计数;GATE高允许、下降暂停、低禁止、上升继续计数;WR#写重写后下一脉冲下降沿重新计数;OUT在控制字或计数初值写完时变低、计数值为0时变高(N+1个低)。,30.05.2020,机械系统计算机控制课件,34,7.2Intel8253,8253工作方式2.方式1硬件可重触发单稳特点:一次计数;GATE上升重新、高与下降和低不影响计数;WR#写重写在下次GATE从0到1的跳变时有效;OUT在写入控制字后变高,开始计数时变低、计数值为0时变高(N个低)。,30.05.2020,机械系统计算机控制课件,35,7.1.2Intel8253,8253工作方式3.方式2频率发生器特点:多次计数;GATE上升重新、高允许、下降停止、低禁止计数;WR#写重写在下次计数时有效;OUT在计数值为1时输出宽度为1个CLK的负脉冲(周期为N,频率为1/N)。,30.05.2020,机械系统计算机控制课件,36,7.2Intel8253,8253工作方式4.方式3方波发生器特点:多次计数;GATE上升重新、高允许、下降停止、低禁止计数;WR#写重写在下次计数时有效;OUT在写入控制字后变高,计数开始后,采用每脉冲计数减2:当计数初值为偶数时,计数到0时反向。脉冲宽度Tn/2当计数初值为奇数时,OUT变高的第一CLK减1后装入CE,其余每个脉冲计数减2。OUT正脉冲时,计数到0的下一个CLK时OUT反向OUT正脉冲宽度为T(n+1)/2;OUT负脉冲时在计数到0时反向。负脉冲宽度为T(n-1)/2,30.05.2020,机械系统计算机控制课件,37,7.2Intel8253,8253工作方式5.方式4软件触发选通特点:一次计数;GATE上升重新、高允许、下降停止、低禁止计数;WR#写重写会立即重新计数(软件触发);OUT在写入控制字及计数当中为高电平,计数值为0时输出1个CLK的负脉冲。,30.05.2020,机械系统计算机控制课件,38,7.2Intel8253,8253工作方式6.方式5硬件触发选通特点:一次计数;GATE上升重新、高与下降和低不影响计数;WR#写重写在下次GATE从0到1的跳变时有效;OUT在计数值为0时输出1个CLK的负脉冲。,30.05.2020,机械系统计算机控制课件,39,8253不同方式的工作特点,30.05.2020,机械系统计算机控制课件,40,例7-4,8253地址80-86H要求0.5s亮0.5灭(方波)1MHz对应1us1Hz对应1sN1s/1us=1000000=1000 x

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论