文档详情

东南大学微机第六次实验报告.doc

发布:2018-09-06约4.44千字共8页下载文档
文本预览下载声明
《微机实验及课程设计》实验报告 学号 PAGE PAGE 0 东南大学 《微机实验及课程设计》 实验报告 实验六 8255 并行输入输出 姓 名: 学 号: 专 业: 实 验 室: 实验时间:年05月22日 报告时间:年05月29日 评定成绩: 审阅教师: 实验目的与内容 实验目的 1)掌握8255方式0的工作原理及使用方法,利用直接输入输出进行控制显示; 2)掌握8段数码管的动态刷新显示控制; (二)实验内容及要求 1、8段数码管静态显示: 编程从键盘输入一位十进制数字(0~9),在数码管上显示出来。(必做) 2、8段数码管动态显示:在两个数码管上同时显示不同的两位数字或字母,保持不变直至退出。(如56或7f)(必做) 3、静态显示:用逻辑电平开关预置某个数字(0~9)的二进制码,将该数据用8255的C口读入,并用A口输出,并在数码管显示出来。 4、动态显示:在两个数码管上滚动循环显示不同的0~f字符。(即开始时两个数码管显示01,12,23,34 ······ 9a······f0,一直循环直至退出) 注:3,4中选做一题,必做一题 二. 实验基本原理 (一)实验接线图 PA0~PA6分别接数码管的a~g PC0~PC7分别逻辑电平开关的K0~K7 位选端S1接+5V 位选端S0接地 数码管dp端接地 必做1,3 接线图 PA0~PA6分别接数码管的a~g 位选端S0 、S1接8255C口的PC0、PC1端 必做2 接线图 (二)程序流程图 图 1.1 8255 简单输入输出程序流程图图 2.1 8255 动态显示5 6 程序流程图 三 方案实现与测试(或调试) 必做实验1: data segment ioport equ 0b800h-0280h io8255a equ ioport+288h io8255b equ ioport+28bh led db 3fh,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh mesg1 db 0dh,0ah,Please input a num (0--9h):,0dh,0ah,$ data ends stacks segment stack db 100 dup (?) stacks ends code segment assume cs:code,ds:data,ss:stacks start: mov ax,stacks mov ss,ax mov ax,data mov ds,ax mov dx,io8255b ;使8255的A口为输出方式 mov ax,80h out dx,al sss: mov dx,offset mesg1 ;显示提示信息 mov ah,09h int 21h mov ah,01 ;从键盘接收字符 int 21h cmp al,0 ;是否小于0 jl exit ;若是则退出 cmp al,9 ;是否大于9 jg exit ;若是则退出 sub al,30h ;将所得字符的ASCII码减30H mov bx,offset led ;bx为数码表的起始地址 xlat ;求出相应的段码 mov dx,io8255a ;从8255的A口输出 out dx,al jmp sss ;转sss exit: mov ah,4ch ;返回DOS int 21h code ends end start 必做实验2: data segment ioport equ 0b800h-0280h ;tpc卡中设备的io地址 io8255a equ iopo
显示全部
相似文档