单片机接口技术的特点与应用设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
单片机接口技术的特点与应用设计摘要本文首先介绍了单片机接口技术的特点,之后对ps/2鼠标接口单片机设备进行扩展,主要完成了串口转ps/2鼠标硬件和软件结构设计。
关键词单片机;接口技术;ps/2
中图分类号tp39 文献标识码a 文章编号 1674-6708(2011)44-0208-02
接口是指各种不同特性部件的相互交接部分。
对于单片机,cpu 与其它外围电路和部件相互交接的部分就是接口。
接口又分为和软件部分硬件部分。
接口软件则是指为实现信息交换而设计的程序;硬件接口是指两个部件实体之间的连线和逻辑电路。
在现在所掌握的技术条件下,硬件接口都必须得到相应的接口软件的支持。
1 单片机接口技术的特点
单片机本身已经具备了一些常用的功能部件,而且我们知道单片机的应用主要是面向测控系统,因此,与通用计算机的接口技术相比较,单片机的接口技术有以下特点。
1)单片机的接口往往更侧重于人机接口和控制接口。
通用微机的人机界面是标准键盘和显示器,较之单片机的人机接口要复杂,同时功能也强得多。
pc机的键盘本身就是一个单片机系统,可以对100多个键进行扫描,并具有消除抖动和重键处理等功能。
另外,通用计算机不是面向测控应用的,因此通常不具备测控接口。
如果
需要,也必须使用扩展板;
2)单片机的接口往往都是由用户自行设计的,而且不会有统一的标准和规格。
而且同一种功能也可以采用不同的接口设计方案。
而对于通用微型计算机的接口部件一般是已经设计好的,用户也只能使用它所提供的功能,却不能更改其原有的设计。
因此,单片机的接口设计往往需要更多的技巧和经验;
3)单片机应用系统的规模通常都比较小,存储器的容量也不大。
因此,很少采用大容量的存储器,而且通常只采用静态存储器,很少采用动态存储器。
另外,也很少采用外部存储器(软盘、硬盘等)。
而在通用微型计算机中,通常都采用大容量的动态存储器,软盘和硬盘更是必不可少的大容量的外部存储器。
2 单片机接口技术的应用——ps/2接口技术
作为一个出现较早的输入接口,基于ps/2的开发技术已经相当成熟,但是这些成熟的技术主要掌握在部分主板开发商和鼠标键盘开发商手上。
而且ps/2协议的官方参考资料已经很难找到,所以本课题将以监控并分析ps/2鼠标在实际工作中的数据流并结合前人开发经验心得为主要开发依据,通过不断调试改进来完成ps/2
鼠标接口的开发。
ps/2 鼠标和键盘履行一种双向同步串行协议。
换句话说每次数据线上发送一位数据并且每在时钟线上发一个脉冲就被读入。
键盘/鼠标可以发送数据到主机而主机也可以发送数据到设备,但主机
总是在总线上有优先权,它可以在任何时候抑制来自于键盘/鼠标的通讯,只要把时钟拉低即可。
数据传输过程中的时钟始终都由设备提供,如果主机要想设备发送数据就必需先告诉设备产生一个时钟信号。
2.1硬件结构基本设计
ps/2接口与单片机可以直接连接,将单片机的vcc和gnd分别与ps/2接口的4号和3号针脚连接,实现对设备的供电。
将p2.0和p2.1分别和ps/2接口的1号和5号针脚连接,作为数据线和时钟线实现单片机到ps/2接口的信号传输。
在单片机的p2.2-p2.7引脚上连接六个按键,分别用来模拟鼠标的上下左右移动以及鼠标的左右键。
该模块用来测试ps/2接口设备的基本功能。
p1口接8个发光二极管,在调试和测试中显示相关内容。
p3.0-p3.1接串口模块,实现单片机和pc的通信,该模块用于扩展和测试。
下面介绍ps/2接口设备与pc通过串口的连接:
这个模块是一个扩展和测试模块,用来实现串口转ps/2接口,并且可以测试ps/2接口的功能和性能。
通过串口将pc机同ps/2接口设备连接,在pc机上编写测试软件,测试软件通过串口向单片机发送一定的鼠标数据报,设备将这些数据报转发到ps/2接口,这样使得调试更加方便灵活,同时也实现了本课题的ps/2接口设备的一个扩展应用。
51单片机有一个全双工的串行通讯口,所以单片机和电脑之间可以进行串口通讯。
但是电脑的串口是rs232电平的,而单片机的串口是ttl电平的,两者之间必须有一个电平转换电路,我们采用了三线制连接串口,也就是说和电脑的9针串口只连接其中的3根线:第5脚的gnd、第2脚的rxd、第3脚的txd。
这是最简单的连接方法。
2.2 软件结构设计
ps/2接口设备的软件主要包括六个部分:ps/2接口驱动模块,reset模式处理模块,stream模式处理模块,显示处理模块,按键处理模块,主程序模块。
各模块的功能如下:
1)ps/2接口驱动模块:实现对ps/2接口的基本操作,包括向ps/2口发送一个字节数据,从ps/2口接收一个字节数据等操作的实现;
2)reset模式处理模块:完成reset模式操作;
3)stream模式处理模块:完成stream模式操作,提供发送一个完整鼠标数据报的函数;
4)显示处理模块:提供用于调试和测试的显示函数;
5)按键处理模块:用六个按键分别模拟鼠标的上下左右移动和左右键,当按下某个按键时产生相应的鼠标数据报,并调用stream 模式处理模块中的发送鼠标数据报函数,数据包发送到主机;
6)主程序模块:协调各模块稳定运行。
2.3 ps/2鼠标接口设备状态转换
通过分析ps/2鼠标在实际使用过程中的信号了解到,在鼠标上电一定时间后主机会向鼠标发送多次复位信号,鼠标上电机进入reset模式。
reset模式下主机会对鼠标进行检测和配置,这个过程也被叫做鼠标的初始化。
主机在重新启动和休眠唤醒时也会让鼠标进入reset模式并初始化鼠标。
stream模式下设备可以向主机发送鼠标数据报,当然主机在这个时期也可能短暂的抑制鼠标数据报的发送。
参考文献
[1]黎爱琼,陈家林.基于嵌入式微处理器的ps/2鼠标驱动设计[j].测控技术,2006,2:71-74.
[2]沈建华.嵌入式设备鼠标接口的设计与实现[j].电子技术应用,2003,11:12-14.。