《单片机原理及应用》
课程设计报告书
课题名称
单片机实现PC机键盘控制器设计
姓名
学号
专业
指导教师
机电与控制工程学院
年月日
任务书
设计课题:
单片机实现PC机键盘控制器设计
设计任务及要求:
目的:掌握单片机扫瞄键盘原理,以及单片机与PC机通信方法。
内容:单片机通过扫描键盘确定键盘(有键按下时),然后通过232 串口将键盘值发送给PC机。
要求:进一步学习单片机应用技术,接口电路及应用程序,巩固与综合基础及专业知识,综合分析的思维与创新能力,能根据查阅相关手册与资料,提高一定的自学能力和独立分析问题的能力,解决问题的能力。
目录
1、绪论……………………………………………………………………… 4
2、键盘工作原理……………………………………………………………5
3、PS/2通信协议……………………………………………………………7
4、程序及硬件设计………………………………………………………… 8
5、单片机与PC机通讯…………………………………………………… 34
6、技术小结………………………………………………………………… 40
7、致谢………………………………………………………………………41
8、参考文献………………………………………………………………… 42
9、硬件调试…………………………………………………………43
1 、绪论
到目前为止,人们已设计的键盘有83键、84键、101键、102键等多种,采用的一般都是由单片机(8048、8035、8044等)扫描、编码的智能化键盘。
当前人们所用的一般都是非编码键盘,它仅仅是按行、列排列起来的的矩阵开关,键盘内部使用的单片机能够自动地识别键的按下与释放,自动生成相应的扫描码(即行列位置码),并以串行方式送往接口。此外,它还具有若干个键扫描码的缓冲能力和出错下的自动重发能力,但是,由于是非编码键盘,所以它向接口提供的只是键的行列位置码(即键盘扫描码),而不是键的含义和功能直接对应的ASCII码,因此设计时需要将键盘扫描码转化成反映键意的ASCII码。
由于最初人们设计的键盘只有83键,它的键号(即ASCII码)与键盘扫描码是一致的,随着键盘功能和按键数目的扩充,为了实现各种不同功能和按键数目键盘与PC 机之间的兼容性,84/101/102等键盘的键盘扫描码还是采用了83键的键盘的那83个键盘扫描码,只是在送到PC机以后再由PC机来完成将83个键盘扫描码转化成相应个数的系统扫描码。
2、Ps/2键盘工作原理
到目前为止,人们设计的键盘有83键、84键、101键、102键等多种,采用的一般是由单片机(8048、8035、8044等)扫描、编制的智能化键盘。
当前人们所用的都是非编码键盘,它仅仅是按行、列排列起来的矩阵开关,键盘内部使用的单片机能够自动的识别键的按下与释放,自动生成相应的扫描码(即行列位置码),并以串行方式送至往接口。此外,它还具有若干个键扫描码的缓冲能力和出错下自动重发能力,但是,由于是非编码键盘,所以它向接口提供的只是键的行列位置码(即键盘扫描码)而不是与键的含义和功能直接对应的ASCLL码,因此设计时需要将键盘扫描码转化成反映键意的ASCLL码。
由于最初人们设计的键盘只有83键,它的键号(即ASCLL码)与键盘扫描码是一致的,随着键盘功能和按键数目的扩充,为了实现不同功能和按键数目键盘与PC机之间的兼容性,84/101/102等键盘的键盘扫描码还是采用了83键的键盘的那83个键盘扫描码,只是在送到PC机以后在有PC机来完成将83个键盘扫描码转化成相应个数的系统扫描码。
键盘对按键的识别和行列位置扫描码(即键盘扫描码)产生是有键盘内部的单片机通过译码来实现的。单片机在列行扫描的同时,读回扫描信号的结果,判断是否有键按下,并计算位置得到行列位置码(及键盘扫描码)。当有键按下时,键盘分两次将行列位置扫描码发送到键盘接口。按下时发送一次叫接通扫描码,释放时在发送一次叫断开扫描码,断开扫描码与接通扫描码之间是有一定关系的,断开扫描码有两个字节,第一个是表明键已释放的的前缀FOH,第二个字节与接通扫描码。目前已有的键盘扫描码共有三套,我们现在使用的一般是第二套键盘扫描码(101,102,104键),其接通扫描码编码表如下:
KEY
CODE
KEY
CODE
KEY
CODE
A
1C
9
46
[
54
B
32
0e
Insert
E0,70
C
21
-
4e
Home
E0,6c
D
23
=
55
PGUP
E0,7D
E
24
\
5D
DELETE
单片机课程设计__单片机实现PC机键盘控制器设计 来自淘豆网m.daumloan.com转载请标明出处.