828255的应用实例解读课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《828255的应用实例解读课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 828255 应用 实例 解读 课件
- 资源描述:
-
1、微型计算机原理与应用 -输入输出和接口技术微型计算机原理与应用 -可编程并行接口2023-1-30382558255与系统的连接与系统的连接BG2AG2A AB BC C74LS13874LS138&1 10YD D7 7D D0 0 PAPA0 0RESETRESET82558255PAPA7 7PBPB7 7PBPB0 0PCPC0 0PCPC7 7 WRRDA A1 1A A0 0CS&80888088系统系统BUSBUSA A7 7IOWA A1111A A9 9A A8 8A A1010A A1313A A1212A A4 4A A2 2A A3 3A A6 6A A5 5A A15
2、15A A1414D D7 7D D0 0 IORRESETRESETIORA A1 1A A0 0IOW8255与系统的连接与系统的连接o 8255相当于三个独立的8位简单接口。o 各端口既可设置为输入口,也可设置为输出口,但不能同时实现输入及输出。o C端口即可以是一个8位的简单接口,也可以分为两个独立的4位端口。o 设置为输出口时有锁存能力,设置为输入口时无锁存能力。o 属于无条件传输方式属于无条件传输方式PPT+PPT+表述表述1 1、工作方式、工作方式0 0查询方式交换数据查询方式交换数据IN AL,PORT ;PORT是端口号 输入输入输入缓冲器译码器数据数据DBDBABAB外设8
3、nIO/MRD外设将数据送到外设将数据送到82558255输入缓冲器中;输入缓冲器中;CPUCPU给出有效的给出有效的82558255地址;地址;CPUCPU发读命令,将发读命令,将8255A8255A输入缓冲器中数据读入输入缓冲器中数据读入CPUCPU的的ALAL寄存器中。寄存器中。PPTPPT8255A的工作方式方式0(输出方式)oOUT PORT,AL输出锁存器译码器数据数据DBDBABAB外设8nIO/MWRPPTPPT2023-1-307教材实例:例教材实例:例1 1 将将8255 C8255 C端口的端口的8 8根根I/OI/O线接线接8 8只发光二极管的正极只发光二极管的正极(八
4、个负极均接八个负极均接地地),编写使这,编写使这8 8只发光二极管依次亮、灭的程序。设只发光二极管依次亮、灭的程序。设82558255的端口地址为的端口地址为380H380H383H383H。8255方式0应用举例12023-1-308程序框图程序框图控制字寄存器的端口地址送间址寄存器控制字寄存器的端口地址送间址寄存器写入方式选择字写入方式选择字PC=10向向PCPC口送数据口送数据 写入置位字点亮一只发光二极管写入置位字点亮一只发光二极管延时让发光二极管发光延时让发光二极管发光向向PCPC口送第二个数据口送第二个数据熄灭发光二极管熄灭发光二极管11号功能调用检测有无键入号功能调用检测有无键入
5、有键入吗有键入吗?NYPC=10PC=0 PC1=102023-1-309stackstack segment stack segment stack stackstack dw dw 32 dup(0)32 dup(0)stackstack ends endscode code segment segmentbeginbegin proc far proc far assume ss:stack,cs assume ss:stack,cs:code:code push ds push ds sub ax,ax sub ax,ax push ax push ax MOV DX,383HMOV
6、DX,383H;383H383H为控制字寄存器的端口地址为控制字寄存器的端口地址 MOV AL,80HMOV AL,80H OUT DX,AL OUT DX,AL;写入方式选择字写入方式选择字参考程序参考程序2023-1-3010 MOV DX,382H MOV DX,382H ;C C端口的端口地址送端口的端口地址送DXDX MOV AL,1 MOV AL,1 ;C C端口的输出值端口的输出值AGAIN:OUT DX,AL AGAIN:OUT DX,AL ;给给C C口送数据,点亮一只二极管口送数据,点亮一只二极管 LOOP$LOOP$;延时延时 LOOP$LOOP$;延时;延时 PUSH
7、AXPUSH AX MOV AH,11 MOV AH,11 ;1111号功能调用:检查键盘有无输入号功能调用:检查键盘有无输入 INT 21H INT 21H ;无:;无:0 0送送ALAL;有:;有:-1-1送送ALAL INC AL INC AL ;有键入,;有键入,AL=-1AL=-1,ALAL增增1 1,AL=0AL=0 POP AX POP AX JZ BACK JZ BACK ROL AL,1 ROL AL,1 ;通过循环移位指令改变C端口的输出值,灭第一盏灯点第二盏灯 JMP AGAIN JMP AGAIN ;给端口送数据BACK:retBACK:ret2023-1-3011be
8、ginbegin endp endpcodecode ends ends end begin end begin 方式方式0 0也可作为查询式输入或输出的接口电路,此时端口也可作为查询式输入或输出的接口电路,此时端口A A和和B B分别可作为一个数据端口,而取端口分别可作为一个数据端口,而取端口C C的某些位作为这两个数据端的某些位作为这两个数据端口的控制和状态信息。口的控制和状态信息。2023-1-30128255方式0应用举例2o 例2在某工业系统中,要不断检测8个开关K7 K0的通断状态,并随时在LED7LED0上显示出来(开关合,LED亮;开关断,LED灭)。2023-1-3013o
9、端口地址的分配端口地址的分配:如图,地址线A2 A1是可以变化的,其他都是固定的。o 端口A地址:90H(A2A1=00)o 端口B地址:92H(A2A1=01)o 端口C地址:94H(A2A1=10)o 控制字寄存器地址:96H(A2A1=11)A1A1A0A0注意连接线上的信号方向!2023-1-3014o 控制程序:oMOVAL,10010000B;分析控制字oOUT96H,AL;写入8255控制字 o L1:I NAL,90H;收K7 K0的通断状态 oOUT92H,AL;输出收到的数据到PB口,CALLDELAY;延时,保持灯亮 oJMPL1;转移到L1,继续测定。延时程序先不用管延
10、时程序先不用管2023-1-3015例3 检测8个开关K7 K0的通断状态,将闭合的开关个数,在LED7LED0上显示出来。o 例3的分析o 接收A口上开关的状态到AL中 o 检查AL中有几个位是“0”o 用换码指令将“0”的个数转换成对应的字型码 o 将字型码从B口输出 2023-1-3016o 7段数码管及字形码o 接法:共阴极与共阳极 o 字形码与字形o 字形码由PB口提供。o PB口的字形码从哪儿来?每个字形对应一组编码每个字形对应一组编码字形码。字形码。2023-1-3017参考程序o MOV AL,1001 0000B o OUT 96H,AL;置8255方式控制字 L0:IN A
11、L,90H;收开关状态 o MOV DL,00H;将来存放1的个数L1:AND AL,AL o JZ EXT1 o SHL AL,1 o JC L2 o INC DL L2:JMP L1;未查完,继续查 EXT1:LEA BX,TABLE;TABLE中方 的是0-7的字形码 o MOV AL,DL o XLAT;将DL中的“0”的个数转换成字型码 o MOV DX,92H o OUT DX,AL;将字型码从B口输出 o CALL DELAY;延时o JMP L0 检查检查1 1的个数的个数码转变并输出显示码转变并输出显示A A口输入口输入B B口输出,方式口输出,方式0 02023-1-301
12、88255综合练习 方式0应用举例4o要求:o掌握芯片之间连接o相应端口地址会分析。o看懂图上的芯片之间的联系o编写控制程序。要求:将要求:将IN7IN7上的模拟量转换成数字量,存入上的模拟量转换成数字量,存入BUFBUF单元单元 分析:分析:A口做数据输入端口口做数据输入端口 B口没有使用口没有使用 C口高口高4位是输入口,低位是输入口,低4位是输位是输出口出口 均采用方式均采用方式0进行控制。进行控制。2023-1-3019o分析顺序:oCPU与8255连线oCPU与译码器间的连线,读懂8255的端口地址o8255与外设连接 C口低4位是输出用ADC0809的工作原理:的工作原理:1、用、
13、用C、B、A三个端子选择模拟量的输入(三个端子选择模拟量的输入(IN0-IN7)端:)端:000-IN0、001-IN1、110-IN6、111-IN7(每次只能转换1路,所以要先选择)2、ALE有效时,有效时,CBA上信号存入上信号存入ADC内的地址锁存器中内的地址锁存器中 CBA上面的数据随时都有,什么时候是选择模拟量通道的那个信号呢,ALE有效的时候,CBA上的数据被锁存,这个信号才是输出端选择信号。3、START端有正脉冲,启动端有正脉冲,启动AD转换转换注:ALE 和STA RT 接到同一个引脚上。4、转换结束时,、转换结束时,EOC为为“1”转换时间:64个外部时钟周期5、ADC的
14、数据输出锁存器后接有缓冲器,缓冲器靠的数据输出锁存器后接有缓冲器,缓冲器靠OE=“1”选选中中。如果OE不打开,锁存器与CPU间就不联通。6、转换好的数据从、转换好的数据从D7-D0端传给端传给CPU2023-1-3020o8255的端口地址分析的端口地址分析qA7 A6 A5 A4 A3 A2 A1 A0 q 1 0 0 0 1 0 X X qA口:88H、B口:89H、C口:8AH、控制字口:8BHq工作方式控制字工作方式控制字qMOV AL,1001 1000B qOUT 8BH,ALq选择选择IN7并启动并启动A/D转换转换qMOV AL,0000 0111B ;PC2 PC1 PC0
15、;此时不启动转换,PC3=0qOUT 8AH,AL;选择IN7 qMOV AL,0000 1111B qOUT 8AH,AL qMOV AL,0000 0111B;START引脚上0-1-0有一个脉冲qOUT 8AH,AL;启动A/D转换,蓝色111决定了端口2023-1-3021q检查检查A/D转换是否结束?并打开输出缓冲器转换是否结束?并打开输出缓冲器q L1:IN AL,8AH ;检查PC4q TEST AL,0001 0000B q JZ L1;AD转换没有结束转L1 q;AD转换结束处理 q(打开输出缓冲器靠硬件连线解决)接收转换好的数据接收转换好的数据 IN AL,88H MOV
16、BUF,AL2023-1-30228255 的方式1-选通输入方式 o端口A和端口B仍作为数据的输入、输出口;o端口C的某些位作为端口A和端口B的选通控制信号,配合AB 口使用。oA口、B口在作为输入和输出时的选通信号源自不同的引脚。o表中的输入输出时是针对8255而言。在这种工作方式下,数据的输入输出操作要在选通信号控制下完成。在这种工作方式下,数据的输入输出操作要在选通信号控制下完成。和外设商量着来和外设商量着来2023-1-3023外部设备外部设备8255A方式1(输入)情况下四个联络信号及工作过程111外设产生外设产生数据数据数据出现在外数据出现在外部数据总线部数据总线外设发选通外设发
17、选通信号信号数据进入数据进入8255A的的A口口1通知外设缓冲区已通知外设缓冲区已满,表示已经接受满,表示已经接受数据数据1向向C口写口写P4位置位置1,开放中断开放中断向向CPU发中断请发中断请求信号求信号CPU发读信发读信号号注意:此工作是注意:此工作是8255A8255A初始化时初始化时完成的!完成的!PPTPPTPCPC口的哪一位做选通信号和口有关和输出输入口的哪一位做选通信号和口有关和输出输入有关,比如同为输入有关,比如同为输入A A口用口用PC4PC4,B B口用口用PC2PC22023-1-3024o STB#(Strobe闸门)选通输入信号,低电平有效。它是外设供给的输入信号,
18、当其有效时将外设来的数据送入8255的输入锁存器。A组对应(接到)PC4;B组对应PC2。o IBF(input buffer full)输入锁存器满,高电平有效。这是一个8255输给外设的联络信号。当其有效时,通知外设输入的数据已写入缓冲器,此时不能送下一个数据。CPU用IN指令取走数据后,此信号被清除。A组对应PC5;B组对应PC1。如果外设不需要这个信号你可以悬空不用。这两个信号(引脚)是这两个信号(引脚)是82558255与外设间的联络引脚与外设间的联络引脚2023-1-3025o INTR(interrupt request)中断请求信号,高电平有效。是由8255A输出的一个信号。用
展开阅读全文