《微机接口技术期末复习.pptx》由会员分享,可在线阅读,更多相关《微机接口技术期末复习.pptx(37页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第七章输入第七章输入/输出系统输出系统一接口电路的作用和功能一接口电路的作用和功能二、端口的概念、分类二、端口的概念、分类三三、端端口口有有两两种种编编址址方方式式。PC系系列列机机采采用用端端口口独独立立编址编址四、最常用的四、最常用的I/O指令指令1.直接寻址直接寻址I/O指令(指令(8位端口地址)位端口地址)2.DX间接寻址间接寻址I/O指令(当端口地址指令(当端口地址8位)位)第1页/共37页五五、微机系统与微机系统与I/O端口的信息交换端口的信息交换有四种方式有四种方式:无条件传送无条件传送,查询方式查询方式,中断方式中断方式,DMA方式方式查询方式下发送和接收数据的程序段查询方式下
2、发送和接收数据的程序段第2页/共37页第八章中断系统第八章中断系统一中断概念一中断概念CPU暂停执行现行程序暂停执行现行程序,转而处理随机事件转而处理随机事件,处理完毕后再处理完毕后再返回被中断的程序返回被中断的程序,这一全过程称为中断。这一全过程称为中断。二、中断指令二、中断指令 STI CLI INT n IRET STI CLI INT n IRET 要求掌握要求掌握 。中断指令在中断程序设计中何时使用。中断指令在中断程序设计中何时使用 。CPUCPU执行中断指令后,完成哪些操作执行中断指令后,完成哪些操作 。STI,CLISTI,CLI只对可屏蔽中断请求有效只对可屏蔽中断请求有效例:例
3、:CPUCPU执行执行IRETIRET指令后,从栈顶弹出指令后,从栈顶弹出 字节数据,分别赋给字节数据,分别赋给_、_和和 _。第3页/共37页三中断向量三中断向量。中断向量是实模式下,中断服务子程序的中断向量是实模式下,中断服务子程序的入口地址入口地址。在实模式下,。在实模式下,CPU把把256种中断向量组成一张表设置在种中断向量组成一张表设置在系统的系统的RAM最低端的最低端的1K单元(单元(03FFH)。n型中断向量存放在内存单元地址型中断向量存放在内存单元地址4*n4*n+3这四个单元这四个单元4n+0+2+3+1n型服务程序入口的偏移地址型服务程序入口的偏移地址n型服务程序入口的段基
4、址型服务程序入口的段基址n型中断向量型中断向量例例:实实模模式式下下,从从内内存存地地址址0000H:0048H开开始始的的连连续续4个个单单元元中中存存放放的的内内容容为为00H,38H,30H,50H,则则该该地地址址所所对对应应的的中中断断类类型型码码为为_,该该中中断断所对应的中断服务子程序的入口地址为所对应的中断服务子程序的入口地址为_。中断向量表的引导作用第4页/共37页CPU中断中断硬件中断硬件中断(外部中断外部中断)软件中断软件中断(内部中断内部中断)PC机机256种种中断中断可屏蔽中断可屏蔽中断非屏蔽中断非屏蔽中断四、微机系统中断分类四、微机系统中断分类第5页/共37页(1)
5、对于)对于CPU中断、软件中断、非屏蔽中断中断、软件中断、非屏蔽中断(NMI)。概念。概念。中断类型码的获得。中断类型码的获得CPU中断中断自动获得自动获得软件中断软件中断包含在软中断指令中包含在软中断指令中非屏蔽中断非屏蔽中断自动获得,自动获得,n=2(2)对于可屏蔽中断)对于可屏蔽中断可屏蔽中断是通过可屏蔽中断是通过8259中断控制器连至中断控制器连至CPU的的INTR。对于对于8259要求掌握:要求掌握:。8259中断响应过程(即中断响应过程(即CPU响应可屏蔽中断过程)响应可屏蔽中断过程)例:例:中断优先权电路的作用是什么?中断优先权电路的作用是什么?第6页/共37页对于微机系统可屏蔽
6、硬件中断要求掌握:对于微机系统可屏蔽硬件中断要求掌握:中断级别中断级别最高最高最低最低 中断源中断源 日时钟中断日时钟中断 键盘中断键盘中断从从8259IR08259IR0 IR1 IR1 IR2 IR2辅串口辅串口主串口主串口并口并口2 2软盘软盘并口并口1 1IR7IR7中断类型码中断类型码08H09H70H71H改向改向0AH72H77H77H0BH0BH0CH0CHODHODH0EH0EH0FH0FH第7页/共37页。系统分配的。系统分配的8259口地址口地址中断屏蔽寄存器中断屏蔽寄存器口地址口地址接收中断结束命令的接收中断结束命令的寄存器口地址寄存器口地址主主825921H20H从从
7、8259A1HA0H第8页/共37页对于要求掌握的四种可屏蔽中断:对于要求掌握的四种可屏蔽中断:。用户中断。用户中断 中断源中断源 中断向量中断向量 71H,0AH71H,0AH 用户可置换的中断向量用户可置换的中断向量 71H,0AH71H,0AH 第9页/共37页 。日时钟中断。日时钟中断 中断源中断源 中断向量中断向量 08H,1CH08H,1CH 用户可置换的中断向量用户可置换的中断向量 08H,1CH08H,1CH 重点掌握重点掌握1CH1CH第10页/共37页五。中断程序设计五。中断程序设计(1)主程序的编写)主程序的编写主要包括主要包括a.中断向量的置换(读中断向量和写中断向量)
8、中断向量的置换(读中断向量和写中断向量)b.硬件中断通路的开放和屏蔽。涉及到是否要对中断硬件中断通路的开放和屏蔽。涉及到是否要对中断对于日时钟对于日时钟08H(或其中的或其中的1CH),默认下主默认下主8259已经打开,已经打开,无需再进行开放操作。无需再进行开放操作。(2)中断服务程序的编写)中断服务程序的编写根据置换的中断类型不同,需要解决是否要对中断管理器根据置换的中断类型不同,需要解决是否要对中断管理器8259写中断结束命令字的问题。写中断结束命令字的问题。对于日时钟对于日时钟08H(或其中的或其中的1CH),不需要写不需要写中断结束命令字中断结束命令字第11页/共37页假设微机系统外
9、扩了如下的一个假设微机系统外扩了如下的一个单脉冲发生器单脉冲发生器,该,该单脉冲单脉冲发生器发生器电路受一个自复开关电路受一个自复开关K K的控制,每按一次的控制,每按一次K K,该电路输出一,该电路输出一个正脉冲,输入到系统机从个正脉冲,输入到系统机从82598259的的IR1IR1作为外部中断请求。作为外部中断请求。要求:每按一次要求:每按一次K K,屏幕上显示一行字符串,屏幕上显示一行字符串“Welcome!Welcome!”。主机。主机键盘按任意键,程序结束,返回键盘按任意键,程序结束,返回DOSDOS。(要求给出完整的源程序)。(要求给出完整的源程序)从从8259IR1单脉冲发生器单
10、脉冲发生器K第12页/共37页.486DATASEGMENTUSE16MESGDB“B01040101”,”$”DATAENDSCODESEGMENTUSE16ASSUMECS:CODE,DS:DATABEG:MOVAX,DATAMOVDS,AXCLICALLWRITE0ACALLI8259STISCAN:MOVAH,1INT16HJZSCANMOVAH,4CHINT21H第13页/共37页SERVICEPROCPUSHAPUSHDSMOVAX,DATAMOVDS,AXMOVAH,9MOVDX,OFFSETMESGINT21HMOVAL,20HOUT20H,ALPOPDSPOPAIRETSER
11、VICEENDP第14页/共37页WRITE0APROCPUSHDSMOVAX,CODEMOVDS,AXMOVDX,OFFSETSERVICEMOVAX,250AHINT21HPOPDSRETWRITE0AENDPI8259APROCINAL,21HANDAL,11111011BOUT21H,ALINAL,0A1HANDAL,11111101BOUT0A1H,ALRETI8259AENDPCODEENDSENDBEG第15页/共37页第九章串行通信第九章串行通信一基本概念一基本概念1.1.通信的基本方式分为并行通信和串行通信通信的基本方式分为并行通信和串行通信2.2.串行通信分为串行异步通信和
12、串行同步通信串行通信分为串行异步通信和串行同步通信3.3.异异步步串串行行通通信信的的数数据据传传输输方方式式:单单工工通通信信、半半双双工工通信、全双工通信通信、全双工通信 。三种传输方式的特点。三种传输方式的特点。例:单工、半双工、全双工通信方式的特点是什么?例:单工、半双工、全双工通信方式的特点是什么?第16页/共37页4.4.异步串行通信异步串行通信一帧数据的一帧数据的格式及通信速率的计算。格式及通信速率的计算。起始位起始位停止位停止位一帧一帧奇偶校奇偶校验验位位数据位数据位(低位低位)高位高位)5.5.为为实现通信,收发双方一帧数据的格式和通信实现通信,收发双方一帧数据的格式和通信速
13、率速率要保持一致。要保持一致。例:例:异步通信一帧数据格式中,按照发送的次序,先传送异步通信一帧数据格式中,按照发送的次序,先传送_,紧接着是数据紧接着是数据_位,数据位后依次为位,数据位后依次为_,_。信号采用负逻辑。信号采用负逻辑。“1”=3V 15V,“0”=3V 15V第17页/共37页二、二、82508250芯片芯片 82508250内部寄存器的功能。内部寄存器的功能。三三82508250的编程的编程(1 1)82508250的初始化编程。的初始化编程。(2 2)82508250的应用编程的应用编程 串行通信程序设计包括硬件连接和软件编程。串行通信程序设计包括硬件连接和软件编程。第1
14、8页/共37页8250初始化步骤初始化步骤80H线路控制寄存器,使除数寄存器访问位线路控制寄存器,使除数寄存器访问位=1根根据据波波特特率率计计算算出出除除数数高高/低低8位位除除数数寄寄存存器器高高/低低8位,确定通信速率位,确定通信速率D7=0的命令字的命令字线路控制寄存器:有线路控制寄存器:有2个目的个目的定义一帧数据格式定义一帧数据格式使使除除数数寄寄存存器器访访问问位位=0,从从而而使使后后继继的的对对合合用端口的访问只读写非除数寄存器用端口的访问只读写非除数寄存器第19页/共37页设置中断允许命令字设置中断允许命令字查询方式,则中断允许命令字查询方式,则中断允许命令字=0,禁止中断
15、,禁止中断中断方式,使中断允许命令字相应位置中断方式,使中断允许命令字相应位置1设置设置MODEM控制寄存器控制寄存器中断方式:中断方式:D3=1,允许,允许8250送出中断请求送出中断请求查询方式:查询方式:D3=0内环方式:内环方式:D4=1正常通信:正常通信:D4=0使用联络线:使用联络线:D1、D0位置位置1第20页/共37页8250查询方式下接收和发送程序的编程查询方式下接收和发送程序的编程在发送数据前,读通信线状态寄存器在发送数据前,读通信线状态寄存器(状态口状态口)获取发获取发送保持或移位寄存器送保持或移位寄存器(数据口数据口)是否空闲;在接收数据前,是否空闲;在接收数据前,读通
16、信线状态寄存器读通信线状态寄存器(状态口状态口)获取接收缓冲寄存器获取接收缓冲寄存器(数据数据口口)是否已经收到是否已经收到1帧数据。帧数据。第21页/共37页A A、B B两两台台PCPC机机利利用用主主串串口口进进行行点点-点点单单工工通通信信(不不用用联联络络线线),发发送送采采用用查查询询方方式式,接接收收采采用用中中断断方方式式。一一帧帧字字符符包包含含7 7个个数数据据位位,1 1个个停停止止位位,1 1个个校校验验位位,通通信信速速率率为为48004800波特(分频系数为波特(分频系数为0018H0018H)。)。(1 1)下图是)下图是A A、B B两机的两机的RSRS232C
17、232C接口示意图,根据题意完成连接口示意图,根据题意完成连线(不可有多余连线)。线(不可有多余连线)。2345620234562077第22页/共37页(2 2)下下图图是是从从PCPC机机的的RS-232CRS-232C接接口口引引脚脚观观察察到到的的波波形形,所所传传送送字字符符的的1616进进制制ASCIIASCII码码是是_;该该帧帧数数据据采采用用的的奇奇偶偶校校验验方方式式是是_校验;传送该帧数据需要的时间是校验;传送该帧数据需要的时间是_。-12V传送方向传送方向+12V第23页/共37页(3)用用对对端端口口直直接接编编程程的的方方法法为为接接收收方方编编写写8250初初始始
18、化化程序段。程序段。I8250 PROC I8250 PROC MOV DX,3FBH MOV DX,3FBH MOV AL,80H MOV AL,80H OUT DX,AL ;OUT DX,AL ;寻址位置寻址位置1 1 MOV DX,3F9H MOV DX,3F9H MOV AL,00H MOV AL,00H OUT DX,AL ;OUT DX,AL ;写除数高写除数高8 8位位 MOV DX,3F8H MOV DX,3F8H MOV AL,18H MOV AL,18H OUT DX,AL ;OUT DX,AL ;写除数低写除数低8 8位位 第24页/共37页 MOV DX,3FBH MO
19、V DX,3FBH MOV AL,0AH MOV AL,0AH OUT DX,AL ;OUT DX,AL ;无校验传送无校验传送,8,8位数据位数据 MOV DX,3F9HMOV DX,3F9H MOV AL,01H MOV AL,01H OUT DX,AL OUT DX,AL MOV DX,3FCH MOV DX,3FCH MOV AL,08H MOV AL,08H OUT DX,AL OUT DX,AL RET RETI8250 ENDPI8250 ENDP第25页/共37页第十章并行第十章并行I/OI/O接口接口一、一、8255A定时器定时器/计数器计数器(1)内部结构、端口地址以及与系
20、统总线的连接)内部结构、端口地址以及与系统总线的连接(2)8255A三种工作方式(方式三种工作方式(方式0方式方式2)的工作)的工作特点和特点和I/O过程过程A口可工作在方式0、1、2B口可工作在方式0、1C口可工作在方式0工作方式工作方式适用于端口适用于端口方式方式0:基本型入:基本型入/出出A口、口、B口、口、C口口方式方式1:选通型入:选通型入/出出A口、口、B口口方式方式2:双向传输:双向传输A口口十二第26页/共37页二、二、8255初始化编程初始化编程十三工作在方式工作在方式0时:方式选择命令字时:方式选择命令字控制口控制口工作在方式工作在方式1、2时:时:a)方式选择命令字方式选
21、择命令字控制口控制口b)允许中断(或禁止中断)的命令字允许中断(或禁止中断)的命令字控制口控制口(3 3)在方式)在方式1 1中中C C口哪几个引脚作为信号联络线,各信号口哪几个引脚作为信号联络线,各信号联络线的含义。联络线的含义。例:例:82558255的数据口中,的数据口中,_口可工作在双向方式。口可工作在双向方式。例:例:8255A8255A的的B B口初始化定义为选通型(方式口初始化定义为选通型(方式1 1)输入,对)输入,对8255A8255A采用查询方式,采用查询方式,必须先查询必须先查询_;若采用中断方式,必须先置;若采用中断方式,必须先置PCPC_为为1 1,并且利用并且利用_
22、作为中断请求信号线。作为中断请求信号线。第27页/共37页a.如果数据口(如果数据口(A,BA,B或或C)C)工作在方式工作在方式0 0,直接采用直接采用IN/OUTIN/OUT指令对其进行读写。指令对其进行读写。b.b.如果数据口如果数据口(A(A或或B)B)工作在方式工作在方式1 1,如果采用查询方式,且如果采用查询方式,且 A A或或B B口定义为输入口口定义为输入口,先用先用ININ指令读入指令读入C C口的内容,查询其中的口的内容,查询其中的IBF=1IBF=1时时,表示表示CPUCPU可可以继续用以继续用ININ指令从指令从A A或或B B口读入外设送来的数据。口读入外设送来的数据
23、。如果采用查询方式,且如果采用查询方式,且 A A或或B B口定义为输出口口定义为输出口,先用先用ININ指令读入指令读入C C口的内容,查询口的内容,查询OBF=1 OBF=1 时时,表示表示CPUCPU可以用可以用OUTOUT指令向指令向A A或或B B口写数据以送给外设。口写数据以送给外设。第28页/共37页系系统统机机外外扩扩一一片片8255A8255A及及相相应应电电路路如如下下图图所所示示,外外扩扩8255A8255A的的端端口口地地址址为为200H203H,200H203H,现现利利用用系系统统机机的的日日时时钟钟外外扩扩1CH1CH型型中中断断,实实现现每每隔隔1s1s使使八八
24、个个发发光光二二极极管管同同时时闪闪烁烁一一次次,主主机机键键盘盘有有按按键键按按下下时时结结束束,返回返回DOSDOS操作系统。根据要求完成相关内容。操作系统。根据要求完成相关内容。PA7PA0D70DB70WRRDCSA1A0A1A0IOWIOR200H203HLED7LED1LED0+5V八个八个同向同向驱动器驱动器8255A第29页/共37页(1 1)从图可以分析出,)从图可以分析出,A A口工作在方式口工作在方式 0 0 的输的输 出出 (入(入/出)。出)。(2 2)假假设设8255A8255A的的A A口口工工作作在在方方式式1 1的的查查询询输输出出方方式式,编编写写8255A
25、8255A的的初始化子程序初始化子程序I8255I8255。I8255A PROCI8255A PROC MOV DX,203H MOV DX,203H MOV AL,10100000B MOV AL,10100000B OUT DX,AL ;OUT DX,AL ;写入工作方式字写入工作方式字 MOV AL,00001100BMOV AL,00001100B OUT DX,AL OUT DX,AL RET RETI8255 ENDPI8255 ENDP(3 3)编写子程序)编写子程序WRITEWRITE完成中断向量的置换。完成中断向量的置换。第30页/共37页(3 3)编写子程序)编写子程序W
26、RITEWRITE完成中断向量的置换。完成中断向量的置换。WRITE1C PROC ;WRITE1C PROC ;写入用户写入用户1CH1CH型中断向量型中断向量 PUSH DSPUSH DS MOV AX,CODE MOV AX,CODE MOV DS,AX MOV DS,AX MOV DX,OFFSET SERVICE MOV DX,OFFSET SERVICE MOV AX,251CH MOV AX,251CH INT 21H INT 21H POP DSPOP DS RET RETWRITE1C ENDPWRITE1C ENDP第31页/共37页一、一、8254定时器定时器/计数器计数
27、器(1 1)掌掌握握82548254定定时时器器/计计数数器器的的基基本本结结构构(三三个个1616位位计计数数器器、控制寄存器)和计数器的外部引脚功能(控制寄存器)和计数器的外部引脚功能(GATE,CLK,OUT)GATE,CLK,OUT)。例:例:82548254计数器电路中计数器电路中,GATE=1 GATE=1表示表示_。(2 2)82548254有有6 6种工作方式(方式种工作方式(方式0 0 方式方式5 5)重点:方式重点:方式2 2、方式、方式3 3(包括计数过程、波形、周期和启动方式)(包括计数过程、波形、周期和启动方式)方式方式2 2、3 3初值自动重装,其余四种方式没有初值
28、自动重装功能初值自动重装,其余四种方式没有初值自动重装功能。第十一章可编程定时器第十一章可编程定时器/计数器计数器第32页/共37页例例:设设82548254计计数数器器1 1工工作作于于方方式式3 3,输输入入时时钟钟为为1000Hz1000Hz,计计数数初初值值为为10H10H,且且采采用用二二进进制制计计数数方方式式,则则一一个个周周期期内内计计数数器器1 1输输出出信信号号的的高高电平和低电平分别为电平和低电平分别为 _和和_ ms _ ms。(3 3)掌握)掌握82548254在微型计算机系统中的应用在微型计算机系统中的应用 (外扩(外扩82548254和和PCPC机系统中机系统中8
29、2548254)例:例:8254的三个计数器在的三个计数器在PC系列中是如何应用的?系列中是如何应用的?(4(4)82548254初始化编程初始化编程 向控制寄存器写入方式选择命令字。向控制寄存器写入方式选择命令字。目的目的:选择一个计数器选择一个计数器,并确定其工作方式和并确定其工作方式和计数值(或计数值(或计数初值)的读计数初值)的读/写顺序。写顺序。向选择的计数器写入计数初值向选择的计数器写入计数初值(计数初值计数初值=Tout/Tclk)第33页/共37页例:设例:设PC PC 系统机外扩了一片系统机外扩了一片8254 8254 及相应的实验电路。及相应的实验电路。(1)根据由门电路构
30、成的译码电路,分析出该片根据由门电路构成的译码电路,分析出该片8254 8254 的的四个端口地址。其中控制口的地址是四个端口地址。其中控制口的地址是_213H_213H_。(2)2)设设CLK0 CLK0 已接至已接至8MHz 8MHz 时钟,为了能从时钟,为了能从OUT0 OUT0 输出输出4KHz 4KHz 的方波,编写了的方波,编写了82548254初始化程序,其中假设初始化程序,其中假设0 0 号定时计号定时计数器工作在二进制方式。数器工作在二进制方式。第34页/共37页I8254PROCMOVDX,213HMOVAL,00110110BOUTDX,ALMOVDX,210HMOVAX,2000OUTDX,ALMOVAL,AHOUTDX,ALRETI8254ENDP第35页/共37页掌握作业,实验掌握作业,实验第36页/共37页感谢您的观看!第37页/共37页