- 1、本文档共6页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
8255并行输入输出实验报告
东南大学
《微机实验及课程设计》
实验报告
实验六 8255并行输入输出
姓 名: 学 号:
专 业: 实 验 室: 计算机硬件技术
实验时间: 2012年05月18日 报告时间: 2012年05月20日
评定成绩: 审阅教师:
实验目的与内容
1)掌握8255 方式0 的工作原理及使用方法,利用直接输入输出进行控制显示;
2)掌握8 段数码管的动态刷新显示控制;
3)分析掌握8255 工作方式1时的使用及编程,进一步掌握中断处理程序的编写。
二. 基本实验原理
(一)、8255 方式0:简单输入输出
实验电路如下图所示,8255C 口输入接逻辑电平开关K0~K7,编程A 口输出接LED 显示电路L0~L7;
用指令从 C 口输入数据,再从A 口输出。
实验电路及程序流程图如下:
/CS为片选信号,由系统地址线译码产生,低电平有效;此方式为简单输入输出,A口、B口、C口的高4位和低4位都可以分别设置成输入或输出,在此实验中设置C口为数据输入端,A口为数据输出端。
(二)、数码管显示原理
实验台上的七段数码管为共阴型,段码采用同相驱动,输入端加高电平,选中的数码管亮,位码加反相驱动器,位码输入端高电平选中。
七段数码管的字型代码如下表所示: 数码管对应断码为:
(三)、8 段数码管静态显示
按下图所示连接好电路,将8255 的A 口PA0~PA6 分别与七段数码管的段码驱动输入端a~g相连,位码驱动输入端S1 接+5V(选中),S0、dp 接地(关闭)。编程从键盘输入一位
十进制数字(0~9),在七段数码管上显示出来。
单管静态显示电路如下图所示:
输入数据经8255芯片并行输出,将信息反映在8段数码管s1上。
实验结果显示:
(四)、 8 段数码管动态显示
按下图所示连接好电路,七段数码管段码连接不变,位码驱动输入端S1、S0 接8255 C 口的PC1、PC0。编程在两个数码管上显示“56”。(注意字符变换之间应使段位全灭,避免显示“影子”)
双管动态电路设计及程序流程图如下:
送位码02H至C口,使PC0为0,PC1为1,即选中S1,关闭S0,在S1的数码管上显示“5”;送位码01H至C口,使PC0为1,PC1为0,即选中S0,关闭S1,在S0的数码管上显示“6”。这是数码管动态显示方式。由于两个数码管之间轮流显示的间隔时间很短,因视觉暂留作用,所以人眼无法判别其间隔作用。
实验图片:
三. 方案实现与测试
、获取TPC 扩展卡 I/O 和存储基地址
直接在windows 下利用控制面板查看占用的存储和中断资源,可知:
TPC设备内存范围: FDDFF000—FDDFF0FF
接口芯片输入输出范围: BC00—BCFF
TPC设备输入输出范围: ec00—B87F
接口芯片内存范围: FDC00000—FDCFFFFF
(二)、检查硬件设备
运行程序前先用动态I/O 命令单步输出控制字,对相应端口进行I/O 操作。
连接如简单输入输出的电路,通过拨开关设置输入数据。在DEBUG模式下,键入命令ib80a可读出开关状态。如果读出数正确,则8255工作正常。
在DEBUG模式下键入命令行:
mov dx,b80b ;设8255 为C 口输入,A 口输出
mov al,8bh
out dx,al
inout: mov dx,b80a ;从C 口输入一数据
in al,dx
mov dx,b808 ;从A 口输出刚才自C 口
out dx,al ;所输入的数据
可看到LED灯显示为开关的状态。
(三)、8255 方式0:简单输入输出
源程序见书P69
指令中重要片段见上,设置控制字8B通过in、out指令对其进行数据的读入和写出。
运行程序后可看到LED灯L0~L7显示为开关K0~K7的状态。
(四)、编程将A 口 L0-L7 控制成流水灯,流水间隔时间由软件产生;流水方向由K0 键在线控制,随时可切换;流水间隔时间也可由K4~K7 键编码控制,如0000 对应停止,0001 对应1 秒,1111 对应15 秒,大键盘输入ESC 键退出。
源程序见8255_light文件,但该程序中只实现了K0控制方向,K4~K7为0000时停止,其它键间隔相同时间(1秒)的功能,没有改变间隔时间和键入ESC 键退出的功能。完善程序以实现流水灯,见创新部分。(五)、8 段数码管静态显示
源程序见825
文档评论(0)