接口实验华北电力大学_第1页
接口实验华北电力大学_第2页
接口实验华北电力大学_第3页
接口实验华北电力大学_第4页
接口实验华北电力大学_第5页
已阅读5页,还剩24页未读, 继续免费阅读

下载本文档

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

文档简介

1、华北电力大学科技学院实 验 报 告|实验名称 实验一 开发器的使用与设计实验实验二(1) 中断8259应用、 (2)定时/计数器8253应用 实验三 并行接口8255应用 实验四 存储器拓展实验 实验五 A/D转换结果送数码管显示 课程名称 接口通信实验 | 专业班级:计科1103班 学生姓名: 学 号: 成 绩:指导教师:张少敏 实验日期:2014.5 华 北 电 力 大 学 科 技 学 院 实 验 报 告实验一、开发器的使用与设计实验(1)数据转换实验一、 实验目的1、 初步掌握在PC机上建立、汇编、链接和运行8086/88汇编语言程序的过程。2、 通过对两个验证性实验的阅读、调试,掌握不

2、同进制数及编码相互转换的程序设计方法。3、 完成程序设计题,加深对数码转换的理解,了解简单程序设计方法。二、 实验条件 PC机 ,伟福6000仿真软件三、实验内容与步骤1) 设二字节十六进制数存放于起始地址为3500H的内存单元中,把他们转换成ASCII码后,再分别存入起始地址为350AH的四个内存单元。从书上ASCII码表中可知十六进制数加30H即可得到0H9H的ASCII码,而要得到AHFH的ASCII码,则需再加7H。2) 参考程序如下:CODE SEGMENT ASSUME CS:CODESTART: MOV CX,0004H MOV DI,3500H MOV DX,DIA1: MOV

3、 AX,DX AND AX,000FH CMP AL,0AH JB A2 ADD AL,07HA2: ADD AL,30H MOV DI+0AH,AL INC DI PUSH CX MOV CL,04H SHR DX,CL POP CX LOOP A1 MOV AH,4CH INT 21H CODE ENDS END START四、实验结论与分析 错误分析:(1)在保存文件时,忘了给新建文件名加后缀.ASM,使得在新建项目时,找不到文件。 (2)进行全速运行项目时,前几次都会忘记选择使用伟福模拟试验台。 (3)因为软件初始的SI变址寄存器不为零,所以在实验目的的3500H地址看不到相应的结果。

4、 实验结果:在调试运行后350AH+SI的内存单元中会显示3500H中所转换的对应的ASCII码。五、实验心得在这次课程设计的过程中的收获是很大的。这次课程设计我主要是应用老师教的相关知识及自己的一些想法,完成了数据转换问题。当然,这次实验,我也发现了自身的很多不足之处,在以后的学习中,我会不断的完善自我,不断进取。 (2)接收小写字母转换成大写字母并显示一、 实验目的通过阅读并调试示例程序,完成程序设计题,掌握利用DOS中断的调用来实现人机对话的编程方法。二、 实验条件 PC机,伟福6000仿真软件三、 实验内容与步骤1) 从键盘上接收一串小写字母存入内存单元,经过转换后在屏幕上显示其大写字

5、母。设计思路:利用DOS中断的01号子功能接收键盘输入的一串字符串并存入内存单元,当接收到回车键时,将小写字母的ASCII码转换为大写字母的ASCII码,利用DOS功能的02号子功能将其显示在屏幕上。 2)参考程序如下:DATA SEGMENTBUF DB 200 DUP(?)DATA ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATASTART: MOV AX,DATA MOV DS,AX MOV SI,OFFSET BUF MOV CL,00HA1: MOV AH,01H INT 21H CMP AL,0DH JZ A2 SUB AL,20H MOV SI,AL

6、 INC SI INC CL JMP A1A2: MOV DL,0AH MOV AH,02H INT 21H MOV DL,0DH INT 21H MOV SI,OFFSET BUF MOV CH,00HA3: MOV DL,SI MOV AH,02H INT 21H INC SI LOOP A3DELAY: CMP AX,0000H JNE DELAY MOV AH,4CH INT 21HCODE SEGMENTEND START 四、 实验结论与分析 错误分析:在显示的时候,先进行了显示转换后的数据,未进行回车操作,导致先不合理。 实验结果:找到当前文件所在的位置,打开.exe文件,输入小

7、写字母,按回车键相应的会输出大写的字母五、 实验心得 在这次课程设计的过程中的收获是很大的。这次课程设计我主要是应用老师教的相关知识及自己的一些想法,完成了接收小写字母转换成大写字母DOS调用问题。实验二(1)、中断8259应用一、 实验目的1、 通过阅读并调试示例程序,学习8088/86与8259A的连接与控制方法,掌握8259A中断控制器的工作原理。2、 完成程序设计题,学会编写中断服务程序。二、 实验条件 PC机,8259A可编程中断控制器,仿真软件三、 实验内容与步骤1、实验原理8259A是一种可编程中断控制器,与8088/86微机兼容,能处理8级向量优先权中断,亦可以通过级联构成64

8、级向量优先权中断系统。具有可编程控制中断方式,并能分别屏蔽各个中断请求。通过4个初始化命令字(icw1icw4)及3个操作命令字(ocw1ocw3)使用8259A可编程程序中断控制器。2、 实验内容 用8088/86控制8259可编程中断控制器,实现对外部中断的响应和处理。要求程序对每次中断进行计数,并将计数结果用8255的PA口输出到LED显示。3、 参考流程图及程序mode equ 80hpa8255 equ 8000hpb8255 equ 8001hctl8255 equ 8003hicw1 equ 00010011bicw2 equ 00100000bicw4 equ 01hocw1

9、equ 11111110bcs8259a equ 09000hcs8259b equ 09001hdata segment cnt db 0 cn db 0data endscode segment assume cs:code,ds:data ienter proc near push ax push dx mov dx,pb8255 inc cnt cmp cnt,0ah jnz P1 mov cnt,0 inc cn mov al,cn out dx,al P1:mov dx,cs8259a mov al,20h out dx,al pop dx pop ax iret ienter e

10、ndpinit proc near mov dx,cs8259a mov al,icw1 out dx,al mov dx,cs8259b mov al,icw2 out dx,al mov al,icw4 out dx,al mov al,ocw1 out dx,al ret init endpstart proc near mov dx,ctl8255 mov al,mode out dx,al cli mov ax,0 mov ds,ax mov bx,4*icw2 mov ax,offset ienter mov bx,ax mov ax,code inc bx inc bx mov

11、bx,ax call init mov ax,data mov ds,ax mov cn,0 mov al,cn mov dx,pb8255 out dx,al sti lp: nop jmp lpstart endpcode ends end start四、 实验结论与分析错误分析:一开始连线时,将LED灯与控制口相连,控制端与显示口相连,导致无法显示 实验结果:通过按单脉冲,使之产生中断,然后再LED显示按下的次数就是中断的次数。 五、 实验心得 在这次课程设计的过程中的收获是很大的。这次课程设计我主要是应用老师教的相关知识及自己的一些想法,完成了中断8259应用。当然,这次实验,我也发现

12、了自身的很多不足之处,在以后的学习中,我会不断的完善自我,不断进取,能使自己在这方面有一个大的发展,我真的很高兴有这次的锻炼机会。 实验二(2)、定时/计数器8253应用一、 实验目的通过阅读并调试示例程序,完成程序设计题,掌握8253的基本工作原理和编程方法,熟悉8253在系统中的典型接法。二、 实验条件 PC机,8253可编程定时/计数器,伟福6000仿真软件三、 实验内容与步骤1、实验原理8253可编程定时/计数器是Intel公司生产的统一外围接口芯片它有3个独立的16位计数方式和操作方式都通过编程控制。2、 实验内容利用8088/86外接8253可编程定时/计数器,可以实现对外部事件进

13、行计数,且可以设置断点读回计数器的值。本实验中计数器按方式3工作,即十六位二进制计数器。当计数设置好后,计数器就开始计数。如果要读入计数器的值,要先锁存计数值,才能读到计数值,本实验主要产生1HZ的脉冲波使LED灯以一秒闪烁。3、 流程图及参考程序CONTROL EQU 08003HCOUNT0 EQU 08000HCOUNT1 EQU 08001HCOUNT2 EQU 08002HCODE SEGMENT ASSUME CS:CODESTART PROC NEAR MOV AL,36H MOV DX,CONTROL OUT DX,AL MOV AX,10000 MOV DX,COUNT0 O

14、UT DX,AL MOV AL,AH OUT DX,AL MOV AL,76H MOV DX,CONTROL OUT DX,AL MOV AX,100 MOV DX,COUNT1 OUT DX,AL MOV AL,0 OUT DX,ALAGAIN: MOV AL,00000000B MOV DX,CONTROL OUT DX,AL MOV DX,COUNT0 IN AL,DX MOV BL,AL IN AL,DX MOV AH,AL MOV AL,BL JMP AGAINSTART ENDPCODE ENDS END START四、 实验结论与分析实验结果:LED指示灯以1s的时间间隔闪烁。五

15、、 实验心得这次课程设计我主要是应用老师教的相关知识及自己的一些想法,完成了定时/计数器8253应用问题。掌握了8253的基本工作原理和编程方法,熟悉8253在系统中的典型接法。也了解了分频芯片的使用。实验三、并行接口8255应用一、 实验目的1、 通过阅读并调试示例程序,掌握8255A可编程并行接口的工作原理;2、 完成程序设计题,学会并行接口电路的设计,及编写输入输出控制程序。二、 实验条件 一台计算机,8255A可编程控制芯片,LED灯的电路板三、 实验内容与步骤1、 实验原理8255A是可编程的通用并行输入输出接口芯片,因通用性强,使用灵活,可直接与cpu总线相连,应用非常广泛。825

16、5A芯片内部有3个8位的输入输出端口,即A口、B口、C口。从内部控制的角度来讲,可分为两组:A组和B组。A组控制模块管理A口和C口的高4位(pc7PC4),B组控制模块管理B口和C口的低4位(pc3pc0)。2、 实验内容设计跑马灯程序设计,要求K0=0,从左向右跑马灯;K1=0时,从右向左跑马灯;K2=0时,从左从右向中间跑马灯,LED从pc口输出。完成电路设计及程序的编制,进行调试并验证结果。参考程序MODE EQU 082HPORTA EQU 8000HPORTB EQU 8001HPORTC EQU 8002HCADDR EQU 8003HDATA SEGMENTPOS DB 0FFH

17、NOWDATA DB 0FFHLEFT DB 0FFHRIGHT DB 0FFHDATA ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATASTART: MOV AX,DATA MOV DS,AX MOV AL,MODE MOV DX,CADDR OUT DX,ALINPUT: MOV DX,PORTB IN AL,DX CMP AL,NOWDATA JNZ INITIAL CMP AL,0FEH JZ K0 CMP AL,0FDH JZ K1 CMP AL,0FBH JZ K2 JMP INPUTINITIAL: MOV NOWDATA,AL CMP AL,0FE

18、H JZ INTIK0 CMP AL,0FDH JZ INTIK1 CMP AL,0FBH JZ INTIK2 INTIK0: MOV POS,10000000B JMP OUTPUTINTIK1: MOV POS,00000001B JMP OUTPUTINTIK2: MOV LEFT,10000000B MOV RIGHT,00000001B MOV AL,LEFT OR AL,RIGHT MOV POS,AL JMP OUTPUTK0: ROR POS,1 JMP OUTPUTK1: ROL POS,1 JMP OUTPUTK2: ROR LEFT,1 ROL RIGHT,1 MOV A

19、L,LEFT OR AL,RIGHT MOV POS,ALOUTPUT: MOV AL,POS MOV DX,PORTC OUT DX,AL MOV CX,5000H LOOP $ JMP INPUTCODE ENDSEND START四、 实验结论与分析错误分析:因为实验台LED灯接线口接触不良,导致不能正常显示,必须施压将线紧紧和接线口连接在一起,这样才能达到实验目的效果 实验结果:K0=0,从左向右跑马灯;K1=0时,从右向左跑马灯;K2=0时,从两边向中间跑马灯 五、 实验心得通过阅读并调试程序,掌握8255A可编程并行接口的工作原理;完成了程序设计题,学会并行接口电路的设计,及编写输

20、入输出控制程序。 实验六、存储器拓展实验一、 实验目的1.通过阅读并调试示例程序,完成程序设计题,熟悉静态Ram的拓展方法;2.了解8086/8088与存储器的连接,掌握拓展存储器的读写方法。二、 实验条件 PC机 ,62256 RAM,伟福6000仿真软件三、 实验内容与步骤1.实验原理(62256RAM介绍) 62256是32*8的静态存储器,管脚如图所示。其中:A0A14为地址线,DB0DB7为数据线,/cs为存储器的片选,/OE为存储器数据输出选通信号,/WE为数据写入存储器信号。62256工作方式如下图。/CS /WE /OE 方式 DB-DB7H X X 未选中 高阻L H H 读

21、写禁止 高阻L L H 写 INL H L 读 OUT 2.实验内容编写程序,将4KB扩展存储器交替写入55H,AAH。3、参考程序RAMADDR EQU0000HRAMOFF EQU9000HCODESEGMENTASSUMECS:CODESTART:PROCNEAR MOV AX,RAMADDR;段地址 MOV DS,AXMOV BX,RAMOFF;偏移地址MOV DL,0AAH;AAHREP1:NOT DL;逻辑非55HMOV BX,DL;字符存入扩充内存区域CMP BX,9FFFH;扩展存储器是否已经写满JZ EXIT;若已经写满则退出INC BXJMP REP1EXIT:MOV AH

22、,4CHINT 21HCODE ENDSEND START四、 实验结论与分析实验结果: 0000:90000000:9fffh 这4KB拓展存储器内容为交替显示55H和AAH 五、 实验心得 在这次课程设计的过程中的收获是很大的。这次课程设计我主要是应用老师教的相关知识及自己的一些想法,完成了存储器拓展问题。通过阅读并调试示例程序,完成了程序设计题,熟悉了静态Ram的拓展方法;了解了8086/8088与存储器的连接,掌握拓展存储器的读写方法。实验七、A/D转换结果送数码管显示(1)查询EOC转换结束信号实现A/D转换。一、 实验目的1.通过阅读并调试示例程序,了解A/D转换的基本原理2.完成

23、程序设计题,掌握ADC0809的使用方法二、 实验条件 PC机,A/D转换器,LED数码显示管,伟福6000仿真软件三、 实验内容与步骤1实验原理ADC0809是8位8通道A/D转换器,芯片包括一个8位的逐次逼近型的ADC部分,并提供一个8通道的模拟多路开关盒联合寻址逻辑。用该电路可直接采样8个单端的模拟信号,分时进行A/D转换,在多点巡回检测,过程控制等应用领域使用非常广泛。2.实验内容通过电位器输出05V直流电压送入ADC0809通道0(in0),利用输出命令启动A/D转换器,输入命令读取转换结果,验证输入电压与转换后数字的关系。编程采集in0输入电压,通过8255PA 连接发光二级管显示

24、转换后的数据(16进制数)。3.实验电路参考程序MODE EQU 082HPORTA EQU 09000HPORTB EQU 09001HPORTC EQU 09002HCADDR EQU 09003HCS0809 EQU 08000HCODE SEGMENT ASSUME CS:CODESTART PROC NEAR MOV AL,MODE MOV DX,CADDR OUT DX,ALAGAIN: MOV DX,PORTB IN AL,DX AND AL,01H CMP AL,01H JNZ AGAIN MOV AL,0 MOV DX,CS0809 OUT DX,AL MOV CX,1000

25、H LOOP $ IN AL,DX MOV DX,PORTC OUT DX,AL JMP AGAINCODE ENDS END START四、 实验结论与分析 实验结果:通过调节电压的大小,可以在发光二极管上显示当前电压大小的近似值。五、实验心得 在这次课程设计的过程中的收获是很大的。这次课程设计我主要是应用老师教的相关知识及自己的一些想法,完成了A/D并将结果显示在发光二极管上问题。经过老师的指导,才做到了心中有数,我在此很想感谢给予我耐心解答的老师,同学们勤恳塌实,始终热情高涨,我感谢这种氛围。(2)八段数码管显示实验1、 实验目的1.通过阅读并调试示例程序,了解A/D转换的基本原理2.完

26、成程序设计题,掌握ADC0809的使用方法2、 实验条件 PC机,A/D转换器,八段数码管,伟福6000仿真软件3、 实验内容与步骤1实验原理ADC0809是8位8通道A/D转换器,芯片包括一个8位的逐次逼近型的ADC部分,并提供一个8通道的模拟多路开关盒联合寻址逻辑。用该电路可直接采样8个单端的模拟信号,分时进行A/D转换,在多点巡回检测,过程控制等应用领域使用非常广泛。2.实验内容通过电位器输出05V直流电压送入ADC0809通道0(in0),利用输出命令启动A/D转换器,输入命令读取转换结果,验证输入电压与转换后数字的关系。编程采集in0输入电压,通过锁存器连接数码管显示转换后的数据(1

27、6进制数)。3.实验电路4.参考程序CS0809 EQU 09000HOUTBIT EQU 08002HOUTSEG EQU 08004HDATA SEGMENTLEDBUF DB 2 DUP (?)NUM DB 1 DUP (?)DELAYT DB 1 DUP (?)LEDMAP: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,77H,7CH,39H,5EH,79H,71HDATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATADELAY PROC NEAR PUSH AX PUSH CX MOV AL,0H MOV CX,AX LOOP $ POP CX POP AX RETDELAY ENDPDISPLAYLED PROC NEAR MOV BX,OFFSET LEDBUF

温馨提示

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

评论

0/150

提交评论