《武汉大学2013年微型计算机原理及接口技术总复习ppt课件.ppt》由会员分享,可在线阅读,更多相关《武汉大学2013年微型计算机原理及接口技术总复习ppt课件.ppt(45页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、微机接口考试复习要点万显荣2013.10.30希望同学们:1)按照我上课的讲义,把教材通读一遍;2)按照复习要点,抓住重点授课内容和课后习题;3)一定要动手写程序,光看懂还不行;4)程序一定要加注释;5)不要抱侥幸心理,考试只是一种手段;6)认真复习,考出好成绩题型:题型:1)单选 10题 20 2)多选5题,203)综合题 4题,60概念复习要点 微机系统硬件由那几部分组成? 8086外围基本特性,地址线多少根?数据线多少根?寻址空间是多少?分段与分体的基本概念? 8086CPU内部基本结构?EU和BIU的基本功能?概念题 各类寄存器的功能(段寄存器,指针和变址寄存器等),标志FLAGS 物
2、理地址和逻辑地址的计算及概念 I/0接口访问与存储器访问指令的区别 熟悉各种寻址方式,重点掌握有些寻址方式的注意事项。 8086堆栈的特点 存储器位扩展和长度扩展的计算 存储容量的计算 CPU与外设直接的三种数据传送方式,各种传输方式的优缺点? I/O接口电路的主要功能(端口) 8253主要工作方式的区别 中断的分类,及类型码 中断向量表地址的计算. 中断执行过程 INT n概念题概念复习要点 堆栈的基本概念?堆栈是如何操作的,即SP指针随PUSH和POP指令如何变? 最小模式的系统配置图,掌握8282、74LS273、74LS373的作用? 熟悉各种寻址方式,重点掌握有些寻址方式的注意事项。
3、输入接口电路和输出接口电路应具备什么样功能?掌握简单输入和输出接口电路芯片的使用? I/0端口的编址方式与存储器的编制方式异同? 总线类型概念复习要点 PC总线地址译码时主要用到哪些控制信号?若给定确定地址,如何画出I/O接口译码电路,注意控制信号的使用。 中断向量表的概念,中断向量号的获取 中断的执行有哪几步?执行后SP,flags,CS,IP寄存器内容的变化,类似第7章第10题课后作业概念复习要点 掌握常用伪指令及完整汇编程序的程序结构,会画程序流程图。能写简单的子程序调用,如乘法、除法、代码转换等子程序,当然要包括主程序的代码段、数据段。 串行通信波特率,波特率因子,起止异步通信数据格式
4、,8251的接口线定义 存储器分类 RS232串行通信协议接口的电气标准 常用ADC0809和DAC0832转换的基本原理及工作方式与流程。(8255+0809)综合题应用复习要点 读程序,画流程图,学会写一个完整的程序。(读懂程序设计部分上课将的几个例子) 8253多种工作模式的组合使用 初始化及控制程序 8253与8255的联合使用 包括写地址,初始化程序,控制程序综合题应用复习要点一 存储器扩展 给定芯片及要扩展的容量和具体地址范围,采用74138译码器,画出存储器扩展图。 或者给出连线图,要求地址范围同时写一些存储器数据块传输的程序CPU 与与ROM、RAM的的混合混合连接连接根据系统
5、存储器设计的寻址范围要求,完成存储器与根据系统存储器设计的寻址范围要求,完成存储器与CPU总线连接。总线连接。例:用例:用27128一片,建立一片,建立00000H03FFFH的的16K内存区内存区 用用 6264一片,一片, 建立建立08000H09FFFH的的 8K内存区内存区 AB 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 00000H 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 003FFFH 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 108000H 0 0 0
6、0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 009FFFH 0 0 0 0 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 12712862646264地址线地址线13根根系统片系统片间译码间译码27128地址线地址线14根根存储器片内译码存储器片内译码A0A12D0D7CEWEOE 6264A0A13D0D7CEPGMOE 27128ABCE1E2E3Y0Y1Y2Y3Y4Y5Y6Y774LS138A0A13D0D7A13A14A15WRRDA16A19或或VCCVCC与与综合题复习要点二 8255方式0的应用,包括开关输入、LED或数码管显示输出,如上课时讲的
7、七段数码管例子,LED的循环控制 要会画硬件连线图,重点是译码逻辑连接,高低电平连接,注意共阴极和共阳极数码管的区别 会构造7段数码管的显示代码表 会写8255初始化及相关控制程序8255A作为开关作为开关K0K3及七段及七段LED显示器接口。要求开关设置显示器接口。要求开关设置的二进制信息,由的二进制信息,由PC0PC3输入,经程序转换为对应的七段输入,经程序转换为对应的七段LED显显示器的字形代码后,由示器的字形代码后,由PA口输出显示。口输出显示。8255APA7PA0驱动器驱动器+5V5VK0K1K2K3PC3PC2PC1PC0D7D0RD WR A1 A2 A B C G2A G2B
8、 G1 Y0 Y1 Y2 O O OD7D0 RD WR A0 A1 CSA0 A3A4A78086系统系统总线总线LS138接口电路接口电路M/IO&A5A6各端口地址为:E8HEEH8255A各端口地址确定各端口地址确定:由图可知: A7 A6 A5 A4 A3 A2 A1 A01 1 1 0 1 08255A方式选择控制字方式选择控制字:CSA B C G2A G2B G1 Y0 Y1 Y2 A0 A3A4A7LS138M/IO&A5A6按题意设置端口按题意设置端口A方式方式0输出输出,下下C口输入口输入.10000181Habcdefgep共阴极共阴极LED显示器的结构显示器的结构ab
9、cdefgep共阳极共阳极LED显示器的结构显示器的结构+5VabdcefgdpPA0PA1PA2PA3PA4PA5PA6PA78255DB7-DB0abcdefgep+5VD7 DpD6gD5fD4eD3dD2cD1bD0a代码代码01231 1 0 0 0 0 0 0 C0H 1 1 1 1 1 0 0 1 F9H1 0 1 0 0 1 0 0 A4H1 0 1 1 0 0 0 0 B0H软件译码法软件译码法( BCD码码七段显示代码七段显示代码 )abdcefgdpabdcefgdpabdcefgdpabdcefgdpabdcefgdp09 的七段显示代码的七段显示代码 : C0H,F9
10、H,A4H,B0H .abdcefgdpabdcefgdpD7 D6 D5 D4 D3 D2 D1 D0 dp g f e d c b a 0(C0H) 1 1 0 0 0 0 0 0abdcefgdpabdcefgdpabdcefgdpabdcefgdpabdcefgdpabdcefgdpabdcefgdpabdcefgdp9(90H) 1 0 0 1 0 0 0 01(F9H) 1 1 1 1 1 0 0 12(A4H) 1 0 1 0 0 1 0 03(B0H) 1 0 1 1 0 0 0 04(99H) 1 0 0 1 1 0 0 15(92H) 1 0 0 1 0 0 1 06(82
11、H) 1 0 0 0 0 0 1 07(F8H) 1 1 1 1 1 0 0 08(80H) 1 0 0 0 0 0 0 009 的显示代码的显示代码 :C0H,F9H,A4H,B0H,99H,92H,82H, F8H,80H,90H8255A作为开关作为开关K0K3及七段及七段LED显示器接口。要求开关设置显示器接口。要求开关设置的二进制信息,由的二进制信息,由PC0PC3输入,经程序转换为对应的七段输入,经程序转换为对应的七段LED显显示器的字形代码后,由示器的字形代码后,由PA口输出显示。口输出显示。8255APA7PA0驱动器驱动器+5V5VK0K1K2K3PC3PC2PC1PC0D7
12、D0RD WR A1 A2 A B C G2A G2B G1 Y0 Y1 Y2 O O OD7D0 RD WR A0 A1 CSA0 A3A4A78086系统系统总线总线LS138接口电路接口电路M/IO&A5A6编程编程:MOV DX, 0E8H;指向端口指向端口A OUT DX, AL ;输出字形码显示输出字形码显示HLTMOV DX,0EEH ;设置设置8255A工作方式工作方式 MOV AL,81H OUT DX,ALMOV DX,0ECH ;指向端口指向端口C,读开关状态读开关状态 IN AL,DXAND AL,0FHLEA BX,TABLE ;显示代码表首地址送显示代码表首地址送B
13、XXLAT ;查表,取出相应的字形码送查表,取出相应的字形码送AL09 的显示代码的显示代码 :C0H,F9H,A4H,B0H,99H,92H,82H,F8H,80H,90H建立显示代码表:建立显示代码表:DATA SEGMENTTABLE DB C0H,F9H,A4H,B0H,99H,92H,82H,F8H,80H,90HDATA ENDS 代码段的主要程序段代码段的主要程序段:XLAT:表转换指令:表转换指令 ( P74 )格式:格式: XLAT功能功能: 将一个字节从一种代码转换成另一种代码将一个字节从一种代码转换成另一种代码BCD码码显示代码方法:显示代码方法: 建显示代码表,并将表首
14、址装入建显示代码表,并将表首址装入BX中;中; 将将BCD码装入码装入AL,其值应等于表首址与待查代码地址的位移量,其值应等于表首址与待查代码地址的位移量 执行执行XLAT,根据位移量从表中查得对应代码,并送入,根据位移量从表中查得对应代码,并送入AL中。中。 其功能其功能 相当于相当于 (BX+AL) AL8255A作为开关作为开关K0K3及七段及七段LED显示器接口。要求开关设显示器接口。要求开关设置的二进制信息,由置的二进制信息,由PC0PC3输入,经程序转换为对应的七段输入,经程序转换为对应的七段LED显示器的字形代码后,由显示器的字形代码后,由PA口输出显示。口输出显示。8255AP
15、A7PA0驱动器驱动器+5V5VK0K1K2K3PC3PC2PC1PC0D7D0RD WR A1 A2 A B C G2A G2B G1 Y0 Y1 Y2 O O OD7D0 RD WR A0 A1 CSA0 A3A4A78086系统系统总线总线LS138接口电路接口电路M/IO&A5A6A4A3A0A5M/IOA7A6A9A8G1G2BG2ACBAY4A2A1RDWRD7D0GATE0OUT0CLK0CLK1CLK2GATE1OUT1GATE2OUT2A1A0RDWRD7D0CS1MHz方波5V2KHz方波1ms的负脉冲单脉冲8086CPU74LS138例例3:已知:已知: 8253的的基地
16、址为基地址为310H,时钟频率为,时钟频率为1MHz。要求:要求: (1)通道)通道0输出频率为输出频率为2KHz的方波;的方波;(2)通道通道1产生宽度为产生宽度为1ms的负脉冲;的负脉冲;(3)通道)通道2以硬件方式触发,输出单脉冲时常为以硬件方式触发,输出单脉冲时常为26。综合题复习要点三 8253的应用 扬声器发生控制,输出一定频率的信号 LED显示的控制,使灯闪烁,比如0.1s或1s或2s闪一下 注意: (1)各计数器及控制字的控制地址区分(2)在单个计数器不够时,注意计数器级联使用;(3)计数器初值初始化时注意二进制与BCD计算格式;(4)门控信号及计数时钟的要求分析:分析:通道通
17、道0工作于方式工作于方式3,控制端,控制端GATE0接接+5V,时间常数,时间常数N0=1MHz/2KHz=500;通道通道1工作于方式工作于方式1,由控制端,由控制端GATE1的正跳变触发,的正跳变触发,OUT1的宽度为时常,单次触发,时间常数的宽度为时常,单次触发,时间常数N1=1ms/0.001ms=1000;通道通道2工作于方式工作于方式5,由控制端,由控制端GATE2的正跳变触发,可的正跳变触发,可连续触发,时间常数连续触发,时间常数N2=26。例例3:已知:已知: 8253的的基地址为基地址为310H,时钟频率为,时钟频率为1MHz。要求:要求: (1)通道)通道0:输出频率为:输
18、出频率为2KHz的方波;的方波;(2)通道通道1:产生宽度为:产生宽度为1ms的负脉冲;的负脉冲;(3)通道)通道2:硬件方式触发输出单脉冲,其时间常数为:硬件方式触发输出单脉冲,其时间常数为26。工作于方式工作于方式 3 ,时常为,时常为500工作于方式工作于方式 1 ,时常为,时常为1000方式方式 5 ,时常,时常26424OUTGATE=1CLKWRCW=16LSB=4242420例例3:已知:已知: 8253的的基地址为基地址为310H,时钟频率为,时钟频率为1MHz。要求:要求: (1)通道)通道0:输出频率为:输出频率为2KHz的方波;的方波;(2)通道通道1:产生宽度为:产生宽
19、度为1ms的负脉冲;的负脉冲;(3)通道)通道2:硬件方式触发输出单脉冲,其时间常数为:硬件方式触发输出单脉冲,其时间常数为26。工作于方式工作于方式 3 ,时常为,时常为500工作于方式工作于方式 1 ,时常为,时常为1000方式方式 5 ,时常,时常26;通道;通道0初始化程序初始化程序MOV DX,316HMOV AL, 00110111BOUT DX,ALMOV DX,310H MOV AL,00HOUT DX,ALMOV AL,05HOUT DX,AL;通道;通道1初始化程序初始化程序MOV DX,316HMOV AL, 01110011BOUT DX,ALMOV DX,312H M
20、OV AL,00HOUT DX,ALMOV AL,10HOUT DX,AL;通道;通道2初始化程序初始化程序MOV DX,316HMOV AL, 10011011BOUT DX,ALMOV DX,314H MOV AL,26HOUT DX,AL 例如:已知例如:已知 8253 在某系统中的端口地址基地址为在某系统中的端口地址基地址为220H (如图如图),编程使编程使8253的的OUT1端输出频率为端输出频率为1kHz的方波信号,并通过蜂鸣器的方波信号,并通过蜂鸣器的发声来验证。要求完成正确的电路连接并编制对应的程序段。的发声来验证。要求完成正确的电路连接并编制对应的程序段。解:通道解:通道1
21、控制字控制字 01 11 011 1 - 77H 通道通道1计数初值计数初值 n = 1 MHz / 1kHz = 1000 例如:已知例如:已知 8253 在某系统中的端口地址为在某系统中的端口地址为220H226H(如图如图),编程使编程使8253的的OUT1端输出频率为端输出频率为1kHz的方波信号,并通过蜂鸣器的方波信号,并通过蜂鸣器的发声来验证。要求完成正确的电路连接并编制对应的程序段。的发声来验证。要求完成正确的电路连接并编制对应的程序段。解:通道解:通道1控制字控制字 01 11 011 1 - 77H 通道通道1计数初值计数初值 n = 1 MHz / 1kHz = 1000解
22、:计数器解:计数器 1 控制字控制字 01 11 011 0 - 76H 计数器计数器 1计数初值计数初值 n = 1 MHz / 1kHz = 1000MOVAL, 76H ;设置控制字;设置控制字01110110MOVDX, 226H ;设置控制寄存器地址;设置控制寄存器地址OUTDX,AL ;写入控制寄存器;写入控制寄存器MOVDX, 222H ;设置计数器;设置计数器 1 地址地址MOVAL, 00 ;设置计数值;设置计数值OUTDX, AL;先写低;先写低8位至计数器位至计数器 1MOVAL, 10HOUTDX, AL;再写高;再写高8位至计数器位至计数器 1综合题复习要点4 825
23、5和8253的综合应用 参见第九章习题9 ) 8255的口地址的口地址为为80H83H , 8253口地址为口地址为84H87H 。 若若A口接口接8个开关个开关K7K0 ,B口接口接8个指示灯个指示灯LED7LED0。若。若某开关合上时,对应的某开关合上时,对应的LED点亮,断开时对应的点亮,断开时对应的LED熄灭,求熄灭,求每隔每隔0.5秒检测一次开关状态,并在开关上显示出来,试画出硬秒检测一次开关状态,并在开关上显示出来,试画出硬件连线图,件连线图,编写相应的控制程序。编写相应的控制程序。 若把若把A口上的开关去掉,要求接在端口口上的开关去掉,要求接在端口B上的指示灯轮流熄灭,上的指示灯
24、轮流熄灭,每只灯熄灭每只灯熄灭 1 秒钟,请秒钟,请编写相应的控制程序。编写相应的控制程序。第九章习题第九章习题分析:分析:8255的口地址的口地址为为80H83H , 8253口地址为口地址为84H87H 。说明该接口电路是基于说明该接口电路是基于PC总线的接口电路总线的接口电路D7D0A B C G2A G2B Y0 Y1 Y2 OOOA2 A3A4LS138G1A0A1IORIOWPC总线总线A5 A6A780H83H84H87HD7D0A B C G2A G2B Y0 Y1 Y2 OOOA2 A3A4LS138G1A0A1A0 A1RD WRD7D0CS1MHzOUT0 CLK0GAT
25、E0GATE1+5V8253A8255APA7PA0K7PB7PB6PB0D7D0 RD WR A0 A1PA6K6K0LED7LED6LED0+5VCSIORIOWPC总线总线A5 A6A7OUT1 CLK1PC 0 若若A口接口接8个开关个开关K7K0 ,B口接口接8个指示灯个指示灯LED7LED0。若。若某开关合上时,对应的某开关合上时,对应的LED点亮,点亮,断开时对应的断开时对应的LED熄灭,求熄灭,求每隔每隔0.5秒检测一次开关状态秒检测一次开关状态,并在开,并在开关上显示出来,试画出硬件连线关上显示出来,试画出硬件连线图,图,编写相应的控制程序。编写相应的控制程序。 分析:分析:
26、 8253计数器计数器0、计数器、计数器1均工均工作于方式作于方式3 ,编程使,编程使OUT1输出周输出周期为期为0.5秒的方波;秒的方波; 8255 端口端口A为输入,端口为输入,端口B为为输出,端口输出,端口C为输入;三个口均为输入;三个口均工作于方式工作于方式 0 , 编程查询编程查询PC0的状态,每隔的状态,每隔0.5秒检测一次秒检测一次A口开关状态,并口开关状态,并在开关合上时,点亮对应的在开关合上时,点亮对应的LED。0.5SA0 A1RD WRD7D0CS1MHzOUT0 CLK0GATE0GATE1+5V8253A8255APA7PA0K7PB7PB6PB0D7D0 RD WR
27、 A0 A1PA6K6K0LED7LED6LED0+5VCSOUT1 CLK1PC 080H83H84H87H0.5SMOV AL, 00110111BOUT 87H,ALMOV AL, 00HOUT 84H,ALMOV AL, 10HOUT 84H,ALMOV AL, 1 0011 001 BOUT 83H,AL;8253初始化初始化MOV AL, 01110111BOUT 87H,ALMOV AL, 00HOUT 85H,ALMOV AL, 05HOUT 85H,AL;8255初始化初始化A0 A1RD WRD7D0CS1MHzOUT0 CLK0GATE0GATE1+5V8253A8255
28、APA7PA0K7PB7PB6PB0D7D0 RD WR A0 A1PA6K6K0LED7LED6LED0+5VCSOUT1 CLK1PC 080H83H84H87H0.5STST0: IN AL,82H TEST AL, 01H JNZ TST0 ;查低退出查低退出 ;检测;检测 PC0A0 A1RD WRD7D0CS1MHzOUT0 CLK0GATE0GATE1+5V8253A8255APA7PA0K7PB7PB6PB0D7D0 RD WR A0 A1PA6K6K0LED7LED6LED0+5VCSOUT1 CLK1PC 080H83H84H87HTST1: IN AL,82H TEST
29、AL, 01H JZ TST1 ;查高退出;查高退出 ;检测;检测 开关并控制开关并控制LED IN AL,80H NOT AL OUT 81H,AL JMP TST0 0.5SA0 A1RD WRD7D0CS2MHzOUT0 CLK0GATE0GATE1+5V8253A8255APA7PA0K7PB7PB6PB0D7D0 RD WR A0 A1PA6K6K0LED7LED6LED0+5VCSOUT1 CLK1PC 080H83H84H87H 若把若把A口上的开关去掉,要口上的开关去掉,要求接在端口求接在端口B上的指示灯轮流上的指示灯轮流熄灭,每只灯熄灭熄灭,每只灯熄灭 1 秒钟,请秒钟,请编
30、写相应的控制程序。编写相应的控制程序。MOV AL, 00110111BOUT 87H,AL MOV AL, 00H OUT 84H,AL MOV AL, 10H OUT 84H,AL;8253初始化初始化MOV AL, 01110111BOUT 87H,AL MOV AL, 00H OUT 85H,AL MOV AL, 10H OUT 85H,ALMOV AL, 1 0001 001 BOUT 83H,ALMOV AH,1111 1110 B;8255初始化初始化0.5SA0 A1RD WRD7D0CS2MHzOUT0 CLK0GATE0GATE1+5V8253A8255APA7PA0K7P
31、B7PB6PB0D7D0 RD WR A0 A1PA6K6K0LED7LED6LED0+5VCSOUT1 CLK1PC 080H83H84H87H 若把若把A口上的开关去掉,要口上的开关去掉,要求接在端口求接在端口B上的指示灯轮流上的指示灯轮流熄灭,每只灯熄灭熄灭,每只灯熄灭 1 秒钟,请秒钟,请编写相应的控制程序。编写相应的控制程序。TST0: IN AL,82H TEST AL, 01H JNZ TET0 ;检测;检测 PC0TST1: IN AL,82H TEST AL, 01H JZ TET1 MOV AL,AH OUT 82H,ALROL AH, 1 JMP TET0 ;控制;控制L
32、ED轮流熄灭轮流熄灭 MOV AL, 1 0001 011 B OUT 83H,AL MOV AH,1111 1110 B0.5SD7D0A B C G2A G2B Y0 Y1 Y2 OOOA2 A3A4LS138G1A0A1A0 A1RD WRD7D0CS1MHzOUT0 CLK0GATE0GATE1+5V8253A8255APA7PA0K7PB7PB6PB0D7D0 RD WR A0 A1PA6K6K0LED7LED6LED0+5VCSIORIOWPC总线总线A5 A6A7OUT1 CLK1PC 0综合题复习要点5 ADC0809查询方式使用 掌握启动信号的产生方法 掌握查询转换结束一定要
33、分两步用用8255接口的接口的ADC0809电路原理图电路原理图(P403-图图11.20)例:试编程实现将例:试编程实现将IN1端的模拟电压信号经端的模拟电压信号经ADC 0809转换为数字量后,存放到段基地址为转换为数字量后,存放到段基地址为BL中。中。设设8255A的端口地址为的端口地址为320H323H。MOV DX,320H IN AL,DX MOV BL, AL ; 8255初始化初始化 MOV AL,98H MOV DX,323H OUT DX,AL MOV DX,322H MOV AL,01H OUT DX,AL ;启动;启动A/D转换转换MOV AL,00000lllB OU
34、T DX,AL NOP MOV AL,00000110B OUT DX,AL MOV DX,322HCONV:IN AL,DX TEST AL,80H JNZ CONV EOC: IN AL,DX TEST AL,80H JZ EOC 例:例:试编程实现:将试编程实现:将8路模拟电压信号经路模拟电压信号经ADC 0809 转换为转换为8个数字量后,存放到段基地址为个数字量后,存放到段基地址为ES,偏移地,偏移地址为址为DATA_ BUF开始的存储单元中。设开始的存储单元中。设8255A的端口的端口地址为地址为320H323H,已完成,已完成8255A的初始化编程。的初始化编程。8255初始化初
35、始化(略略)MOV CX,8MOV BL,00HLEA DI,DATA_BUFE_IN: MOV DX,322H MOV AL,BL OUT DX,AL MOV DX,323H MOV AL,00000lllB OUT DX,AL NOP MOV AL,00000110B OUT DX,AL MOV DX,322HCONV:IN AL,DX TEST AL,80H JNZ CONV EOC:IN AL,DX TEST AL,80H JZ EOC MOV DX,320H IN AL,DX STOS DATA_BUF INC BL LOOP E_IN 综合题复习要点6 8251和8253的综合应用 参见讲义最后一个例子