EL-8086-III实验指导书1第一部分:系统介绍一、系统概述1、微处理器:80862、时钟频率:6MHz3、可提供的对8086的基本实验1)、简单I/O扩展实验2)、存储器扩展实验3)、8255LED数码管显示实验4)、8259可编程中断控制器实验三、系统资源分配本系统采用可编程逻辑器件(CPLD)EPM7032/ATF1502做地址的译码工作,可通过芯片的JTAG接口与PC机相连,对芯片进行编程。此单元也分两部分:一部分为系统CPLD,完成系统器件如监控程序存储器、用户程序存储器、数据存储器、系统显示控制器、系统串行通讯控制器等的地址译码功能,同时也由部分地址单元经译码后输出(插孔CS0---CS6)给用户使用,他们的地址固定,用户不可改变。具体的对应关系见表1-2。另一部分为用户CPLD,它完全对用户开放,用户可在一定的地址范围内,进行译码,输出为插孔LCS0----LCS7,用户可用的地址范围如下所示,注意:用户的地址不能与系统相冲突,否则将导致错误。地址分配6264系统RAM,地址范围0~03FFF,奇地址有效6264系统RAM,地址范围0~03FFF,偶地址有效2764系统ROM,地址范围FFFFF~FC000,奇地址有效27256系统ROM,地址范围FFFFF~FC000,偶地址有效CS0片选信号,地址04A0~04AF偶地址有效CS1片选信号,地址04B0~04BF偶地址有效CS2片选信号,地址04C0~04CF偶地址有效CS3片选信号,地址04D0~04DF偶地址有效CS4片选信号,地址04E0~04EF偶地址有效CS5片选信号,地址04F0~04FF偶地址有效EL-8086-III实验指导书2CS6片选信号,地址F000~FFFF偶地址有效8250片选地址:0480~048F,偶地址有效8279片选地址:0490~049F,偶地址有效硬件实验说明所有实验程序的起始地址为01100H,CS=0100H,IP=0100H,代码段、数据段、堆栈段在同一个64K的地址空间中。第二部分:系统原理与使用一、硬件介绍(一)、整机介绍1、微机教学实验系统结构微机教学实验系统由电源、系统板、可扩展的实验模板、微机串口通讯线、JTAG通讯线及通用连接线组成。系统板的结构简图见下图。EL-8086-III实验指导书3(二)、整机测试当系统上电后,数码管显示,TX发光二极管闪烁,若不能与上位机(PC)连接则大约3秒后数码管显示P_,若与上位机建立连接则显示C_。此时系统监控单元(27C64、27C256)、通讯单元(8250、MAX232)、显示单元(8279,75451,74LS244)、系统总线、系统CPLD正常。若异常则按以下步骤进行排除:1、按复位按扭使系统复位,测试各芯片是否复位;2、断电检查8086及上述单元电路芯片是否正确且接触良好;3、上电用示波器观察芯片片选及数据总线信号是否正常。4、若复位后TX发光二极管闪烁数码管显示不正常,则显示单元有问题,检查8279相关电路;若复位后数码管显示正常,TX发光二极管不闪烁,则检查8250晶振信号,及其相关电路。二、软件使用(一)、WINDOWS版软件使用8086集成开发环境是为INTEL8086系列程序开发的多窗口程序级开发调试软件,它的友好的WINDOWS的界面使用户的使用简单快捷,极大的提高了程序的开发效率。一.软件的运行环境及安装启动1.运行环境要求:PC系列微机:486以上CPU内存:640K显卡:VGA硬盘:2M以上2.系统安装:EL-8086-III实验指导书4将标有LGDS的光盘放入光驱,查找86WIN95的软件包,运行SETUP可执行文件,开始安装8086的WINDOWS版工具软件。单击“下一步”,继续8086WINDOWS版软件的安装;选择“YES”继续软件安装。EL-8086-III实验指导书5输入使用者的信息后,单击“下一步”,继续8086WINDOWS版软件的安装;点击“浏览”,选择安装路径,或者使用默认路径,单击“下一步”,继续安装软件。EL-8086-III实验指导书6选择各种安装模式,默认“典型”,继续安装。EL-8086-III实验指导书7二.软件使用指南1.软件启动软件安装结束后,在“开始”菜单“程序”中打开“8086实验系统”,即可进入8086的WINDOWS版软件。打开软件后,先选择通讯口为串口1或串口2,确认后即可联机调试,也可以选择“取消”,不联机,直接进入软件。EL-8086-III实验指导书82.编辑程序打开软件后,主界面如下。可选择“打开”菜单,打开现有的程序或者选择“新建”,新编辑一个程序。(书写程序时注意:在org100h的下一行,必须写标号start,否则,不能通过连接)3.编译调试编辑程序结束后,选择“运行”菜单“连接装置”,选择通讯串口,确认后联机。然后可以进行编译,链接,在“运行”菜单中可选择多种调试手段进行调试运行。同时可在“窗口”菜单下选择打开多个观察窗口,如寄存器窗口,内存窗口,外存窗口,通过EL-8086-III实验指导书9修改存储器地址可查看不同地址区的内容,也可以对其进行修改。附:内部FLAG寄存器位定义D15D14D13D12D11D10D9D8D7D6D5D4D3D2D1D0RRRROFDFIFTFSFZFRAFRPFRCFR:未定义,暂保留。CF:进位标志。PF:奇偶标志。AF:辅助进位标志。ZF:零标志。SF:符号标志。TF:陷阱标志。IF:中断标志。DF:方向标志。OF:溢出标志。第三部分:基本实验实验一简单I/O口扩展实验一、实验目的1、熟悉74LS273,74LS244的应用接口方法。2、掌握用锁存器、三态门扩展简单并行输入、输出口的方法。二、实验内容逻辑电平开关的状态输入74LS244,然后通过74LS273锁存输出,利用LED显示电路作为输出的状态显示。三、实验原理介绍本实验用到两部分电路:开关量输入输出电路,简单I/O口扩展电路。四、实验步骤1、实验接线:(表示相互连接)EL-8086-III实验指导书10CS0CS244CS1CS273平推开关的输出K1~K8IN0~IN7(对应连接)O0~O7法光二极管的输入LED1~LED82、编辑程序,单步运行,调试程序3、调试通过后,全速运行程序,观看实验结果。4、编写实验报告。五、实验提示74LS244或74LS273的片选信号可以改变,例如连接CS2,此时应同时修改程序中相应的地址。六、实验结果程序全速运行后,逻辑电平开关的状态改变应能在LED上显示出来。例如:K2置于L位置,则对应的LED2应该点亮。七、程序框图(实验程序名:T244273.ASM)八、程序源代码清单assumecs:codecodesegmentpublicorg100hstart:movdx,04a0h;74LS244地址inal,dx;读输入开关量movdx,04b0h;74LS273地址outdx,al;输出至LEDjmpstartcodeendsendstartEL-8086-III实验指导书11实验二存储器读写实验一、实验目的1.掌握PC机外存扩展的方法。2.熟悉6264芯片的接口方法。3.掌握8086十六位数据存储的方法。二、实验内容向02000~020FFH单元的偶地址送入AAH,奇地址送入55H。三、实验原理介绍本实验用到存储器电路,见硬件说明。四、实验步骤1、实验接线本实验无需接线。2、编写调试程序3、运行实验程序,可采取单步、设置断点方式,打开内存窗口可看到内存区的变化。五、实验提示1、RAM区的地址为02000H,编程时可段地址设为01000H,则偏移地址为1000H。2、如果按字节进行存储,则AL为55H或AAH;如果按字进行存储,则AX应为55AAH。3、6264、62256等是计算机系统扩展中经常用到的随机存储器芯片(RAM),主要用作数据存储器扩展。本实验所进行的内存置数在程序中经常用到。计算机系统运行中会频繁地进行内存与外设或者内存与内存之间的数据传输,所以本实验虽然简单但对理解系统程序的运行很关键,望学习和实验时认真对待。六、实验结果在断点1处内存区02000H~020FFH单元为00H;在断点2处偶地址为AAH,奇地址为55H程序框图(实验程序名:RAM.ASM)EL-8086-III实验指导书12codesegmentassumecs:codeorg0100hstart:movax,0100hmovds,ax;数据段地址moves,axmovsi,1000h;偏移地址movcx,0100h;循环次数moval,0intram:mov[si],alincsiloopintrammovsi,1000h;设置断点处movcx,100hmovax,1122hfil:mov[si],ax;RAM区循环置数incsi;mov[si],ahincsiloopfilnop;设置断点处jmpstartcodeendsendstartEL-8086-III实验指导书13实验三8255并行口实验一、实验目的掌握8255A的编程原理。二、实验内容8255A的A口作为输入口,与逻辑电平开关相连。8255A的B口作为输出口,与发光二极管相连。编写程序,使得逻辑电平开关的变化在发光二极管上显示出来。三、实验原理介绍本实验用到两部分电路:开关量输入输出电路和8255可编程并口电路。四、实验步骤1、实验接线CS0CS8255PA0~PA7平推开关的输出K1~K8PB0~PB7发光二极管的输入LED1~LED82、编程并全速或单步运行。3、全速运行时拨动开关,观察发光二极管的变化。当开关某位置于L时,对应的发光二极管点亮,置于H时熄灭。五、实验提示8255A是比较常用的一种并行接口芯片,其特点在许多教科书中均有介绍。8255A有三个8位的输入输出端口,通常将A端口作为输入用,B端口作为输出用,C端口作为辅助控制用,本实验也是如此。实验中,8255A工作于基本输入输出方式(方式0)。六、实验结果程序全速运行后,逻辑电平开关的状态改变应能在LED上显示出来。例如:K2置于L位置,则对应的LED2应该点亮。七、程序框图(实验程序名:t8255.asm)EL-8086-III实验指导书14assumecs:codecodesegmentpublicorg100hstart:movdx,04a6h;控制寄存器地址movax,90h;设置为A口输入,B口输出outdx,axstart1:movdx,04a0h;A口地址xorax,axinax,dx;输入movdx,04a2h;B口地址outdx,ax;输出jmpstart1codeendsendstartEL-8086-III实验指导书15实验四8259中断控制器实验一、实验目的1、掌握8259A的工作原理。2、掌握编写中断服务程序方法。3、掌握初始化中断向量的方法。二、实验内容用单脉冲发生器作为中断源,在中断服务程序中,通过74LS273输出一个数据,以点亮或熄灭与中断源相对应位置的LED。三、实验原理介绍本实验用到三部分电路:单脉冲发生器电路、简单I/O口扩展电路和8259中断控制器电路。四、实验步骤1、实验接线CS0CS8259CS1CS273O0LED1P+IR0INTINTRINTAQINTA2、编译调试程序3、全速运行程序,按动单脉冲按键,观察LED的亮灭情况。五、实验提示1、8259的使用说明请详细阅读教科书。2、8086的中断系统是向量中断方式。内存中特定位置有一中断向量表,表内存有不同中断类型的中断向量(中断入口地址)。不同中断类型的中断向量在表内有对应的偏移地址,其计算方法是:中断类型*4。3、中断类型由8259通过数据总线送给8086,8086内部电路会将该类型值自动乘4,而后赋给指令指针,从而转向中断向量表的相应单元取得中断入口地址,之后就进入中断服务程序。请仔细研读8259的工作时序。4、中断类型的高5位由8259寄存器ICW2决定,低3位由中断源