《第8章 可编程接口芯片及应用精选文档.ppt》由会员分享,可在线阅读,更多相关《第8章 可编程接口芯片及应用精选文档.ppt(149页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第8章 可编程接口芯片及应用本讲稿第一页,共一百四十九页定时功能的实现方法定时功能的实现方法n软件定时(延时)软件定时(延时)利用微处理器执行一个延利用微处理器执行一个延时程序段实现时程序段实现n硬件定时硬件定时采用分频器、单稳电路或简易定时电采用分频器、单稳电路或简易定时电路控制定时时间路控制定时时间n可编程硬件定时可编程硬件定时软件硬件相结合、用可编程定软件硬件相结合、用可编程定时器芯片构成一个方便灵活的定时电路时器芯片构成一个方便灵活的定时电路8.1可编程定时可编程定时/计数器计数器8253/8254本讲稿第二页,共一百四十九页n8253的结构、引脚功能的结构、引脚功能n6种工作方式种工
2、作方式n8253的初始化编程的初始化编程n8253的应用的应用本讲稿第三页,共一百四十九页8.1.18253的结构及引脚功能的结构及引脚功能3 3个独立的个独立的1616位计数器通道位计数器通道每个计数器有每个计数器有6 6种工作方式种工作方式按二进制或十进制(按二进制或十进制(BCDBCD码)计数码)计数可用于准确计数或精确定时可用于准确计数或精确定时本讲稿第四页,共一百四十九页1、内部结构、内部结构D7D0计数器计数器0 0控制字控制字寄存器寄存器计数器计数器1 1计数器计数器2 2内内部部数数据据总总线线数据总线数据总线缓冲器缓冲器读写控制读写控制逻辑逻辑RDWRA0A1CSCLK0GA
3、TE0OUT0CLK1GATE1OUT1CLK2GATE2OUT2VccGND本讲稿第五页,共一百四十九页计数器计数器CLK时钟输入信号时钟输入信号在计数过程中,在计数过程中,此引脚上每输入一个时钟信号(下降沿)此引脚上每输入一个时钟信号(下降沿),计数器的计数值减,计数器的计数值减1GATE门控输入信号门控输入信号控制计数器工控制计数器工作,可分成电平控制和上升沿控制两种作,可分成电平控制和上升沿控制两种类型类型OUT计数器输出信号计数器输出信号当一次计数过当一次计数过程结束(计数值减为程结束(计数值减为0),),OUT引脚上引脚上将产生一个输出信号将产生一个输出信号定时时间定时时间=时钟周
4、期时钟周期计数初值计数初值本讲稿第六页,共一百四十九页读读/写逻辑写逻辑D0D7数据线数据线A0A1地址线地址线RD读信号读信号WR写信号写信号CS片选信号片选信号CS A1 A0读操作RD写操作WR0 0 00 0 10 1 00 1 1读计数器0读计数器1读计数器2无操作写计数器0写计数器1写计数器2写控制字本讲稿第七页,共一百四十九页2、8253引脚及与引脚及与CPU的连接的连接计计0计计1计计2控制口控制口端口地址:端口地址:10011000B、9AH、9CH、9EHD0D7RDWRA2A1A7A6A0M/IOA5A4A3D0D7RDCLK0WRGATE0A1OUT0A0CSGG2AG
5、2BY3CBA18086最小模式最小模式8253本讲稿第八页,共一百四十九页8.1.28253的工作方式的工作方式两个周期两个周期时钟周期时钟周期输入时钟输入时钟CLK的周期的周期输出周期输出周期输出端输出端OUT的输出波形的周期的输出波形的周期主要区别主要区别启动计数方式(硬件、软件)启动计数方式(硬件、软件)计数结束信号计数结束信号GATE的作用的作用本讲稿第九页,共一百四十九页方式方式0计数结束中断计数结束中断GATEOUTCLK031244方式方式0WR特征特征高电平触发高电平触发初始低电平初始低电平减到减到“0 0”时时OUTOUT由低变高由低变高本讲稿第十页,共一百四十九页方式方式
6、1 单稳负脉冲信号发生器单稳负脉冲信号发生器GATEOUTCLK031244方式方式1WR特征特征上升沿触发上升沿触发初始高电平初始高电平开始计数开始计数OUTOUT由高变低,到由高变低,到0 0输出变低输出变低本讲稿第十一页,共一百四十九页方式方式2 速率信号发生器(分频器)速率信号发生器(分频器)03124GATEOUTCLK4方式方式2031240312403124WR特征特征高电平和上升沿触发高电平和上升沿触发初始高电平初始高电平减到减到“1 1”时时OUTOUT由高变低,减到由高变低,减到“0 0”时重新时重新计数计数本讲稿第十二页,共一百四十九页方式方式3 方波发生器方波发生器03
7、124GATEOUTCLK4方式方式3031240312403124WR特征特征高电平和上升沿触发高电平和上升沿触发初始高电平初始高电平计数完成一半时计数完成一半时OUTOUT由高变低,减到由高变低,减到0 0重新计数重新计数本讲稿第十三页,共一百四十九页方式方式4 软件触发选通信号软件触发选通信号GATEOUTCLK031244方式方式4223331 0WR特征特征高电平触发高电平触发初始高电平初始高电平计数到计数到“0 0”OUT OUT由高变低,维持一个由高变低,维持一个CLKCLK周周期期本讲稿第十四页,共一百四十九页方式方式5 硬件触发选通信号硬件触发选通信号GATEOUTCLK03
8、1244方式方式52233311 0WR特征特征上升沿触发上升沿触发初始高电平初始高电平计数到计数到“0 0”OUT OUT由高变低,维持一个由高变低,维持一个CLKCLK周期周期本讲稿第十五页,共一百四十九页需要注意:需要注意:n处理器写入处理器写入82538253的计数初值只是写入了预置的计数初值只是写入了预置寄存器,之后到来的第一个寄存器,之后到来的第一个CLKCLK输入脉冲(需先输入脉冲(需先由低变高,再由高变低)才将预置寄存器的初值由低变高,再由高变低)才将预置寄存器的初值送到减送到减1 1计数器。计数器。n从第二个从第二个CLKCLK信号的下降沿,计数器才真正开信号的下降沿,计数器
9、才真正开始减始减1 1计数。计数。本讲稿第十六页,共一百四十九页8.1.38253的编程的编程1、控制字控制字SC1SC0RL1RL0M2M1M0BCD00计计001计计110计计211无操作无操作00锁存锁存01读读/写低写低8位位10读读/写高写高8位位11读读/写先低后高写先低后高000方式方式0001方式方式110方式方式211方式方式3100方式方式4101方式方式50二进制计数二进制计数1十进制计数十进制计数本讲稿第十七页,共一百四十九页2、初始化编程、初始化编程步骤:步骤:n写入控制字写入控制字可使计数通道复位可使计数通道复位写入计数初值写入计数初值选择二进制时选择二进制时n计数
10、值范围:计数值范围:0000HFFFFHn0000H是最大值,代表是最大值,代表65536选择十进制时选择十进制时(BCD码)码)n计数值范围:计数值范围:00009999n0000是最大值,代表是最大值,代表10000本讲稿第十八页,共一百四十九页3、读取、读取82538253计数值计数值n对对8位数据线,读取位数据线,读取16位计数值需分两次位计数值需分两次n读取方法读取方法1.直接读取直接读取2.锁存读取锁存读取计数在不断进行,应该将当前计数值先行锁计数在不断进行,应该将当前计数值先行锁存,然后读取:存,然后读取:n写控制字:给写控制字:给8253写入锁存命令写入锁存命令n从计数器从计数
11、器I/O地址读出:读取锁存的计数值地址读出:读取锁存的计数值本讲稿第十九页,共一百四十九页8254是是8253的的改改进进型型,它它们们的的引引脚脚定定义义与与排排列列、硬硬件件组组成成等等基基本本上上是是相相同同的的。因因此此8254的的编编程程方方式式与与8253是是兼兼容容的的,凡凡是是使使用用8253的地方均可用的地方均可用8254代替。代替。允允许许最最高高计计数数脉脉冲冲(CLK)的的频频率率不不同同。8253的的最最高高频频率率为为2MHz,而而8254允允许许的的最最高高计计数数脉脉冲冲频频率率可可达达10MHz(8254为为8MHz,8254-2为为10MHz)。8254每每
12、个个计计数数器器内内部部都都有有一一个个状状态态寄寄存存器器和和状状态态锁锁存存器器,而而8253没有。没有。8254有一个读回命令字,用于读出当前减有一个读回命令字,用于读出当前减1计数器计数器CE的内容和状态的内容和状态寄存器的内容,而寄存器的内容,而8253没有此读回命令字。没有此读回命令字。8.1.48254与与8253的区别的区别本讲稿第二十页,共一百四十九页例例1:设设82538253芯片的端口地址为芯片的端口地址为388H388H 38BH38BH。现要求计数。现要求计数器器0 0工作在方式工作在方式3 3,计数初值为,计数初值为23542354,十进制计数;计数,十进制计数;计
13、数器器1 1工作在方式工作在方式2 2,计数初值为,计数初值为18H18H,二进制计数。试根,二进制计数。试根据上述要求编写初始化程序及读取计数器据上述要求编写初始化程序及读取计数器0 0当前计数值当前计数值的程序。的程序。计数器计数器0:方式:方式3控制字控制字00110111B计数初值计数初值2354计数器计数器1:方式:方式2控制字控制字01010100B计数初值计数初值=18H8.1.58253应用实例应用实例本讲稿第二十一页,共一百四十九页初始化程序初始化程序MOVDX,38BH;给计数器;给计数器0送控制字送控制字MOVAL,37HOUTDX,ALMOVDX,388H;送计数初值的
14、低;送计数初值的低8位位MOVAL,54HOUTDX,ALMOVAL,23H;送计数初值的高;送计数初值的高8位位OUTDX,ALMOVDX,38BH;给计数器;给计数器1送控制字送控制字MOVAL,54HOUTDX,ALMOVDX,389H;计数初值送低;计数初值送低8位位MOVAL,18HOUT9CH,AL本讲稿第二十二页,共一百四十九页计数器计数器0计数值读出程序计数值读出程序MOV DX,38BH;送计数器;送计数器0计数值锁存命令计数值锁存命令MOVAL,00HOUTDX,ALMOVDX,388H;读出当前计数值的低;读出当前计数值的低8位位INAL,DXMOV CL,ALINAL,
15、DX;读出当前计数值的高;读出当前计数值的高8位位MOVCH,AL本讲稿第二十三页,共一百四十九页例例2 2:某:某80868086系统中,有一片系统中,有一片82538253芯片,利用通道芯片,利用通道1 1完成对外部事件的计数,计满完成对外部事件的计数,计满500500次,向次,向CPUCPU发出中发出中断请求,利用通道断请求,利用通道2 2输出频率为输出频率为1KHz1KHz的方波。编写的方波。编写初始化程序。初始化程序。通道通道1 1:方式:方式0 0 控制字控制字 01110001B01110001B 计数初值计数初值 499499通道通道2 2:方式:方式3 CLK2=1.19MH
16、z3 CLK2=1.19MHz 控制字控制字 10110111B10110111B 计数初值计数初值=1190=1190本讲稿第二十四页,共一百四十九页设端口地址为设端口地址为98H、9AH、9CH、9EH 十进制计数十进制计数 MOVAL,71HOUT9EH,ALMOVAL,99HOUT9AH,ALMOVAL,04HOUT9AH,ALMOVAL,0B7HOUT9EH,ALMOVAL,90HOUT9CH,ALMOVAL,11HOUT9CH,AL本讲稿第二十五页,共一百四十九页 二进制计数二进制计数MOVAL,10110110BOUT9EH,ALMOVAX,1190OUT9CH,ALMOVAL,
17、AHOUT9CH,AL本讲稿第二十六页,共一百四十九页例例3 3:信号源频率为:信号源频率为1MHz1MHz,现要分频使之产生周期为,现要分频使之产生周期为4s4s的方波,点亮发光二极管工作,编程实现。的方波,点亮发光二极管工作,编程实现。10010100B、95H、96H、97HD0D7RDWRA1A0A7A6A5M/IOA4A3A2D0D7RDCLK0WRGATE0A1OUT0A0CLK1GATE1CSGG2AG2BY5CBA18088最小模式最小模式82535V1MHZ1KHz本讲稿第二十七页,共一百四十九页因此采用通道连接,如上图所示因此采用通道连接,如上图所示因为因为通道通道0方式方
18、式3控制字控制字00100111B通道通道1方式方式3控制字控制字01100111B本讲稿第二十八页,共一百四十九页 MOVAL,27HOUT97H,ALMOVAL,10HOUT94H,ALMOVAL,67HOUT97H,ALMOVAL,40HOUT95H,AL本讲稿第二十九页,共一百四十九页8.2并行通信和并行接口芯片并行通信和并行接口芯片8255A8255A通信:通信:计算机与外设之间或计算机与计算计算机与外设之间或计算机与计算 机之间的信息交换或数据传输。机之间的信息交换或数据传输。通信的两种基本方式通信的两种基本方式并行通信并行通信串行通信串行通信本讲稿第三十页,共一百四十九页8.2.
19、1并行通信的基本概念并行通信的基本概念1、并行通信并行通信将数据的各位将数据的各位同时同时在在多根并行传输线上多根并行传输线上进行传输。进行传输。D0D1D2D3D4D5D6D7目目的的D0D1D2D3D4D5D6D7源源01010110数据的各位同时由源到达目的地数据的各位同时由源到达目的地快快多根数据线多根数据线距离短、远程费用高距离短、远程费用高并行通信并行通信适于适于短距离短距离、高速高速通信通信本讲稿第三十一页,共一百四十九页2、并行接口并行接口n并行接口连接并行接口连接CPU与并行外设,实现与并行外设,实现两者间的并行通信,两者间的并行通信,在信息传送过程中,起到输出锁存或输入缓冲
20、的作用。在信息传送过程中,起到输出锁存或输入缓冲的作用。l并行接口的典型硬件结构包括:并行接口的典型硬件结构包括:1、一个或一个以上具有锁存或缓冲的数据端口、一个或一个以上具有锁存或缓冲的数据端口2、与、与CPU进行数据交换所必须的控制和状态信号进行数据交换所必须的控制和状态信号3、与外设进行数据交换所必须的控制和状态信号、与外设进行数据交换所必须的控制和状态信号4、端口译码电路、端口译码电路5、控制电路、控制电路本讲稿第三十二页,共一百四十九页8.2.2可编程并行通信接口芯片可编程并行通信接口芯片8255A1 1、8255A8255A的编程结构及引脚功能的编程结构及引脚功能2 2、CPUCP
21、U与与8255A8255A的接口的接口3 3、8255A8255A的初始化编程的初始化编程4 4、8255A8255A三种工作方式及应用三种工作方式及应用5 5、键盘和显示接口、键盘和显示接口本讲稿第三十三页,共一百四十九页数据数据总线总线缓冲器缓冲器内部控制线内部控制线内部数据线内部数据线D0D7A组组控制控制A组组端口端口AA组组端口端口C上部上部B组组控制控制B组组端口端口C下部下部B组组端口端口B读写读写控制控制逻辑逻辑PC0PC3PB0PB7PC4PC7PA0PA7RDWRA0A1CSRESET1、8255A的编程结构及引脚功能的编程结构及引脚功能VccGND本讲稿第三十四页,共一百
22、四十九页CS、A1、A0、RD、WR逻辑关系表逻辑关系表本讲稿第三十五页,共一百四十九页2、CPU与与8255A的接口的接口D0D7RDWRA2A1RESETA9A8A7A6A0M/IOA5A4A3D0D7RDWRPAA1A0RESETPBPCCSGG2AY6G2BCBA18086最小模式最小模式8255AA口口B口口C口口控制口控制口端口地址:端口地址:1110110000B、3B2H、3B4H、3B6H本讲稿第三十六页,共一百四十九页3、8255A初始化编程初始化编程8255A的控制字的控制字8255A方式控制字方式控制字方式选择控制字方式选择控制字置位复位控制字(对置位复位控制字(对C口
23、任一位)口任一位)本讲稿第三十七页,共一百四十九页置位复位控制字置位复位控制字本讲稿第三十八页,共一百四十九页例例1 1:8255A初初始始化化编编程程。设设8255A的的A口口工工作作方方式式1 1输输出出,B口口工工作作方方式式1 1输输入入,PC4和和PC5输输入入,允允许许A口口中中断断(PC6控控 制制)禁禁 止止B口口 中中 断断(PC2控控 制制)。设设 片片 选选 信信 号号 由由A9 A2=10000000确定。试编写程序对确定。试编写程序对8255A进行初始化。进行初始化。8255A四个端口地址:四个端口地址:200H201H202H203H 8255A的方式控制字:的方式
24、控制字:10101110B 本讲稿第三十九页,共一百四十九页初始化程序如下:初始化程序如下:MOVAL,0AEH;控制字送;控制字送ALMOVDX,203H;8255A控制字寄存器地址送控制字寄存器地址送DXOUTDX,AL;控制字送;控制字送8255A的控制寄存器的控制寄存器MOVAL,00001101B;PC6置置1,允许,允许A口中断口中断OUTDX,ALMOVAL,00000100B;PC2置置0,禁止,禁止B口中断口中断OUTDX,AL本讲稿第四十页,共一百四十九页4、8255A三种工作方式及应用三种工作方式及应用r根据根据A A口和口和C C口、口、B B口和口和C C口之间硬件关
25、系的不同,口之间硬件关系的不同,可以有三可以有三种不同的工作方式种不同的工作方式,分别称为方式分别称为方式 0 0、方式、方式 1 1、方式、方式 2 2(只(只针对针对A A口)。口)。A A口或口或B B口工作在方式口工作在方式 0:0:与与C C口之间没有硬件联系。口之间没有硬件联系。A A口或口或B B口工作在方式口工作在方式 1:C1:C口的某口的某3 3根引脚作为端口与外设根引脚作为端口与外设的联络信号。的联络信号。A A口工作在方式口工作在方式 2:C2:C口的某口的某5 5根引脚作为端口与外设的根引脚作为端口与外设的联络信号。联络信号。本讲稿第四十一页,共一百四十九页1)方式)
26、方式0(基本输入(基本输入/输出方式)输出方式)它适用于不需要应答信号的简单输入输出场合,它适用于不需要应答信号的简单输入输出场合,若需要联络时,可自定义若需要联络时,可自定义C口为联络信号。口为联络信号。构成构成3个个8位端口位端口,或,或2个个4位、位、2个个8位端口位端口,以适以适应不同应用场合。应不同应用场合。例例2:设某:设某8086系统中连接一片系统中连接一片8255A,8255A的的A口口接拨码盘,接拨码盘,B口接共阴数码管,设计程序段使数码管口接共阴数码管,设计程序段使数码管显示拨码盘的数字。显示拨码盘的数字。本讲稿第四十二页,共一百四十九页8255APA0PA1PA2PA3P
27、B0PB1PB2PB3PB4PB5PB6PB7驱驱动动电电路路abcdefgh+5V控制字:控制字:10010000Bhgfedcba本讲稿第四十三页,共一百四十九页设端口地址为设端口地址为3B0H3B0H、3B2H3B2H、3B4H3B4H、3B6H3B6HTAB1 DB 3FH,06H,5BH,4FH,66H,6DHTAB1 DB 3FH,06H,5BH,4FH,66H,6DH DB 7DH,07H,7FH,6FH,77H,7CH DB 7DH,07H,7FH,6FH,77H,7CH DB 39H,5EH,79H,71H DB 39H,5EH,79H,71H MOV DX,MOV DX,3
28、B6H3B6H MOV AL,MOV AL,90H90H OUT DX,AL OUT DX,ALADDR:MOV DX,ADDR:MOV DX,3B0H3B0H IN AL,DX IN AL,DX AND AL,0FH AND AL,0FH MOV BX,OFFSET TAB1 MOV BX,OFFSET TAB1 XLAT XLAT MOV DX,MOV DX,3B2H3B2H OUT DX,AL OUT DX,AL本讲稿第四十四页,共一百四十九页例例3 3:利用:利用8255A8255A方式方式0 0驱动打印机,实现将驱动打印机,实现将CLCL中的中的ASCASC码字符送打印机。码字符送打
29、印机。当主机要往打印机输出字符时当主机要往打印机输出字符时,打印机工作过程为:打印机工作过程为:先查询打印机先查询打印机BUSYBUSY信号,当信号,当BUSY=0BUSY=0时可传送字符。时可传送字符。然后将要打印字符的然后将要打印字符的ASCIIASCII码传送码传送(从从A A口口)至打印机。至打印机。同时发出选通信号(同时发出选通信号(STBSTB)将字符选通到打印机输入)将字符选通到打印机输入缓冲器。缓冲器。设设82558255的端口地址为:的端口地址为:3B0H 3B2H 3B4H 3B6H3B0H 3B2H 3B4H 3B6H本讲稿第四十五页,共一百四十九页PAPC6PC2STB
30、BUSY控制字:控制字:10000001BMOVAL,81HMOVDX,3B6HOUTDX,ALMOVAL,00001101BOUTDX,AL本讲稿第四十六页,共一百四十九页 ROT:MOVDX,3B4HINAL,DXTESTAL,04HJNZROTMOVAL,CLMOVDX,3B0HOUTDX,ALMOVAL,00001100BMOVDX,3B6HOUTDX,ALINCALOUTDX,AL本讲稿第四十七页,共一百四十九页2)方式)方式1(选通输入(选通输入/输出方式)输出方式)PA7PA7PA0PA0PC4PC4PC5PC5PC3PC3INTEAINTEAPC4PC4与门与门IBFIBFA
31、ASTBSTBA AINTRINTRA ARDRDPB7PB7PB0PB0PC2PC2PC1PC1PC0PC0INTEBINTEBPC2PC2与门与门RDRDIBFIBFB BSTBSTBB BINTRINTRB BA口输入口输入B口输入口输入本讲稿第四十八页,共一百四十九页对方式对方式1输入的端口,输入的端口,C口提供与外部联络的信号有:口提供与外部联络的信号有:STB选通信号(低电平有效)选通信号(低电平有效)由外设发出,送给由外设发出,送给8255A,作用是将外设送来的数据锁存到作用是将外设送来的数据锁存到8255A的输入端口。的输入端口。IBF输入缓冲器满信号(高电平有效)输入缓冲器满
32、信号(高电平有效)8255A发出,发出,表示外设送来的数据已进入输入端口。表示外设送来的数据已进入输入端口。当外设送来的数据送入输入端口后,当外设送来的数据送入输入端口后,8255A自动发出。自动发出。INTR中断申请信号(高电平或上升沿有效)中断申请信号(高电平或上升沿有效)8255A发出,用来向发出,用来向CPU发出中断申请。发出中断申请。STB、IBF、INTE均为时,均为时,8255A自动发出自动发出INTR。注意:注意:INTE无引出端,设计规定由软件对无引出端,设计规定由软件对PC4或对或对PC2置置1触发触发中断允许触发器。中断允许触发器。本讲稿第四十九页,共一百四十九页方式方式
33、1输入信号时序图输入信号时序图本讲稿第五十页,共一百四十九页PA7PA7PA0PA0PC6PC6PC7PC7PC3PC3INTEAINTEAPC6PC6与门与门OBFOBFA AACKACKA AINTRINTRA AWRWRPB7PB7PB0PB0PC2PC2PC1PC1PC0PC0INTEBINTEBPC2PC2与门与门WRWROBFOBFB BACKACKB BINTRINTRB BA口输出口输出B口输出口输出本讲稿第五十一页,共一百四十九页对方式对方式1输出的端口,输出的端口,C口提供与外部联络的信号有:口提供与外部联络的信号有:OBF输出缓冲器满信号(低电平有效)输出缓冲器满信号(低
34、电平有效)当数据送至当数据送至8255A输出缓冲器后,输出缓冲器后,8255A自动发出。自动发出。表示表示CPU送来的数据已进入送来的数据已进入8255A输出端口,输出端口,可用来通知外设把数据取走。可用来通知外设把数据取走。ACK外设响应信号(低电平有效)外设响应信号(低电平有效)由外设发出,送给由外设发出,送给8255A。作用是通知作用是通知8255A输出端口的数据已被外设取走,输出端口的数据已被外设取走,可以传送下一个数据。可以传送下一个数据。INTR中断申请信号(高电平或上升沿有效)中断申请信号(高电平或上升沿有效)8255A发出发出,用来向用来向CPU发出中断申请。发出中断申请。当当
35、OBF、ACK、INTE均为时,均为时,8255A自动发出自动发出INTR。本讲稿第五十二页,共一百四十九页方式方式1输出时信号时序图输出时信号时序图本讲稿第五十三页,共一百四十九页例例3 3:利用:利用8255A8255A的端口的端口A A工作在方式工作在方式1 1驱动打印机,把驱动打印机,把缓冲区缓冲区BUFFBUFF中的中的400H400H个字节的个字节的ASCASC码字符送到打印码字符送到打印机打印。设端口地址分别为机打印。设端口地址分别为60H60H、61H61H、62H62H、63H63H。控制字:控制字:10101000BPAPC7PC6PC4STBACKBUSY本讲稿第五十四页
36、,共一百四十九页 MOVCX,400HMOVAL,0A8HOUT63H,ALMOVDI,OFFSETBUFFROT1:MOVAL,DIOUT60H,ALROT2:INAL,62HTESTAL,10HJNZROT2INCDILOOPROT1本讲稿第五十五页,共一百四十九页3)方式)方式2(双向传送方式)(双向传送方式)PAPA7 7PAPA0 0PC6PC6PC7PC7ACKACKA AOBFOBFA ARDRDWRWRPC4PC4PC5PC5STBSTBA AIBFIBFA AINTEA1INTEA1PC4PC4INTEA2INTEA2PC6PC6与与门门PC3PC3INTRINTRA A或门
37、或门与与门门工作在方式工作在方式2时,时,C口有口有5根引脚作为根引脚作为A口的联络信号,口的联络信号,是方式是方式1下下A口输入、输出联络信号的组合口输入、输出联络信号的组合。本讲稿第五十六页,共一百四十九页5、键盘和显示接口、键盘和显示接口1)LED数码显示接口数码显示接口 (8段)段)LED数码管分共阴数码管分共阴LED和共阳和共阳LED,发光时通过的,发光时通过的平均电流为平均电流为10mA20mA、电压为、电压为1.5V,实际使用时要加驱,实际使用时要加驱动及限流。动及限流。n显示方式显示方式静态显示静态显示各数码管能稳定地同时显示各自字符。各数码管能稳定地同时显示各自字符。动态显示
38、动态显示各数码管轮流地一遍一遍显示各自字各数码管轮流地一遍一遍显示各自字符,人们因视觉器官惰性而看到的是符,人们因视觉器官惰性而看到的是各数码管似乎在同时显示不同字型。各数码管似乎在同时显示不同字型。本讲稿第五十七页,共一百四十九页静态显示接口静态显示接口3#MC14495ah2#MC14495ah1#MC14495ah8255APA0PA1PA2PA3PB0PB1PB2MC14495具有译码(具有译码(BCD显示码)、显示码)、锁存、驱动、限流作用。锁存、驱动、限流作用。本讲稿第五十八页,共一百四十九页D0D1D2D3D4D5D6D7位位0abcdefgh位位1位位2同同相相驱驱动动器器PB
39、2PB1PB08255APA共阴共阴动态显示接口动态显示接口111本讲稿第五十九页,共一百四十九页2)键盘及其接口)键盘及其接口键盘键盘键盘是一组开关的集合,是微型计算机不可缺键盘是一组开关的集合,是微型计算机不可缺少的输入设备,人们通过它往计算机传递信息。少的输入设备,人们通过它往计算机传递信息。v一般性问题一般性问题检测是否有键按下;检测是否有键按下;若有键按下,判定是哪一个键;若有键按下,判定是哪一个键;确定被按键的读数;确定被按键的读数;去抖动;去抖动;不管一次按键持续的时间有多长,仅采用一个数据;不管一次按键持续的时间有多长,仅采用一个数据;处理同时按键。处理同时按键。本讲稿第六十页
40、,共一百四十九页v键盘工作原理键盘工作原理键盘可以分为独立连接式和矩阵式键盘可以分为独立连接式和矩阵式+5V+5V+5V 独立连接式也称为线性独立连接式也称为线性结构键盘结构键盘,是最简单的键盘。是最简单的键盘。n每一个引脚连接一个键每一个引脚连接一个键n输入输入0/10/1反映健是否高低反映健是否高低本讲稿第六十一页,共一百四十九页+5V+5V控制线控制线检检测测线线n常用的常用的矩阵结构矩阵结构键盘键盘n每行连接一个引脚每行连接一个引脚n每列连接一个引脚每列连接一个引脚n利用控制线为低、利用控制线为低、读取检测线来识别闭合键读取检测线来识别闭合键本讲稿第六十二页,共一百四十九页键盘接口及键
41、的识别键盘接口及键的识别 为了识别键盘上的闭合键,通常采用两种方法,为了识别键盘上的闭合键,通常采用两种方法,一种为一种为行扫描法行扫描法,另一种称为,另一种称为行反转法行反转法。n行扫描法行扫描法PA0PA1PA2PA3PB0PB1PB2PB310k45V原理:原理:CPU每次使并行每次使并行输出端口的某位为零,输出端口的某位为零,而其它位为而其它位为1,然后,然后CPU只要读取输入端口中的只要读取输入端口中的数据,就可判别。数据,就可判别。012C本讲稿第六十三页,共一百四十九页v行反转法行反转法5VPA0PA1PA2PA3PB0PB1PB2PB310k8原理:原理:n第一步设第一步设A口
42、输出口输出B口输入口输入A口输出全口输出全0值,然后值,然后从从B口读入;口读入;n第二步设第二步设A口输入口输入B口输出口输出将将B口刚读入的值输出,再口刚读入的值输出,再从从A口读入口读入90本讲稿第六十四页,共一百四十九页前沿抖动前沿抖动后沿抖动后沿抖动键稳定键稳定键按下键按下n抖动和重健问题抖动和重健问题n机械按键的抖动现象机械按键的抖动现象抖动的持续时间随操作员而异,通常总是不大于抖动的持续时间随操作员而异,通常总是不大于10ms,用,用软件方法软件方法可以很容易地解决抖动问题,这就可以很容易地解决抖动问题,这就是通过延迟来等待抖动消失,这之后再读入键码。另是通过延迟来等待抖动消失,
43、这之后再读入键码。另外还可使用硬件消抖电路。外还可使用硬件消抖电路。本讲稿第六十五页,共一百四十九页+5V3.6K+5V3.6K输出信号输出信号+5V输出信号输出信号双稳态电路双稳态电路斯密特电路斯密特电路硬件消抖电路硬件消抖电路本讲稿第六十六页,共一百四十九页v重键问题重键问题重键指两个或多个键同时闭合重键指两个或多个键同时闭合n出现重键时,读取的键值必然出现有一个以上出现重键时,读取的键值必然出现有一个以上的的0 0,是否给予识别和识别哪一个键,是否给予识别和识别哪一个键简单情况:不予识别,认为是错误的按键简单情况:不予识别,认为是错误的按键通常情况:只承认先识别出来的键通常情况:只承认先
44、识别出来的键连锁法:直到所有键都释放后,读入下一个键连锁法:直到所有键都释放后,读入下一个键巡回法:等被识别的键释放以后,就可以对其他闭合键作识别,巡回法:等被识别的键释放以后,就可以对其他闭合键作识别,而不必等待全部键释放而不必等待全部键释放正常的组合键:都识别出来正常的组合键:都识别出来本讲稿第六十七页,共一百四十九页8.3串行通信和串行接口芯片串行通信和串行接口芯片8251A1 1、串行通信、串行通信将数据的各位将数据的各位按时间顺序按时间顺序依次在依次在一根传输线上一根传输线上传输。传输。数据的各位依次由源到达目的地数据的各位依次由源到达目的地慢慢数据线少数据线少远程远程,费用低费用低
45、串行通信串行通信适于适于长距离长距离、中低速中低速通信通信RD目目的的TD源源8.3.1串行通信的基本概念串行通信的基本概念本讲稿第六十八页,共一百四十九页2、串行接口、串行接口能够完成串行通信任务的接口能够完成串行通信任务的接口功能:功能:1、接收并行数据转换为一定格式的串行数据送出;、接收并行数据转换为一定格式的串行数据送出;2、接收串行数据流,并将其转换为并行数据输入。、接收串行数据流,并将其转换为并行数据输入。串行接口的典型硬件结构包括串行接口的典型硬件结构包括除了包括并行接口芯片所具有端口及控制电路之外,还有除了包括并行接口芯片所具有端口及控制电路之外,还有串入并出、并入串出移位寄存
46、器。串入并出、并入串出移位寄存器。本讲稿第六十九页,共一百四十九页本讲稿第七十页,共一百四十九页本讲稿第七十一页,共一百四十九页3、串行通信的数据传输方式、串行通信的数据传输方式单工方式单工方式半双工方式半双工方式A接收器接收器B接收器接收器数据流数据流发送器发送器发送器发送器A接收器接收器B发送器发送器数据流数据流A接收器接收器B发送器发送器发送器发送器接收器接收器全双工方式全双工方式本讲稿第七十二页,共一百四十九页4、串行通信类型串行通信类型 所有串行通信都需要一个时钟信号来作为数据的定时参考。发所有串行通信都需要一个时钟信号来作为数据的定时参考。发送器和接收器用时钟来决定何时发送和读取每
47、一位数据。根据采用送器和接收器用时钟来决定何时发送和读取每一位数据。根据采用统一时钟还是本地局部时钟,分为如下两种类型统一时钟还是本地局部时钟,分为如下两种类型n串行异步通信串行异步通信(异步通信异步通信)n串行同步通信串行同步通信(同步通信同步通信)1 1)异步通信)异步通信 字符与字符之间的传送是异步的,而字符的位与位之间是字符与字符之间的传送是异步的,而字符的位与位之间是同步的。同步的。以字符为单位进行传输,其通信协议是以字符为单位进行传输,其通信协议是起止式异步通信协议起止式异步通信协议(Protocol)本讲稿第七十三页,共一百四十九页说明:说明:1、两个字符间的间隔任意、两个字符间
48、的间隔任意2、发送时钟与接收时钟不必完全同步,只要比较接近、发送时钟与接收时钟不必完全同步,只要比较接近3、在同一传输系统中,通信双方协议的数据格式是相、在同一传输系统中,通信双方协议的数据格式是相同的同的4、可设波特率因子为、可设波特率因子为1、16、64波特率因子指时钟频率是波特率的波特率因子指时钟频率是波特率的1倍、倍、16倍、倍、64倍倍字符字符低位低位高位高位0/10/1 0/10/10/10/10/10/11 10 01 11 11 1标标识识态态启启始始位位数数据据位位校校验验位位停停止止位位标标识识态态本讲稿第七十四页,共一百四十九页2)同步通信)同步通信 以一个数据块(帧)为
49、传输单位,每个数据块附加以一个数据块(帧)为传输单位,每个数据块附加1 1个或个或2 2个同步字符,最后以校验字符结束。个同步字符,最后以校验字符结束。同步字符同步字符数据数据数据数据数据数据校验校验1校验校验2说明:说明:1、分为单同步(、分为单同步(1)、双同步()、双同步(2)、外同步(无)、外同步(无)2、字符间不允许有间隔,在没有信息传输时,要填上、字符间不允许有间隔,在没有信息传输时,要填上同步字符同步字符3、接收端在收到确定数量的同步字符后,才认为传输、接收端在收到确定数量的同步字符后,才认为传输开始开始4、要求通信双方保持完全的同步、要求通信双方保持完全的同步本讲稿第七十五页,
50、共一百四十九页3)波特率与发送接收时钟)波特率与发送接收时钟1、波特率波特率 是指单位时间内传送二进制数据的是指单位时间内传送二进制数据的位数位数,其单位是位其单位是位/秒秒(bit/s)bit/s)。它是衡量串行数据速度快慢的重要指标。最常用的标。它是衡量串行数据速度快慢的重要指标。最常用的标准波特率是准波特率是110110、300300、600600、12001200、24002400、48004800、96009600、19200b/s19200b/s等。等。注:区分字符速率与波特率概念。注:区分字符速率与波特率概念。2、发送发送/接收时钟接收时钟 在发送数据时,发送器在发送时钟作用下将