tpc-h教师实验指导书.doc_第1页
tpc-h教师实验指导书.doc_第2页
tpc-h教师实验指导书.doc_第3页
tpc-h教师实验指导书.doc_第4页
tpc-h教师实验指导书.doc_第5页
免费预览已结束,剩余91页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

TPC-H通用微机接口实验系统教师用实验指导书清华同方教学仪器设备公司2002年11月目 录一、概述65二、安装66三、实验台结构:(见上页)621、I/O地址译码电路622、总线插孔623、时钟电路624、逻辑电平开关电路625、LED显示电路636、七段数码管显示电路637、单脉冲电路648、逻辑笔649、继电器及驱动电路6410、复位电路6411、接口集成电路6512、跳线开关(JP)6513、5V电源插针6514、通用集成电路插座6515、数字电路实验区6516、接线端子6517、50线总线插座信号安排6618、直流电源开关(K1)和存储器地址选择开关(K2)6619、使用外加直流电源注意事项:66四、接口实验部分:67实验一 I/O地址译码67实验二 简单并行接口68实验三 可编程定时器计数器71实验四、 可编程并行接口(一)73实验五 七段数码管75实验六 继电器控制78实验七 竞赛抢答器81实验八 交通灯控制实验83实验九 中断85实验十 可编程并行接口(二)88实验十一 数/模转换器91实验十二 模/数转换器94实验十三 数字录音机97实验十四 串行通讯101实验十五 传送104实验十六 集成电路测试107实验十七 电子琴110实验十八 8250串行通讯实验113实验十九 步进电机控制实验116实验二十 小直流电机转速控制实验120实验二十一 键盘显示控制器实验123实验二十二 存储器读写实验137一、概述八十年代以来,国内大中专院校很多专业都相继开设了“微机原理及应用”方面的课程,讲授内容主要是8位机(Z80),实验设备多采用TP801单板机。随着计算机技术的发展,讲授内容开始逐步转向16位或32位的PC系列微机,实验设备亦需更新,“TPC-H通用微机接口实验系统”是我公司继“TPC-1型十六位微机实验培训系统”的基础上,综合了各学校讲课及实验老师的意见之后推出的微机硬件实验教学设备的新产品。该仪器增加了实验系统的开放能力和灵活性。它不仅使一些典型的微机接口实验方便,而且对一些计算机硬件要求较高的专业提供了锻炼学生动手能力,发挥创造才能的平台。该系统主要有以下特点: 实验电路连接采用了国家专利、获奖产品“自锁紧”插座及导线,消除了连线接触不良的现象。 电路设计中增加了多项保护措施,可有效的避免由于学生实验时错接、错编程损坏主机或接口集成电路的现象。 接口实验增加了实用性、趣味性的项目,附加了使用C语言进行实验的参考程序。 实验台上增加了逻辑笔、通用IC插座等电路。可作为数字电路实验仪器使用,也可以用于学生毕业设计、实验数据的采集及科研开发。 该仪器于95年11月23日通过国家教委鉴定,鉴定意见认为: 该仪器设计方案合理,通用性强,实验方案新颖,实用性强,采用了“自锁紧”插座,消除了连线接触不良现象,附加了电路保护措施,提供了C语言进行接口实验的参考程序。该仪器技术水平处于国内先进水平,是一套值得推广的实验装置。 仪器硬件包括接口卡、实验台(箱)两部分组成,两者之间通过50线扁平电缆相连。 接口卡可以插入PC系列微机中任意一个扩展插槽,它的主要功能是将与实验有关的总线信号加以驱动后引到实验台上,同时引出信号还有与“中断”和“DMA”实验操作有关的信号及+5V、+12V、-12V电源。另外,卡上设有一个跳线开关(JP)用于选择中断请求信号:IRQ2、IRQ3、IRQ4、IRQ7中的一个作为中断请求信号。 实验台上设有I/O地址译码电路、总线插孔、接口实验常用集成电路、外围电路及通用IC插座等部分组成。外围电路包括逻辑电平开关电路、LED显示电路、时钟电路、单脉冲电路、逻辑笔、复位电路、七段数码管显示电路、基本门电路、继电器及步进电机、小直流电机的驱动电路。 使用说明书中介绍了22个微机接口实验。覆盖了大中专院校微机接口实验教学大纲中的内容。教师可以根据课时计划安排选作,也可以在此基础上重新设计新的实验项目。随机软盘中附有每个实验的汇编语言及C语言的参考程序。二、安装1、系统组成:(1)、硬件:接口卡一块;实验台(箱)一个;50线扁平电缆一根;自锁紧导线50根;集成电路芯片(8251、74LS273、74LS244)共3片。(2)、软件:软盘一张。(3)、资料:使用说明书一本。(4)、附件:话筒一个,测试表笔一只。(5)、可选附件:(a)实验盒一个(包括:步进电机一个、小直流电机一个、喇叭一个、指示灯一个)(b)TPC-H键盘显示控制器实验板一块。2、安装步骤:(1)关上PC机电源,打开微机主机箱。(2)检查接口卡上中断请求跳线开关是否已经连好(该卡在出厂时以将4、5短接选IRQ7作为中断申请信号)。接口卡的结构如图一。(3)将PC总线接口卡插在任意扩展槽中。(4)用34线扁平电缆线连接接口卡和实验台。图13、随机软盘上实验程序名表实验名称汇编语言源程序名C语言源程序名I/O地址译码实验YMQ.ASMYMQ.C简单并行接口E244.ASM E273.ASM E244.C E273.可编程定时器/计数器 E8253_1.ASM E8253_2.ASME8253_1.C E8253_2.C可编程并行接口(一)E8255.ASM E8255.C七段数码管LED1.ASM LED2.ASMLED1.C LED2.C继电器控制JDQ.ASMJDQ.C竞赛抢答器QDQ.ASMQDQ.C交通灯控制JTD.ASMJTD.C中断INT.ASMINT.C可编程并行接口(二)E8255_1I.ASM E8255_1O.ASM E8255_1I.C E8255_1O.C数/模转换器DA_1.ASM DA_2.ASMDA_1.C DA_2.C模/数转换器AD_1.ASM AD_2.ASMAD_1.C AD_2.C数字录音机LYJ.ASMLYJ.C串行通讯E8251.ASME8251.CDMA传送DMA_O.ASM DMA_I。ASMDMA_O.C DMA_I.C集成电路测试JC.ASMJC.C电子琴DZQ.ASMDZQ.C8250串行通信E8250.ASME8250.C步进电机控制BJDJ.ASMBJDJ.C小直流电机控制ZLDJ.ASMZLDJ.C8279键盘显示控制器JPXSH.ASMJPXSH.C存储器读写实验PCRAM.ASM三、实验台结构:(见上页)1、I/O地址译码电路 如图-3所示,这里选用PC机未用的地址空间:280H2BFH共分8条译码输出线:Y0Y7,其地址分别是280H287H;288H28FH;290H297H;298H29FH;2A0H2A7H;2A8H2AFH;2B0H2B7H;2B8H2BFH,8根译码输出线在实验台“I/O地址”处分别由“自锁紧”插孔引出,供实验选用。图 3 2、总线插孔 采用“自锁紧”插座在标有“总线”区引出数据总线D7D0;地址总线A9A0;读、写信号、;中断请求信号IRQ;DMA请求信号DRQ1;DMA响应信号、;及AEN信号,供学生搭试各种接口实验电路使用。3、时钟电路 如图-4所示,可以输出1MHZ、2MHZ两种信号,供A/D转换器、定时器/计数器、串行接口实验使用。4、逻辑电平开关电路如图-5所示,实验台右下方设有8个开关K7K0,开关拨到“1”位置时开关断开,输出高电平,向下打到“0”位置时开关接通输出低电平,电路中串接了保护电阻,使接口电路不直接同 5V、GND相连,可有效地防止学生因误操作、误编程损坏集成电路现象。图 4图5 图65、LED显示电路 如图-6所示,实验台上设有8个发光二极管及相关驱动电路(输入端L7L0),当输入信号为“1”时发光,为“0”时灭。6、七段数码管显示电路 如图-7所示,实验台上设有两个共阴极七段数码管及驱动电路,段码为同相驱动器,位码为反相驱动器,从段码与位码的驱动器输入端(段码输入端:a、b、c、d、e、f、g、dp,位码输入端:s1、s2)输入不同的代码即可显示不同数字或符号。图 77、单脉冲电路如图-8所示,采用RS触发器产生,实验者每按一次开关即可以从两个插座上分别输出一个正脉冲及负脉冲,供“中断”、“DMA”、“定时器/计数器”等实验使用。8、逻辑笔如图-9所示,当输入端Ui接高电平时红灯(D2)亮;接低电平时绿灯亮。 图 8 图 9 9、继电器及驱动电路如图-10所示,实验台上设有一个5V直流继电器及相应的驱动电路,当其开关量输入端输入数字量“1”时,继电器动作:常开触点闭合、常闭触点断开。通过相应的实验使学生了解开关量控制的一般原理。10、复位电路 如图-11所示,能在上电时,或按下复位开关S2后产生一个高电平的复位信号供8255、8251等接口芯片使用。 图10 图11 11、接口集成电路实验台上有微机原理硬件实验最常用接口电路芯片,包括:可编程定时器/计数器(8253)、可编程并行接口(8255)、数/模转换器(DAC0832)、模/数转换器(ADC0809),这里芯片与CPU相连的引线除片选信号外都已连好,与外界连接的关键引脚在芯片周围用“自锁紧”插座引出,供学生实验时使用。其中数/模转换器附有双极性输出,模/数转换器附有双极性输入插座。具体电路可见下面实验说明。12、跳线开关(JP)实验台上共有5个跳线开关,其中Ja、Jb、Jc在实验台的左上角,50线总线插座的左方。Ja用来选择用主机电源还是用外加电源的,当用主机电源时,应将JA上+5V、+12V、-12V三个短路片插好。用户若想使用外加电源,必须首先将JA上的三个短路片全部拔掉,才能将外接电源加入。JB和JC是用来选择实验类型的,I/O实验时JB、JC上的短路片都应插在标有“I/O”的位置。做存储器实验时,短路片应插在标有“NEM”的位置。做“DMA”实验时JB应插在“I/O”位置,JC应插在DMA位置。实验台出厂时短路片在I/O实验位置。实验台上另外两个跳线开关为JP2和JP3,在实验台的左下角,分别用于模/数转换器模拟量输入极性选择,将JP2的1、2短路时IN2(J2)可输入双极性电压(5V5V),2、3短路为单极性(05V),JP3用于选择IN1的输入极性,方法与JP2相同。13、5V电源插针为了减少主机5V电源的负担和各主要芯片的安全,在主要接口芯片的左上角都有相应的电源连接插针(标记为5V),当实验需要该芯片时,用短路块短接插针即可接通5V电源。对用不到的芯片可将短路片拔掉,以确保芯片安全。14、通用集成电路插座实验台上设有4个通用数字集成电路插座,其中插座A、C为14P,插座B为16P,插座D可以插入一个2440脚的集成电路芯片或者2个820脚的集成电路芯片。每个插座引脚附近都有相应的“自锁紧”插座,部分实验(简单并行接口、DMA、串行通讯、集成电路测试)电路是利用这些插座搭试的。要求高的学校可以让学生自己搭试更多的实验,以提高学生动手能力。利用这些插座可以开发新的实验,也可以进行数字电路实验,及学生毕业设计。自锁紧插座插入导线时,应稍加力并延顺时针方向旋转一下,才能保证接触良好,拔出时,应先逆时针方向旋转待插头完全松开后,再向上拔出。15、数字电路实验区实验台上有一块数字电路实验区,没有三种基本门电路(与、或、非)及D触发器,供学生在接口实验或数字电路实验时直接使用。16、接线端子如图-2所示实验台上设有7个接线端子,标号为J1-J7。J1用于外接喇叭,J2是一个立体声插孔用于外接话筒。J4为继电器触点,其中1接+5V,2、3为常闭触点,3、4为常开触点。5接地线。J5用于接步进电机。J6用于接小直流电机。J7是一个20芯通用插座,用于外接用户开发的实验板,本系统中8279键盘显示实验板就从此插头引出。J7各引脚信号安排如下: 19 17 15 13 11 9 7 5 3 1D0D1D2D3D4D5D6D7IRQCSRES+5V+5VIORIOWA0A1CLKGNDGND 20 18 16 14 12 10 8 6 4 217、50线总线插座信号安排18、直流电源开关(K1)和存储器地址选择开关(K2)实验台上有一直流电源开关(K1),在实验台的左上角。在主机电源打开后,再打开实验台上开关K1,实验台才会加电。另外,实验台上还有一个四位拨动开关K2,在实验台8255芯片的右方。K2是在做存储器实验时选择存储器地址使用的。具体使用方法参看实验二十二,存储器读写实验。19、使用外加直流电源注意事项:1用户可以使用主机电源,也可以使用外加直流电源,主机电源通过总线扩展卡引入到实验台的50芯插座上,再通过短路子JA接到电源开关上。该实验台出厂时是按使用主机电源连接的。2用户若想使用外加电源。必须首先将JA上的三个短路片全部拔掉,将主机电源断开,才能将外部电源接入。3用户电源通过外接电源插座J0接到实验台上。插入以前应仔细检查电源插头上各路电源与J0上标注的是否相同,如不相同应修改电源插头,不然会损坏实验台。4外接电源插入以前,应检查各路电源输出是否正确,如不正确应修改或更换电源。5以上各项都正常后,打开电源即可进行实验。四、接口实验部分: 几点约定 1。实验电路介绍中凡不加“利用通用插座”说明的均为实验台上已固定电路。 2。实验电路连线在图中均用虚线表示,实线为已连好电路。实验一 I/O地址译码一、实验目的 掌握I/O地址译码电路的工作原理。二、实验原理和内容 实验电路如图11所示,其中74LS74为D触发器,可直接使用实验台上数字电路实验区的D触发器,74LS138为地址译码器。译码输出端Y0Y7在实验台上“I/O地址“输出端引出,每个输出端包含8个地址,Y0:280H287H,Y1:288H28FH, 当CPU执行I/ O指令且地址在280H2BFH范围内,译码器选中,必有一根译码线输出负脉冲。 例如:执行下面两条指令 MOV DX,2A0H OUT DX,AL(或IN AL,DX) Y4输出一个负脉冲,执行下面两条指令 MOV DX,2A8H OUT DX,AL(或IN AL,DX) Y5输出一 个负脉冲。 图11利用这个负脉冲控制L7闪烁发光(亮、灭、亮、灭、),时间间隔通过软件延时实现。三、编程提示 1、实验电路中D触发器CLK端输入脉冲时,上升沿使Q端输出高电平L7发光,CD端加低电平L7灭。2、参考程序:code segmentassume cs: codestart: mov dx,2a0h out dx,al call delay ;调延时子程序 mov dx,2a8h out dx,al call delay ;调延时子程序 mov ah,1 int 16h je start ;无键按下转start mov ah,4ch int 21hdelay proc near ;延时子程序 mov bx,5lll: mov cx,0ll: loop ll dec bx jne lll retdelay endpcode endsend start实验二 简单并行接口一、实验目的 掌握简单并行接口的工作原理及使用方法。二、实验内容 1、按下面图12简单并行输出接口电路图连接线路(74LS273插通用插座,74LS32用实验台上的“或门”)。74LS273为八D触发器,8个D输入端分别接数据总线D0D7,8个Q输出端接LED显示电路L0L7。 2、编程从键盘输入一个字符或数字,将其ASC码通过这个输出接口输出,根据8个发光二极管发光情况验证正确性。 3、按下面图13简单并行输入接口电路图连接电路(74LS244插通用插座,74LS32用实验台上的“或门”)。74LS244为八缓冲器,8个数据输入端分别接逻辑电平开关输出K0K7,8个数据输出端分别接数据总线D0D7。 4、用逻辑电平开关预置某个字母的ASC码,编程输入这个ASC码,并将其对应字母在屏幕上显示出来。 图12 图13 三、编程提示 1、上述并行输出接口的地址为2A8H,并行输入接口的地址为2A0H,通过上述并行接口电路输出数据需要3条指令: MOV AL, 数据 MOV DX,2A8H OUT DX,AL 通过上述并行接口输入数据需要2条指令: MOV DX,2ADH IN AL,DX 2、参考流程图 图14 参考程序1 图15 参考程序2 3、参考程序1:code segment assume cs:codestart: mov ah,2 ;回车符 mov dl,0dh int 21h mov ah,1 ;等待键盘输入 int 21h cmp al,27 ;判断是否为ESC键 je exit ;若是则退出 mov dx,2a8h ;若不是,从2A8H输出其ASCII码 out dx,al jmp start ;转startexit: mov ah,4ch ;返回DOS int 21hcode ends end 4、参考程序2:code segment assume cs:codestart: mov dx,2a0h ;从2A0H输入一数据 in al,dx mov dl,al ;将所读数据保存在DL中 mov ah,02 ;显示ASCII码为DL的字符 int 21h mov dl,0dh ;显示回车符 int 21h mov dl,0ah ;显示换行符 int 21h mov ah,1 ;是否有键按下 int 16h je start ;若无,则转startexit: mov ah,4ch ;返回DOS int 21hcode ends end 实验三 可编程定时器计数器(8253)一、实验目的 掌握8253的基本工作原理和编程方法。二、实验内容1 按图16虚线连接电路,将计数器0设置为方式0,计数器初值为N(N0FH),用手动逐个输入单脉冲,编程使计数值在屏幕上显示,并同时用逻辑笔观察OUT0电平变化(当输入N+1个脉冲后OUT0变高电平)。 图16 2 按图17连接电图,将计数器0、计数器1分别设置为方式3,计数初值设为1000,用逻辑笔观察OUT1输出电平的变化(频率1HZ)。图17三、编程提示 1、8253控制寄存器地址283H计数器0地址280H计数器1地址281HCLK0连接时钟1MHZ。 2、参考流程图(见图18、19): 图18 图19 3、参考程序1: (程序名:8253_1.ASM)code segment assume cs:codestart: mov al,10h ;设置8253计数器0为工作方式0,二进制计数 mov dx,283h out dx,al mov dx,280h ;送计数初值为0FH mov al,0fhlll: in al,dx ;读计数器计数值 call disp ;调显示子程序 mov ah,1 ;判断是否有键按下 out dx,al int 16h je lll ;若没有则转lll mov ah,4ch ;退出 int 21hdisp proc near ;显示子程序 push dx and al,0fh ;首先取低四位 mov dl,al cmp dl,9 ;判断是否=9 jle num ;若是则为0-9,ASCII码加30H add dl,7 ;否则为A-F,ASCII码加37Hnum: add dl,30h mov ah,02h ;显示 int 21h mov dl,0dh ;回车 int 21h mov dl,0ah ;换行 int 21h pop dx ret ;子程序返回disp endpcode ends end4、参考程序2: (程序名:E8253_2.ASM)code segment assume cs:codestart:mov dx,283h ;向8253写控制字 mov al,36h ;使0计数器为工作方式3 out dx,al mov ax,1000 ;写入计数初值1000 mov dx,280h out dx,al ;先写入低字节 mov al,ah out dx,al ;后写入高字节 mov dx,283h mov al,76h ;设8253计数器1工作方式3 out dx,al mov ax,1000 ;写入计数初值1000 mov dx,281h out dx,al ;先写低字节 mov al,ah out dx,al ;后写高字节 mov ah,4ch ;返回DOS int 21h code ends end start实验四、 可编程并行接口(一)(8255方式0)一、实验目的 1掌握8255方式0的工作原理及使用方法。二、实验内容 1实验电路如图20,8255C口接逻辑电平开关K0K7,A口接LED显示电路L0L7。 2编程从8255C口输入数据,再从A口输出. 图20 图21三、编程提示 1、8255控制寄存器端口地址 28BHA口的地址 288H C口的地址 28AH 2、参考流程图(见图21): 3、参考程序: E8255.ASMcode segment assume cs:codestart: mov dx,28bh ;设8255为C口输入,A口输出 mov al,8bh out dx,alinout:mov dx,28ah ;从C口输入一数据 in al,dx mov dx,288h ;从A口输出刚才自C口 out dx,al ;所输入的数据 mov ah,1 ;判断是否有按键 int 16h jz inout ;若无,则继续自C口输入,A口输出 mov ah,4ch ;否则返回DOS int 21hcode ends end start实验五 七段数码管一、实验目的 掌握数码管显示数字的原理二、实验内容1 静态显示:按图22连接好电路,将8255的A口PA0PA6分别与七段数码管的段码驱动输入端a相连,位码驱动输入端S1接+5V(选中),S0、dp接地(关闭)。编程从键盘输入一位十进制数字(09),在七段数码管上显示出来。 图22 图232 动态显示(选作):按图23连接好电路,七段数码管段码连接不变,位码驱动输入端S1,S0接8255 C口的PC1,PC0。编程在两个数码管上显示00-99。三、编程提示1、实验台上的七段数码管为共阴型,段码采用同相驱动,输入端加高电平,选中的数码管亮,位码加反相驱动器,位码输入端高电平选中。 2、七段数码管的字型代码表如下表:显示字形gefdcba段码001111113fh1000011006h21010115bh310011114fh4110011066h511011016dh611111017dh7000011107h811111117fh911011116fh 3、参考流程图(见图24)(A) (B)图24 4、参考程序1: (程序名:LED.ASM)data segmentled db 3fh,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fhmesg1 db 0dh,0ah,Input a num (0-9h):,0dh,0ah,data endscode segmentassume cs:code,ds:datastart:mov ax,datamov ds,ax mov dx,28bh ;设置8255的A口为输出方式mov ax,80hout dx,alsss:mov dx,offset mesg1 ;显示提示信息mov ah,09hint 21hmov ah,01 ;从键盘接收字符int 21hcmp al,0 ;是否小于0jl exit ;若是则退出cmp al,9 ;是否大于9jg exit ;若是则退出sub al,30h ;将所得字符的ASCII码减30Hmov bx,offset led ;BX指向段码表的起始地址xlat ;求出对应的段码mov dx,288h ;从8255的A口输出out dx,aljmp sss ;转SSSexit:mov ax,4c00h ;返回DOSint 21hcode endsend start 5、参考程序2: (程序名:LED3.ASM)code segment assume cs:codestart: mov dx,28bh mov al,82h ;设置8255为A口、口输出 out dx,alagain: mov dx,288h mov al,6dh ;送5的段码至A口out dx,almov dx,28ah ;送5的位码至C口mov al,02hout dx,almov cx,3000 ;延时loop1: loop loop1 mov dx,288hmov al,7dh ;送6的段码至A口out dx,almov dx,28ahmov al,01h ;送6的位码到C口out dx,almov cx,3000loop2:loop loop2 ;延时mov ah,01int 16hje again mov al,0 ;关掉数码管显示 out dx,al mov ah,4ch ;返回DOS int 21hcode ends end start 实验六 继电器控制一、实验目的 1.了解微机控制直流继电器的一般方法。 2.进一步熟悉使用8255、8253。二、实验内容 实验电路如图25,按虚线连接电路:CLK0接1MHz,GATE0,GATE1,接+5V,OUT0接CLK1,OUT1接PA0,PC0接继电器驱动电路的开关输入端Ik。继电器常开触点串联一个220V灯泡,接交流220V。编程使用8253定时,让继电器周而复始的闭合5秒钟(指示灯灯亮),断开5秒钟(指示灯灯灭)。图25 继电器控制三、编程提示 1将8253计数器0设置为方式3、计数器1设置为方式0并联使用,CLK0接1MHZ时钟,设置两个计数器的初值(乘积为5000000)启动计数器工作后,经过5秒钟OUT1输出高电平。通过8255A口查询OUT1的输出电平,用C口PC0输出开关量控制继电器动作。 2继电器开关量输入端输入“1”时,继电器常开触点闭合,交流电路接通,灯泡发亮,输入“0”时断开,灯泡熄灭。2、参考流程图(见图26):(A)主程序 (B)延时子程序图263、参考程序: 程序名:JDQ.ASMcode segment assume cs:codestart: mov dx,28bh ;设8255为A口输入,C口输出 mov al,90hlll: out dx,al mov al,01 ;将PC0置位 out dx,al call delay ;延时5s mov al,0 ;将PC0复位 out dx,al call delay ;延时5s jmp lll ;转llldelay proc near ;延时子程序 push dx mov dx,283h ;设8253计数器为方式3 mov al,36h out dx,al mov dx,280h mov ax,10000 ;写入计数器初值10000 out dx,al mov al,ah out dx,al mov dx,283h mov al,70h ;设计数器1为工作方式0 out dx,al mov dx,281h mov ax,500 ;写入计数器初值500 out dx,al mov al,ah out dx,al ll2: mov ah,1 ;是否有键按下 int 16h jne exit ;若有则转exit mov dx,288h in al,dx ;查询8255的PA0是否为高电平 and al,01 jz ll2 ;若不是则继续 pop dx ret ;定时时间到,子程序返回exit: mov ah,4ch int 21hdelay endp code ends end实验七 竞赛抢答器一、实验目的 、了解微机化竞赛抢答器的基本原理。、进一步学习使用并行接口。二、实验内容图-27为竞赛抢答器(模拟)的原理图,逻辑开关K0K7代表竞赛抢答按钮07号,当某个逻辑电平开关置“”时,相当某组抢答按钮按下。在七段数码管上将其组号(07)显示出来,并使喇叭响一下。图27三、编程提示设置8255为口输入、口输出,读取口数据,若为0表示无人抢答,若不为0则有人抢答。根据读取数据可判断其组号。从键盘上按空格键开始下一轮抢答,按其它键程序退出。 四、参考流程图(见图28)图28 五、参考程序: QDQ.ASMdata segment led db 3fh,06h,5bh,4fh,66h,6dh,7dh,07h ;段码表data endscode segmentassume cs:code,ds:datastart: mov ax,datamov ds,axmov dx,28bh ;设8255为A口输出,C口输入mov ax,89hout dx,almov bx,offset led ;使BX指向段码管首址sss: mov dx,28ahin al,dx ;从8255的C口输入数据or al,al ;比较是否为0je sss ;若为0,则表明无键按下,转sssmov cl,0ffh ;cl作计数器,初值为-1rr: shr al,1inc cljnc rrmov al,clxlatmov dx,288hout dx,almov dl,7 ;响铃 ASCII码为07mov ah,2int 21hwai: mov ah,1 ;从键盘接收字符int 21hcmp al,20h ;是否为空格jne eee ;不是,转eeemov al,0 ;是,关灭灯mov dx,288hout dx,aljmp ssseee:mov ah,4ch ;返回DOSint 21hcode endsend start实验八 交通灯控制实验一.实验目的 通过并行接口8255实现十字路口交通灯的模拟控制,进一步掌握对并行口的使用。二.实验内容如图-29,L7、L6、L5作为南北路口的交通灯与PC7、PC6、PC5相连,L2、L1、L0作为东西路口的交通灯与PC2、PC1、PC0相连。编程使六个灯按交通灯变化规律燃灭。红 黄 绿 红 黄 绿图29 三.编程提示 1.十字路口交通灯的变化规律要求:(1) 南北路口的绿灯、东西路口的红灯同时亮30秒左右。(2) 南北路口的黄灯闪烁若干次,同时东西路口的红灯继续亮。(3) 南北路口的红灯、东西路口的绿灯同时亮30秒左右。(4) 南北路口的红灯继续亮、同时东西路口的黄灯亮闪烁若干次。(5) 转(1)重复。 四、参考流程图:见图30 五、参考程序:data segmentportc1 db 24h,44h,04h,44h,04h,44h,04h ;六个灯可能的状态数据db 81h,8

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论