实验六微机实验.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
东南大学 《微机实验及课程设计》 实验报告 实验三8255并行输入输出 姓 名: 塔高明 学 号: 专 业: 测控技术与仪器 实验室:516 实验时间:2010年05月8日 报告时间:2012年05月10日 评定成绩: 审阅教师: 一.实验目的与内容 (-)实验目的 (1) 掌握8255方式0的工作原理及使用方法,利用直接输入输出进行控制显示。 (2) 学握8段数码管的动态刷新显示控制; (3) 分析掌握82551作方式1时的使用及编程,进一步掌握中断处理程序的编写。 (4) 了解掌握8255用于矩阵式键盘扫描方法及软件实现。 (二)基本实验内容和要求 (1) 8255方式0:简单输入输出: 实验电路如图20, 8255C口接逻辑电平开关K0?K7,编程A口接LED显示电路L0?L7; CLI输入数据,再从A 口输出。 (2) 编程将A口 L0-L7控制成流水灯,流水间隔时间由软件产生;流水方向由K0键在线控制,随时可切换; 流水间隔时间也可IIIK4-K7键编码控制,如0000对应停止,0001对应1秒,1111对应15秒,大键盘输入ESC键 退出。 (3) 8段数码管静态显示:按图连接好电路,将8255的A 口 PA0?PA6分别与七段数码管的段码驱动输入端a? £相连,位码驱动输入端S1接+5V (选中),SO、dp接地(关闭)。编程从键盘输入一位十进制数字(0? 9),在七段数码管上显示出來。 (4) 8段数码管动态显示:按图连接好电路,七段数码管段码连接不变,位码驱动输入端SI, S0接8255 C 口的PCI, PCOo编程在两个数码管上显示“56”。 二.基本实验原理 原理图: 内容(1)原理图 k . 1 4 p p A P A 4 . KJ ▼ 15 p r 1 厂Fl 0 p a 1 3 . ▼ ■ ■ n jl ▼ .... K # a ....亠 16 厂?丄 pro 厂丄 p 6 2 2 ■ 亠 1 7 p r 3 PA 3 ■■ k 4 1 3 PC4 IO—* PA4 40 . ?? K ■ ■ ■ . 1 2 p r 5 PAE ■ ■ K n ■ ■ —a- 1 1 厂Lz D p r 6 ? ■ k 7 —?- 1 0 1 J 7 PC? i n w PA? ■ 288H U18 6 cs 8255 L0 L1 L2 L3 L4 L5 L6 L7 内容(3)原理图 288K* 内容(4)原理图 PC1 PCO-X- 9 s m M — 0 a a a a a a a d d d d a. d d 1丨1丨丨丨1 C £ LED1 ? 288h~ U11 8255 LED2 288h^ 流程图 冇键按下吗?A1结束 冇键按下吗?A1 结束 图1. 1 8255简单?输入输出程序流程图 图2.1 8255动态显示5 6程序流程图 三?方案实现与测试(或调试) (1) 8255方式0:简单输入输出 ioport equ 0b800h-0280h io8255a equ i oport+288h io8255b equ ioport+28bh ;tpc卡中设备的io地址 ;8255A 口地址 ;8255控制寄存器端口地址 io8255c equ ioport+28ah ;8255C口地址 stacks segment stack db 100 dup (?) stacks ends code segment assume cs:code,ss:stacks main proc far start: mov ax,stacks mov ss, ax mov dx, io8255b;设8255为C口输入,A口输出 mov al,8bh ;从(;口输入一数据;从人口输出刚才口 ;从(;口输入一数据 ;从人口输出刚才口 c 口 ;所输入的数据 ;判断是否有按键 inout: mov dx, io8255c in al, dx mov dx, io8255a out dx, al mov dl, Offh mov ah,06h int 21h jz inout ;若无,则继续自CU输入,A口输出 mov ah, 4ch ;否则返回DOS int 21h main endp code ends end start (2)流水灯 data segment ioport equ 0b800h-0280h io8255a equ ioport+288h io8255b equ ioport+28bh io8255c equ ioport+28ah data ends stacks segment stack db 100 dup (?) stacks ends code segment

文档评论(0)

ggkkppp + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档