1 / 28
文档名称:

合肥工业大学电气与自动化专业实验中心 80X86微机原理及接口技术实验教程 思考题部分参考答案(5).pdf

格式:pdf   大小:2,313KB   页数:28页
下载后只包含 1 个 PDF 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

合肥工业大学电气与自动化专业实验中心 80X86微机原理及接口技术实验教程 思考题部分参考答案(5).pdf

上传人:1781111**** 2024/5/11 文件大小:2.26 MB

下载得到文件列表

合肥工业大学电气与自动化专业实验中心 80X86微机原理及接口技术实验教程 思考题部分参考答案(5).pdf

相关文档

文档介绍

文档介绍:该【合肥工业大学电气与自动化专业实验中心 80X86微机原理及接口技术实验教程 思考题部分参考答案(5) 】是由【1781111****】上传分享,文档一共【28】页,该文档可以免费在线阅读,需要了解更多关于【合肥工业大学电气与自动化专业实验中心 80X86微机原理及接口技术实验教程 思考题部分参考答案(5) 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您编辑和打印。:..(2).。。,TD-PITE实验装臵一套,示波器一台。,将0000H~000FH共16个数写入SRAM的从0000H起始的一段空间中,然后通过系统命令查看该存储空间,检测写入数据是否正确。:..A12227WEA7326A13静态是由MOS管组成的触发器电路,每个触发器可以存A6425A8A5524A9A4623A11放1位信息。只要不掉电,所储存的信息就不会丢失。因此,A376225622OEA2821A10静态RAM工作稳定,不要外加刷新电路,使用方便。,SRAM芯片的集成度不会太高,目前较常用的有6116(2K×8位),6264(8K×8位)和62256(32K×8位)。本实验平台上选用的是62256,两片组成32K×16位的形式,共64K字节。。本系统采用准32位CPU,具有16位外部数据总线,即D0、D1、…、D15,地址总线为BHE#(#表示该信号低电平有效)、BLE#、A1、A2、…、A20。存储器分为奇体和偶体,分别由字节允许线BHE#和BLE#选通。存储器中,从偶地址开始存放的字称为规则字,从奇地址开始存放的字称为非规则字。处理器访问规则字只需要一个时钟周期,BHE#和BLE#同时有效,从而同时选通存储器奇体和偶体。处理器访问非规则字却需要两个时钟周期,第一个时钟周期BHE#有效,访问奇字节;第二个时钟周期BLE#有效,访问偶字节。处理器访问字节只需要一个时钟周期,视其存放单元为奇或偶,而BHE#或BLE#有效,从而选通奇体或偶体。。CS#CS#WR#WR#DATADATAD15:D8D7:(左)和非规则字(右)简单时序图实验单元电路图D011D0D011D8A010A0D112D1A010A0D112D9913A1913A18A1D215D2A28A1D215D10A2A2D3D3A2D3D11A37A3D416D4A37A3D416D12617A4617A45A4D518D5A55A4D518D13A5A5D6D6A5D6D14A64A6D719D7A64A6D719D15A73A7A73A725A825A824A822A924A822RDA9A9OERDA9OEA1021A10WE27WRA1021A10WE27WE23A1123A112A1120A122A1120A12A12CSA12CSA1326A13A1326A1314GNDVSSVSS62256(1)62256(2)1474LS32BLEBHE3625CS74LS32:..B4A1~A8A0~A7A8~A15A8~A15D0~D7D0~)SEGMENTSTACKDW32DUP(?)SSTACKENDSCODESEGMENTSTARTPROCFARASSUMECS:CODEMOVAX,8000H;存储器扩展空间段地址MOVDS,AXAA0:MOVSI,0000H;数据首地址A0..MOVCX,0010H...MOVAX,0000HXA15A14AA1:MOV[SI],AXXD0D0INCAX......INCSIXD7D7统XD8D8INCSI总单....LOOPAA1线..元XD15D15MOVAX,4C00HINT21H;程序终止BLE#BLE#BHE#BHE#STARTENDPCODEENDSMWR#WRMRD#(注:本章实验选择16位寄存器),按图接线。,经编译、链接无误后装入系统。,待程序运行停止。:D8000:0000回车,即可看到存储器中的数据,应为0000、0001、0002、…、:..16个字。,按非规则字写存储器,观察实验结果。SSTACKSEGMENTSTACKDW32DUP(?)SSTACKENDSCODESEGMENTSTARTPROCFARASSUMECS:CODEMOVAX,8001H;存储器扩展空间段地址MOVDS,AXAA0:MOVSI,0000H;数据首地址MOVCX,0010HMOVAX,0000HAA1:MOV[SI],AXINCAXINCSIINCSILOOPAA1MOVAX,4C00HINT21H;,按字节方式写存储器,观察实验现象。SEGMENTSTACKDB32DUP(?)SSTACKENDSCODESEGMENTSTARTPROCFARASSUMECS:CODEMOVAX,8000H;MOVDS,AXAA0:MOVSI,0000H;数据首地址MOVCX,0010HMOVAX,0000HAA1:MOV[SI],ALINCAXINCSILOOPAA1MOVAX,4C00HINT21H;程序终止STARTENDPCODEENDSENDSTART:..7.。SEGMENTSTACKDW32DUP(?)SSTACKENDSCODESEGMENTSTARTPROCFARASSUMECS:CODEMOVAX,8000H;MOVDS,AXAA0:MOVSI,0000H;数据首地址MOVCX,0010HMOVAX,0000HAA1:MOV[SI],AXINCAXINCSIINCSIJMPAA1;。。,TD-PITE实验装臵一套。:..8255的A口为输入,B口为输出,完成拨动开关到数据灯的数据传输。要求只要开关拨动,数据灯的显示就发生相应改变。。编写程序,使8255的A口和B口均为输出,数据灯D7~D0由左向右,每次仅亮一个灯,循环显示,D15~D8与D7~D0正相反,由右向左,每次仅点亮一个灯,循环显示。(8位)PA7-PA0PA3140PA4控制PA2239PA5部件PA1338PA6PA0437PA7I/ORD536WRC口PC7-PC4CS635RESET数据(高4位)GND734D0总线A1833D1缓冲8位内总线A0932D2I/OPC710825531D3器C口PC61130D4PC3-PC0PC51229D5(低4位)PC41328D6读/写PC01427D7WR控制I/OPC21625PB7A1控制B口PC31724PB6A0部件PB7-PB0PB01823PB5(8位)。CPU和接口之间的数据传送总是并行的,即可以同时传递8位、16位或32位等。8255可编程外围接口芯片是Intel公司生产的通用并行I/O接口芯片,它具有A、B、C三个并行接口,用+5V单电源供电,能在以下三种方式下工作:方式0--基本输入/输出方式、方式1--选通输入/输出方式、方式2--双向选通工作方式。,8255工作方式控制字和C口按位臵位/。D7D6D5D4D3D2D1D0D7D6D5D4D3D2D1D0C口低4位不用置位复位0输出0复位1输入1置位B口0输出1输入C口的位选择方式选择位D3D2D10方式000001方式110012010C口高4位30110输出41001输入5101A口61100输出71111输入0方式选择00方式001方式11x方式21(a)工作方式控制字(b)C口按位置位/::..,端口B工作在方式0并作为输出口。用一组开关信号接入端口A,端口B输出线接至一组数据灯上,然后通过对8255芯片编程来实现输入输出功能。具体实验步骤如下述:(1),按图连接实验线路图。(2)编写实验程序,经编译、连接无误后装入系统。(3)运行程序,改变拨动开关,同时观察LED显示,验证程序功能。XD0D0........开..PA0K0关XD7D7..........及统PA7K7总XA1A0XA2A1PB0D0显线..示....单IOW#WRPB7D7元IOR#~7开关:..1实验程序清单()SEGMENTSTACKDW32DUP(?)SSTACKENDSCODESEGMENTASSUMECS:CODESTART:MOVDX,276HMOVAL,90HOUTDX,ALAA1:MOVDX,270HINAL,DXCALLDELAYMOVDX,272HOUTDX,ALJMPAA1DELAY:PUSHCXMOVCX,0F00HAA2:,数据灯D7~D0由左向右,每次仅亮一个灯,循环显示,D15~D8与D7~D0正相反,由右向左,每次仅点亮一个灯,循环显示。。实验步骤如下所述:(1)。(2)编写实验程序,经编译、链接无误后装入系统。(3)运行程序,观察LED灯的显示,验证程序功能。(4)自己改变流水灯的方式,编写程序。XD0............及..统PA7D7总XA1A0XA2A1PB0D8显线..示....单IOW#WRPB7D15元IOR#~7改成灯2实验程序清单()SSTACKSEGMENTSTACKDW32DUP(?):..ENDSCODESEGMENTASSUMECS:CODESTART:MOVDX,276HMOVAL,80HOUTDX,ALMOVBX,8001HAA1:MOVDX,270HMOVAL,BHOUTDX,ALRORBH,1MOVDX,272HMOVAL,BLOUTDX,ALROLBL,1CALLDELAYCALLDELAYJMPAA1DELAY:PUSHCXMOVCX,05000HAA2:PUSHAXPOPAXLOOPAA2POPCXRETCODEENDSENDSTART1:执行程序后,使发光二极管闪动。SSTACKSEGMENTSTACKDW32DUP(?)SSTACKENDSCODESEGMENTASSUMECS:CODESTART:MOVDX,276HMOVAL,80HOUTDX,ALMOVBX,00000HAA1:MOVDX,270HMOVAL,BHOUTDX,ALNOTBHMOVDX,272HMOVAL,BLOUTDX,ALNOTBLCALLDELAYCALLDELAYJMPAA1DELAY:PUSHCXMOVCX,05000HAA2:PUSHAXPOPAXLOOPAA2POPCXRET:..ENDSENDSTART2SSTACKSEGMENTSTACKDW32DUP(?)SSTACKENDSCODESEGMENTASSUMECS:CODESTART:MOVDX,276HMOVAL,80HOUTDX,ALMOVBX,0FF00HAA1:MOVDX,270HMOVAL,BHOUTDX,ALNOTBHMOVDX,272HMOVAL,BLOUTDX,ALNOTBLCALLDELAYCALLDELAYJMPAA1DELAY:PUSHCXMOVCX,05000HAA2:PUSHAXPOPAXLOOPAA2POPCXRETCODEENDSENDSTART3:利用中断完成实验一。4:利用方式一发中断请求信号。方波实验一、实验目的与要求了解8253的内部结构、工作原理;了解8253与8086的接口逻辑;熟悉8253的控制寄存器和初始化编程方法,熟悉8253的6种工作模式。二、实验设备:..PC机一台1、编写程序:使用8253的计数器0和计数器1实现对输入时钟频率的两级分频,得到一个周期为1秒的方波,用此方波控制蜂鸣器,发出报警信号,也可以将输入脚接到逻辑笔上来检验程序是否正确。2、连接线路,验证8253的功能,熟悉它的使用方法。四、实验原理图五、实验步骤1、连线说明:C4区:CS、A0、A1——A3区:CS2、A0、A1C4区:CLK0——B2区:2MC4区:OUT0——C4区:CLK1C4区:OUT1——F8区:Ctrl(蜂鸣器)C4区:GATE——2、测试实验结果:蜂鸣器发出时有时无的声音;用逻辑笔测试蜂鸣器的输入端口,红绿灯交替点亮。六、:_ADDRMOVAL,35HOUTDX,AL;计数器T0设置在模式2状态,BCD码计数MOVDX,T0_ADDRMOVAL,00HOUTDX,ALMOVAL,10H:..OUTDX,AL;CLK0/1000_ADDRMOVAL,77HOUTDX,AL;T1为模式3状态,输出方波,BCD码计数MOVDX,T1_ADDRMOVAL,00HOUTDX,ALMOVAL,10HOUTDX,AL;CLK1/1000JMP$;OUT1输出1S的方波ENDSTART1、8253还有其它五种工作方式,其它工作模式下,硬件如何设计?程序如何编写?2、使用8253,编写一个实时钟程序。.:_ADDRMOVAL,00110101BOUTDX,AL;计数器T0,方式2,BCD码计数MOVDX,T0_ADDRMOVAL,00HOUTDX,ALMOVAL,10HOUTDX,AL;CLK0/1000_ADDRMOVAL,01110111BOUTDX,AL;计数器T1为模式3状态,输出方波,BCD码计数MOVDX,T1_ADDRMOVAL,00HOUTDX,ALMOVAL,20HOUTDX,AL;CLK1/1000;OUT1接到LED灯_ADDRMOVAL,10010101BOUTDX,AL;计数器T2为模式2状态,输出方波,BCD码计数:..MOVDX,T2_ADDRMOVAL,60HOUTDX,AL;CLK1/60;OUT260S的方波ENDSTART;OUT2接到蜂鸣器)8259A中断控制器实验一、实验目的与要求了解8259A的内部结构、工作原理;了解8259A与8086的接口逻辑;掌握对8259A的初始化编程方法,了解8086是如何响应中断、退出中断的;体会8259A的中断优先级处理方法。复****本节实验内容,可尝试自行编写程序,做好实验准备工作,填写实验报告。二、实验设备SUN系列实验仪一套、PC机一台三、实验内容1、编制程序:拨动单脉冲开关,“”送给8259A的IR0,“”送给8259A的IR7,F5区的最左边数码管对应IR7中断:没有触发中断或中断处理完毕,显示“0”,正在响应中断,显示“1”;F5区的最右边数码管对应IR0中断:没有触发中断或中断处理完毕,显示“0”,正在响应中断,显示“1”,如果IR0中断IR7,显示“2”四、实验原理图五、实验步骤1、连线说明:B3区:CS、A0——A3区:CS3、A0:..INT、INTA——A3区:INTR、INTAB3区:IR07——B2区:单脉冲D3区:CS、A0、A1——A3区:CS1、A0、A1D3区:JP20、B、C——F4D3区:PC0、PC1——F4白线2、(?)CounterDB?:MOVAX,***@DATAMOVDS,AXMOVES,AXPUSHDSCALLWriIntverCLIPOPDS;初始化主片8255MOVDX,0273HMOVAL,80HOUTDX,AL;初始化主片8259MOVDX,IO8259_0MOVAL,13HOUTDX,AL;ICW1MOVDX,IO8259_1MOVAL,08HOUTDX,AL;ICW2MOVAL,09HOUTDX,AL;ICW4MOVAL,0;OCW1OUTDX,AL:..MOVCX,0STIAA1:NOPJMPAA1EARPUSHESMOVAX,0MOVES,AXMOVDI,20HLEAAX,MIR7STOSWMOVAX,CSSTOSWPOPESRETWriIntverENDPMIR7:STIADDCX,1MOVDX,0270HMOVAL,CLOUTDX,ALMOVDX,0271HMOVAL,CHOUTDX,ALMOVAL,20HMOVDX,IO8259_0OUTDX,AL;IRETENDSTART3、拨动单脉冲开关,“”送给8259A的IR0,“”送给8259A的IR7,G5区的最左边数码管对应IR7中断:没有触发中断或中断处理完毕,显示“0”,正在响应中断,显示“1”;G5区的最右边数码管对应IR0中断:没有触发中断或中断处理完毕,显示“0”,正在响应中断,显示“1”,如果IR0中断IR7,显示“2”():..18259A收到上升沿,到8086响应中断,试画这个过程的时序图。。。。,TD-PITE实验装臵一套。(ICU),该单元包含有两个级联中断控制器,一个为主控制器,一个为从控制器。该中断控制单元就功能而言与工业上标准的82C59A是一致的,操作方法也相同。从片的INT连接到主片的IR2信号上构成两片8259的级联。在TD-PITE实验系统中,将主控制器的IR6、IR7以及从控制器的IR1开放出来供实验使用,主片8259的IR4供系统串口使用。::..INTRIR2INT(内核)IR4串口CAS2:0IR6MIR6IR7MIR7从片8259AINTIR1SIR1CAS2:。(主)0020H初始化命令字1:ICW1(从)00A0H决定中断请求信号为电平触发还是边沿触发。(只写)ICW2(主)0021H初始化命令字2:ICW2(从)00A1H包含了8259的基址中断向量号,基址中断向量是IR0的向量号,基址加1就是(只写)IR1的向量号,依此类推。ICW3(主)0021H初始化命令字3:(只写)用于识别从8259设备连接到主控制器的IR信号,内部的从8259连接到主8259的IR2信号上。ICW3(从)00A1H初始化命令字3:(只写)表明内部从控制器级联到主片的IR2信号上。ICW4(主)0021H初始化命令字4:ICW4(从)00A1H选择特殊全嵌套或全嵌套模式,使能中断自动结束方式。(只写)OCW1(主)0021H操作命令字1:OCW1(从)00A1H中断屏蔽操作寄存器,可屏蔽相应的中断信号。(读/写)OCW2(主)0020H操作命令字2:OCW2(从)00A0H改变中断优先级和发送中断结束命令。(只写)OCW3(主)0020H操作命令字3:OCW3(从)00A0H使能特殊屏蔽方式,设臵中断查询方式,允许读出中断请求寄存器和当前中断服(只写)务寄存器。IRR(主)0020H中断请求:IRR(从)00A0H指出挂起的中断请求。(只读)ISR(主)0020H当前中断服务:ISR(从)00A0H指出当前正在被服务的中断请求。(只读)POLL(主)0020H查询状态字:0021H表明连接到8259上的设备是否需要服务,如果有中断请求,该字表明当前优先POLL(从)00A0H级最高的中断请求。(只读)00A1H初始化命令字1寄存器(ICW1)。:..70ICW1001LS0010:1:(ICW2)。(ICW3)说明,,。70ICW3(主片)S7S6S5S4S3S2S10S7-S3:0表示无8259被连接到主片上1表示有8259被连接到主片上S2:0表示内部从片没被使用1表示内部从片被级联到主片的IR2上S1:(从片)(ICW4)。70ICW4000SNFM00AEOI1SNFM:0=选择全嵌套模式1=选择特殊全嵌套模式,仅主8259能够工作在特殊全嵌套模式AEOI:0=禁止中断自动结束1=使能中断自动结束,(OCW1)。70OCW1M7M6M5M4M3M2M1M0M7--M0:0=对应IR信号上的中断请求得到允许1=对应IR信号上的中断请求被屏蔽注意:设置屏蔽位不影响各自中断挂起位:..操作命令字1寄存器操作命令字2寄存器(OCW2)。0RSLEOI00L2L1L0OCW2RSLEOI000取消优先级自动循环*001一般的中断结束命令010无操作011特殊的中断结束命令**100中断优先级自动循环*101在一般中断结束方式中优先级循环110优先级特殊循环方式**111在特殊中断结束方式中优先级循环***当8259工作在中断自动结束方式下时,这些情况可以改变优先级结构。**在这些情况下优先级由L2:L0指定。L2、L1、L0:在给出特殊的中断结束命令时,L2、L1、L0指出了具体要清除当前中断服务寄存器的哪一位;当给出特殊的优先级循环方式命令时,L2、L1、L0指出了循环开始时哪个中断的优先级最低。(OCW3)。70OCW30ESMMSMM01PRRRISESMMSMM00无影响01无影响10禁止特殊屏蔽模式11使能特殊屏蔽模式P:(POLL)。70POLLINT----L2L1L0INT:0=无请求1=连接在8259上的设备请求服务L2、L1、L0:当INT为1时,这些位指出了需要服务的最高优先级的IR;当INT为0时这些位不确定。,首先必须进行初始化。一般先使用CLI指令将所有的可屏蔽中断禁止,然后写入初始化命令字。8259有一个状态机控制对寄存器的访问,不正确的初始化顺序会造成异常初始化。在初始化主片8259时,写入初始化命令字的顺序是:ICW1、ICW2、ICW3、然后是ICW4,初始化从片8259的顺序与初始化主片8259的顺序是相同的。:..已被初始化,且4号中断源(IR4)提供给与PC联机的串口通信使用,其它中断源被屏蔽。中断矢量地址与中断号之间的关系如下表所示:主片中断序号01234567功能调用08H09H0AH0BH0CH0DH0EH0FH矢量地址20H~23H24H~27H28H~2BH2CH~2FH30H~33H34H~37H38H~3BH3CH~3FH说明未开放未开放未开放未开放串口未开放可用可用从片中断序号01234567功能调用30H31H32H33H34H35H36H37H矢量地址C0H~C3HC4H~C7HC8H~H~CFHD0H~D3HD4H~D7HD8H~DBHDCH~,单次脉冲输出与主片单次8259的IR7相连,每按动一次单次脉冲,产生一次外统脉总KK1+冲部中断,在显示屏上输出一个字符?7?。()SSTACKSEGMENTSTACKDW32DUP(?)SSTACKENDSCODESEGMENTASSUMECS:CODESTART:PUSHDSMOVAX,0000HMOVDS,AXMOVAX,OFFSETMIR7;取中断入口地址MOVSI,003CH;中断矢量地址MOV[SI],AX;填IRQ7的偏移矢量MOVAX,CS;段地址MOVSI,003EHMOV[SI],AX;填IRQ7的段地址矢量CLIPOPDS;初始化主片8259MOVAL,11HOUT20H,AL;ICW1MOVAL,08HOUT21H,AL;ICW2MOVAL,04HOUT21H,AL;ICW3MOVAL,01HOUT21H,AL;ICW4MOVAL,6FH;OCW1OUT21H,ALSTIAA1:NOPJMPAA1MIR7:STICALLDELAYMOVAX,0137HINT10H;显示字符7MOVAX,0120H:Thedocumentwascreate