- 1、本文档共16页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验十综合设计实验8X2键盘8255芯片
广州大学学生实验报告 开课学院及实验室: 年 月 日 学 院 物电学院 年级、专业、班 2011级光信112班 姓名 *** 学号 * 实验课程名称 微机原理与接口实验 成绩 实验项目名称 综合设计实验 指 导 教 师 一、实验目的
1.进一步熟悉接口、熟悉键盘控制和七段数码管及其他芯片的使用
2.学习并掌握8255的各种工作方式及其应用。
3.熟练掌握8255编程。
二、实验原理
1、键盘及扫描程序
行列式键盘有八行二列,与8255A接口芯片连接使用。如附图所示,八根行列线与PA口相连,两根列线与PC口的PC6、PC7相连。按键设置在行、列交点处,行、列线分别连接到按键开关的两端。列线通过上拉电阻接+5V,键盘中有哪个键被按下由行线输出状态和列线读入状态来判断。
(1)先判断键盘上无键被按下。
输出行线PA7至PA0全为零,然后读入列线PC6、PC7的状态,若全为“1”,则该行没有键按下;若不全为“1”则说明有键被按下。
(2)确定按下键的键值。键值=行号+列号*8
行号: 输出行线PA7至PA0:
0 1111,1110
1 1111,1101
2 1111,1011
3 1111,0111
4 1110,1111
5 1101,1111
6 1011,1111
7 0111,1111
列号: 读入行线PC7PC6:
0 10
1 01
求出按下键的键值后可安排一些条件转移指令,使程序转到相应的地址去完成该键的操作。
(3)保证键闭合一次,CPU只进行一次键功能操作。
由于程序运行的速度较快,可能在按键还没释放前相应的程序就运行完了,导致CPU对同一次键闭合重复响应。为了避免这种情形发生,程序中必须加入等待键释放的程序。具体方法是判断PC6、PC7是否全为一,若是则本次按键已释放,可以把键号送累加器;否则本次按键未释放,继续等待按键释放。
(4)去除按键的机械抖动的影响。
对于由机械触点构成的按键,由于机械触点的弹性作用,触点在闭合及断开的瞬间会有一个抖动过程,一般为5ms至10ms。为了消除抖动影响,在编写程序时可作以下处理:当判断有键按下后,先延迟一段时间,然后再判断一次键盘状态,如果仍判断为有键按下状态,则认为有一个确定的键按下,否则当作是按键抖动处理。
2、LED显示器及显示子程序
六位LED显示板的引脚连接如图所示。LED数码管采用动态显示方式工作,即在每一瞬间只使某一位显示相应字符。在此瞬间,8255A的PB7至PB0输出相应字符段码,8255A的PC2-PC0输出显示位的位码给74LS138,经过74LS138译码后选中显示位。如此轮流,使每位显示相应字符,并保持延迟一段短时间,约1至5ms,以造成视觉暂留效果。不断循环送出相应的段选码、位选码,就可以获得视觉稳定的显示状态。
+5V
文档评论(0)