已阅读5页,还剩47页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
可编程接口芯片,第七章可编程接口芯片,接口芯片简介,第7.1节接口芯片简介接口的功能数据缓冲:外设数据输入到总线时需要缓冲。数据锁存:总线数据输出到外设时的锁存,解决CPU与外设速度不匹配问题。传输控制命令和状态信息:计算机与外设有时需使用硬件握手。例如:计算机利用查询输出到打印机。信息转换:串并转换、数模转换、电平格式转换可由程序改变功能的接口芯片称为可编程接口芯片,常用接口芯片,8086系统常用可编程接口芯片并行接口芯片INTEL8255,有三个8位端口A、B、CINTEL8155,有三个端口,内带256字节RAM,两个定时器串行接口芯片INTEL8251,同步异步串行接口INTEL8250,异步串行接口芯片计数定时器INTEL8253/8254,三个通道16位定时计数器直接内存访问控制器(DMA)INTEL8237,8255内部接构,第7.2节可编程并行接口8255A8255A内部结构与功能(一)8255A内部结构,8255内部接构,内部结构说明端口端口A:由一个8位数据输入锁存器和一个8位数据输出锁存缓冲器组成,可工作于双向方式。端口B:由一个8位数据输入缓冲器和1个8位数据输出锁存缓冲器构成。端口C:由一个8位数据输入缓冲器和一个8位数据输出锁存缓冲器构成。C口可分为两个部分,配合A口和B口工作。A组控制和B组控制接收CPU控制字,决定8255工作方式。,8255内部接构,读写控制逻辑由RD、WR、CS、A0、A1和RESET组成,8255占用4个端口地址。数据总线缓冲器8位双向数据缓冲器,可直接与数据总线相连。,8255引脚功能,引脚功能说明8255A为40引脚双列直插的NMOS器件,其引脚如下:PA7PA0:端口A的数据线,双向,三态输出。PB7PB0:端口B的数据线,可输入,也可输出。PC7PC0:端口C的数据线,可输入,也可输出,还可做A口或B口的控制信号线。D7D0:数据线,与系统总线连接。RD:读信号,输入,低电平有效,从8255A读取数据WR:写信号,输入,低电平有效,把数据写入8255。CS:片选信号,输入,低电平有效,决定芯片地址。A0A1:端口选择信号,8255占四个端口地址。RESET:复位信号,输入,高电平有效。复位后清所有内部寄存器,8255端口选择,8255端口选择A1A000对A口操作01对B口操作10对C口操作11对控制口操作,8255的计算机连接,8255与计算机的连接,8255与计算机的连接,连接说明8255的数据线D7D0接8086系统的数据线低8位。8255的A0接8086的A1,8255的A1接8086的A2,使用偶地址传递信息。端口地址,8255控制字,8255A的控制字与工作方式(一)8255A的控制字方式控制字方式控制字送到控制口,以选择A口,B口和C口的工作方式。,8255控制字,说明8255A有三种工作方式,每种方式都可以输入也可以输出。方式0:无条件(基本)输入输出。方式1:查询(选通)输入输出。方式2:双向方式。A口有三种工作方式,B口仅有方式0和方式1工作方式。在方式1和方式2中C口作为联络信号。,8255控制字,端口C按位控制字说明按位控制字写入8255的控制口;该控制字仅对8255的端口C的输出锁存器操作。,8255工作方式,(二)8255A的工作方式方式0基本输入输出方式输入端口A、B和PC7PC4及PC3PC0都可工作于此方式在此方式下,口线直接与端口输入缓冲器相连,输入不具有锁存功能CPU用IN指令读取数据口以得到当前口线状态,8255工作方式,输出端口A、B、PC7PC4和PC3PC0均可编程工作于此方式。在此方式下,输出口线通过端口输出缓冲器连接到端口输出锁存器,而且输出缓冲器被打开。CPU用OUT指令写数据到数据口,以把数据输出到端口输出锁存器,并到达口线。,8255工作方式,方式1选通输入输出方式选通输入方式,8255工作方式,信号说明STB选通输入:低电平有效,表示外设送出新数据。IBF输入缓冲区满:输出,高电平有效。通知外设输入缓冲区满,不要送新数据,由CPU读取数据清除。INTR中断请求信号:输出,高电平有效,可向CPU申请中断。INTEx中断允许:INTEA是C口输出锁存器的PC4,INTEB是C口输出锁存器的PC2,由它们分别控制A口和B口的中断申请。INTEx=1中断允许INTEx=0中断禁止,8255工作方式,选通输出方式,8255工作方式,信号说明OBF输出缓冲器满,输出,低电平有效,通知外设端口已有可用数据。ACK收到信号,输入,低电平有效。外设通知8255已取走数据,由其清除OBF,并置“1”INTR。INTR中断请求信号,输出,高电平有效,可向CPU申请中断。INTEx中断允许信号INTEA为PC6输出锁存器,INTEB为PC2输出锁存器INTEx=1中断允许,INTEx=0禁止中断。,8255工作方式,方式2双向方式仅A口有此方式,8255工作方式,ACKA输入,低电平有效。外设发出ACKA打开A口输出缓冲器,读取数据,同时清除OBFA,并使INTR有效。STBA选通信号,输入,低电平有效,外设准备好数据,通过STBA把数据锁存到端口输入锁存器,同时使IBFA和INTRA有效。IBFA输入缓冲区满,输出,高电平有效。通知外设端口已有数据。该信号由CPU对数据端口读操作清除。INTEx中断允许信号INTE1为PC6输出锁存器,INTE2为PC4输出锁存器INTEx=1中断允许INTEx=0禁止中断,8255应用举例,8255A应用举例例1由8255A的A口输出控制一位共阳极数码管,由C口PC7PC4输入接入四位DIP开关的设置,根据开关设置值,在数码管上显示字型。注:LED数码管由8个发光二极管组成七段数码和小数点,8255应用举例,程序8255初始化控制字:88H十六进制到字型码采用软件译码方式,8255应用举例,PORTAEQU60HPORTBEQU62HPORTCEQU64HPCTRLEQU66HDISPROCMOVAL,88HOUTPCTRL,AL;初始化8255INAL,PORTC;读开关状态MOVCL,4SHRAL,CL;转成低4位LEABX,SH_TABXLATSH_TAB;查表OUTPORTA,AL;显示输出,RET;字型表SH_TABDB0C0H0F9DISENDP,8253内部结构,第7.3节计数器/定时器INTEL82538253内部结构与功能Intel8253是三个通道16位再装入定时计数器,可由软件设定6种工作方式。(一)内部结构内部结构说明8253内部有三个独立的通道;每个通道有6种工作方式,由控制寄存器选择;每个通道可对外部输入CLK进行二进制或十进制减1计数。计数由引脚GATE控制;计数器归0时由OUT引脚输出信号。,8253内部结构,8253引脚功能,引脚功能8253具有24个引脚,各引脚功能如下:D7D0数据总线,双向三态,可直接与计算机系统数据总线相连。RD读信号,输入,低电平有效,若有效则CPU从8253内部读取数据.WR写信号,输入,低电平有效,若有效则CPU将数据写入8253内部寄存器。CS片选信号,输入,低电平有效,与计算机连接时分配有效地址。A1A0内部计数器选择信号。8253内部有三个计数通道,使用四个端口地址。,8253引脚功能,CLK0、CLK1、CLK2通道0,通道1和通道2的计数时钟输入端,下降沿使通道减1。GATE0、GATE1、GATE2门控制,输入,高电平有效或上升沿有效,有效时才允许计数器对输入时钟进行计数。OUT0、OUT1、OUT2通道输出信号,当计数器计数到“0”时由此引脚输出一信号。,8253与计算机的连接,8253与计算机的连接,8253与计算机的连接,8253与计算机连接说明8253数据线D7D0接系统数据总线的低8位。8253的A1和A0分别接系统的A2和A1,使用偶地址传递信息由74LS138,74LS30和74LS04译码选中8253,8253与计算机的连接,8253三个通道的时钟由PCLK分频得到,频率为:2.38636/2=1.1931816MHz在IBM-PC/XT微机系统中,通道0定时OUT0接8259的IR0,通道1刷新动态存储器,通道2控制扬声器发声。,8253控制字,8253控制字及工作方式(一)8253控制字控制字写入控制口,说明如下:SC1SC0计数器通道选择00通道001通道110通道211非法,8253控制字,RW1RW0计数器读写选择00计数器锁存01只读写低8位10只读写高8位11先低8位,再高8位M2M1M0计数器工作方式选择000方式0001方式1x10方式2x11方式3100方式4101方式5,BCD计数器进制选择016位二进制计数器1BCD码计数器,8253工作方式,(二)8253工作方式模式0计数结束产生中断控制字写入后OUT即变为低电平,当计数器为0时,输出OUT变为高电平,并停止现行操作。计数初值写入后在下一个CLK下降沿才送入计数器,因此计数值为N+1。当GATE变为低电平时计数停止,再变为高电平时计数继续进行。若计数过程中重新送入初值,则按新值重新计数。,8253工作方式,模式1可重新触发单稳态触发器写入控制字后OUT变为高电平,GATE上升沿后,下一个CLK的下降沿使得OUT为低电平并开始计数,回零时OUT变为高电平。GATE再来一次上升沿后会再次使OUT变为低电平,计数器以初值重新计数。再次给通道写入时间常数,不影响现行操作过程,GATE再次触发后才按新的时间常数操作。,8253工作方式,模式2分频器写入控制字后OUT为高电平,输入时间常数后,下一时钟开始计数,减到1时输出变为低电平,经过一个CLK输出变为高电平,计数重新开始。GATE=1计数进行,GATE=0计数停止,且下一个CLK下降沿计数器重新赋初值,GATE变为高电平,计数重新开始。计数期间送入新值,本周期继续进行,下一个周期按新值计数操作。,8253工作方式,模式3方波发生器写入控制字后OUT为高电平,输入时间常数后,下一时钟开始计数,计到一半时输出变为低电平,计到终值时变为高电平,并开始下一次计数过程。若N为偶数,高低电平持续时间相等;若为奇数,则高电平持续时间为(N+1)/2,低电平持续时间为(N-1)/2。GATE=1计数进行,GATE=0计数停止,OUT为高,计数器重新赋初值,GATE变高,在下一个CLK下降沿计数重新开始。计数期间送入新值,本周期继续进行,下一个周期按新值计数。,8253工作方式,模式4软件触发选通写入控制字后OUT为高电平,输入时间常数后,下一个时钟周期开始计数,计数器为0时,输出一个周期负脉冲,并停止现行操作。GATE=1允许计数,GATE=0禁止计数,GATE不影响输出计数期间送入新的时间常数,则下一个时钟按新值重新计数,8253工作方式,模式5硬件触发选通写入控制字后OUT变为高电平,输入时间常数后由GATE上升沿启动计数。计数为0时输出一个时钟的负脉冲,并停止现行操作。计数过程中,若GATE又来一个上升沿,则下一个时钟计数器重新赋值计数,8253工作方式,计数过程中写入时间常数,当前周期不受影响,只有下一个GATE上升沿才启动新值计数,8253应用举例,8253应用举例(一)ROMBIOS对8253初始化对计数器0的初始化MOVAL,36HOUT46H,ALMOVAL,00HOUT40H,ALOUT40H,AL说明计数器0工作于方波发生器方式,对CLK(1.1931816MHz)进行65536分频。,8253应用举例,计数器0的输出端OUT0接8259的IR0,每次归0产生一次中断请求,中断类型码由BIOS设置为8。中断时间间隔为54.925ms,每秒钟来18.2次中断。通道0的时间间隔是计算机系统时钟基础。对计数器1的初始化MOVAL,54HOUT46H,ALMOVAL,18OUT42H,AL通道1给DMA控制器提供时钟;输出频率为66.288KHz。,8253应用举例,对计数器2的初始化和接通喇叭MOVAL,0B6HOUT46H,ALMOVAX,533HOUT44H,ALMOVAL,AHOUT44H,ALINAL,62H;读入8255的PB口MOVAH,AL;保护原值ORAL,03H;置1PB1和PB0OUT62H,AL;输出,8253应用举例,说明定时器2工作在方波发生器方式,驱动扬声器发声;发声频率为896Hz;扬声器发声还受8255的PB0和PB1控制。,8253应用举例,(二)8253应用例由8253的计数器0定时55ms控制扬声器变调发声,响5.5秒后停止。说明8253计数器0的OUT0接8259的IR0,由ROMBIOS初始化,中断类型码为08H,并在完全嵌套方式下工作。8253计数器0由ROMBIOS设置为模式3,定时时间为55ms。扬声器发声由8253的计数器2控制发声频率,发声允许由8255的PB0和PB1控制。,8253应用举例,DOS功能调用25H号子功能为设置中断向量。入口参数AH=25H,AL=中断类型码DS:DX中断服务程序入口地址返回参数:无DOS功能调用35H号子功能为取中断向量入口参数AH=35H,AL=中断类型码返回参数ES:BX中断服务程序入口地址,8253应用举例,中断服务程序为INT_08H保护现场和恢复现场;中断返回前要开中断并发EOI;中断返回IRET。每次定时器0中断使扬声器的发声频率的分频常数增加100,并使计数变量count增1。主程序查询count到100后停止扬声器发声,恢复中断向量,程序退出。,8253应用举例,datasegmentold_int08hdd?countdw0constantdw60statedb?dataendsst_segsegmentstackdb256dup(?)st_segendscodesegmentassumecs:code,ds:dataInt_08hprocfarpushaxpushdsmovax,data,movds,axmoval,0b6hout43h,almovax,constantaddax,100movconstant,axout42h,almoval,ahout42h,alinccountmoval,20h;发EOIout20h,alpopdspopaxsti,iretInt_08hendpmainprocfarmovax,datamovds,axclim
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025版风湿性关节炎常见症状及护理技巧
- 安全教育不碰电
- 语文中的观察方法
- 综合评价方法与决策数学建模
- 日本建筑工程介绍
- AEO企业高级认证介绍
- 白板课件制作方法
- 智能康复技术科普讲解
- 心血管内科进修护士工作汇报
- 呼吸内科护理工作汇报总结
- 2025全国导游资格证考试《导游业务》真题库(含答案)
- 中国软件行业协会:2025中国软件行业基准数据报告 SSM-BK-202509
- GB/T 4026-2025人机界面标志标识的基本和安全规则设备端子、导体终端和导体的标识
- 2025年陕西延安旅游集团有限公司招聘笔试参考题库含答案解析
- 减少我们的碳排放-课件(17张)
- 体能训练概论(NSCA)
- Q∕SY 1736-2014 评标方法选择和评标标准编制规范
- 食品风味化学-6食品风味的调整和香味料
- 国家开放大学电大专科《美学与美育》简答题综合论述题题库及答案
- 闵行区加强住宅小区综合治理三年行动计划(2015-2017)
- ZZG22高频开关整流器 - 图文-
评论
0/150
提交评论