没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
FPGA 控制的 PS/2 接口电路设计
作者:
专业班级:电子信息科学与技术
学号:
关键词: 接口电路
中文摘要:
本论文主要介绍了由键盘向两位七段数码管和液晶显示器 通信的 控制的
接口电路的设计。
首先介绍了本论文的意义和设计的原则,然后具体阐述了 接口的电路工作原理、
控制电路实现方式、硬件电路图以及控制电路程序、仿真结果、实测结果。
The PS / 2 FPGA control interface circuit design
!"
#!""$
% &#
The English abstract:
' #( ()*+
##,
' - # - .
(- #.#
.&/#.##.
#,
引言:
随着信息技术的大力发展,计算机技术进入了各行各业。它是人们的工作
效率大大提高,免除了人们很多复杂、繁重的手工工作,很多品牌机上采用
口来连接键盘。 接口与传统的键盘接口除了在接口外型、引脚有
不同外.在数据传送格式上是相同的。现在很多主板用 接口插座连接键
盘.传统接口的键盘可以通过 接口转换器连接主板 接口插座。
本文的撰写,有助于帮助读者了解键盘和电脑之间的通信,并且,更深
刻的了解 接口的具体工作过程。
原理:
电气特性:
数据格式如下:
个起始位 总是逻辑
0 个数据位 (1)低位在前
个奇偶校验位 奇校验
个停止位 总是逻辑
个应答位 仅用在主机对设备的通讯中
表中,如果数据位中1的个数为偶数,校验位就为1;如果数据位中1的个数
为奇数,校验位就为0;总之,数据位中1的个数加上校验位中1的个数总为
奇数,因此总进行奇校验。
设备的 和 都是集电极开路的,平时都是高电平。当
设备等待发送数据时,它首先检查 是否为高。如果为低,则认为 * 抑
制了通讯,此时它缓冲数据直到获得总线的控制权。如果 为高电平,
则开始向 * 发送数据。
一般都是由 设备产生时钟信号。发送按帧格式。数据位在 为高电
平时准备好,在 下降沿被 * 读入。
数据从键盘发送到主机,时钟是 设备产生,主机对时钟控制有优先权,
即主机想发送控制指令给 设备时,可以拉低时钟线至少 2,然后再
下拉数据线,最后释放时钟线为高。 设备的时钟线和数据线都是集电极开
路的,容易实现拉低电平。
数据发送时序
从PS/2向PC机发送一个字节可按照下面的步骤进行:
333333415检测时钟线电平,如果时钟线为低,则延时50 2 s;
333333425检测判断时钟信号是否为高,为高,则向下执行,为低,则转到415;
333333435检测数据线是否为高,如果为高则继续执行,如果为低,则放弃发送
(此时PC机在向 PS/2设备发送数据,所以PS/2设备要转移到接收程
序处接收数据);
333333445延时20 2 s(如果此时正在发送起始位,则应延时40 2 s);
33333(5)输出起始位(0)到数据线上。这里要注意的是:在送出每一位后都
要检测时钟线,以确保PC机没有抑制PS/2设备,如果有则中止发送;
33333(6)输出8个数据位到数据线上;
33333(7)输出校验位;
33333(8)输出停止位(1);
33333(9)延时30 2 s(如果在发送停止位时释放时钟信号则应延时50 2
s);
通过以下步骤可发送单个位:
333333(1)准备数据位(将需要发送的数据位放到数据线上);
333333(2)延时20 2 s;
33333(3)把时钟线拉低;
333333(4)延时40 2 s;
333333(5)释放时钟线;
333333(6)延时20 2 s。
键盘返回值介绍
键盘的处理器如果发现有键被按下或释放将发送扫描码的信息包到计算机。扫描码有
两种不同的类型:通码和断码。当一个键被按下就发送通码,当一个键被释放就发送断码。
每个按键被分配了唯一的通码和断码。这样主机通过查找唯一的扫描码就可以测定是哪个
按键。每个键一整套的通断码组成了扫描码集。
虽然多数第二套通码都只有一个字节宽,但也有少数扩展按键的通码是两字节或四字
节宽。这类的通码第一个字节总是为 E0。
正如键按下通码就被发往计算机一样,只要键一释放断码就会被发送。每个键都有它
自己唯一的通码和断码。幸运的是你不用总是通过查表来找出按键的断码。在通码和断码
之间存在着必然的联系。多数第二套断码有两字节长。它们的第一个字节是 F0 ,第二个字
节是这个键的通码。扩展按键的断码通常有三个字节,它们前两个字节是 E0h,F0h ,最后
一个字节是这个按键通码的最后一个字节。下面列出了几个按键的第二套通码和断码:
6, %78
通码4第二套5 断码4第二套5
99 * *
9:9 7 7
$ 99 ; ;
" <& 7!" 7!"
: <9*9 7" 7"
一个键盘发送值的例子
33333通码和断码是以什么样的序列发送到你的计算机从而使得字符 出现在你
的字处理软件里的呢?因为这是一个大写字母,需要发生这样的事件次序:按
下 键=按下 键=释放 键=释放 键。与这些时间相关的扫描码如下:
键的通码 ,键的通码 $",键的断码 $",键的断
码 。因此发送到你的计算机的数据应该是:
$"$"
硬件电路组成模块:
基本电路组成模块:
接口硬件电路:
程序编写思路:
当接到《电子设计自动化》课程考核要求,要求以《 控制的 接
口电路设计》为题,完成 接口电路的设计,要实现的功能如下:
() 基本功能: 控制电路能够识别 键盘按键,并将按键
的 进制扫描码与所对应的 进制 *>> 码分别显示在两位
! 段数码管上;
() 液晶显示功能:将上述内容按下述方式显示在 液晶屏上:
第一行显示“ :??@, 第二行显 示: “ *>>:
??@;
($) 阐明 接口电路工作原理、控制电路实现方式,画出硬件电
路,编写控制电路程序,给出程序软件仿真结果或实测结果
根据要求,基本思路是将电路功能的实现分成五个模块:
() 数据接收控制电路:在时钟信号控制下,接收并提取串行的扫描
码,并将提取后的数据并行输出到扫描码译码电路
() 扫描码译码控制电路:将接收到的扫描码转换成 %>> 码
($) 液晶显示控制电路:将八位扫描码和 %>> 码分别显示在液晶显
示屏上
(") 七段数码管显示控制电路:将十六进制的扫描码和 %>> 码分别
显示在两位七段数码管上
(:) * 控制电路:将以上的四个模块用 语句连
接起来,实现完整的功能
程序编写流程:
在书写论文当中所举的例子均以 1 和 ( 为例。1 的通码是 $A.%>> 码是
"A.当想要输入 1,可以选择先按下 或 ,然后再按下 (。
(1)数据接收控制电路的实现:
该模块要实现的功能是接收键盘数据和时钟,实现串并转换并形成扫描码。
选择按下 键,然后按下 ( 的方式实现 1。
设计程序如下:
( B
#,CC",B
#,CC,B
4.%C.CCB
D/(#ECB
##CC)4!&55B
B
#
.D/CCB
FB
CCC)4!&5B
剩余20页未读,继续阅读
资源评论
- wonjiao2011-10-11谢谢楼主,很有帮助~~~硬件电路方面值得参考
kuaileboy1989
- 粉丝: 17
- 资源: 4
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功