查看“PS/2”的源代码
←
PS/2
跳到导航
跳到搜索
因为以下原因,您没有权限编辑本页:
您请求的操作仅限属于该用户组的用户执行:
用户
您可以查看和复制此页面的源代码。
{{Stub}} PS/2是一种串行通信,通常用于用户输入设备 (键盘,鼠标,条形码扫描仪等)。 它涉及控制器 (例如PC兼容系统上的 “8042芯片”) 、本身通信的机械和电气细节以及一个相关设备。 == 历史 == 最初 (1981) IBM为XT键盘使用了一种不同类型的串行通信。 较旧的接口不是双向的-设备可以向控制器发送数据,但控制器不能向设备发送数据。 后来 (1984) IBM用更新的用于AT键盘的双向接口替换了旧的串行接口。 它开始允许主机向设备发送命令。 后来 (1987) IBM扩展了 “AT” 标准以创建 “PS/2” 标准。 PS/2标准在电气上与较旧的AT标准相同 (仅使用不同的插头/连接器)。 最终PS/2被USB取代,但是它仍然相当普遍 (为了兼容性,某些系统具有使USB设备显示为PS/2设备的仿真层)。 == 协议 == 下面是PS2连接器的示意图。 {| |[[Image:PS2_connector.png|frame|right]] |} 串行通信通常以10 khz至16.7 KHz的波特率运行。 设备发送到控制器的每个字节都作为包含11位的数据包传输。 “设备到主机” 数据包具有以下位: * 1起始位 (始终为0) * 8个数据位 (最低有效位优先) * 1奇偶校验位 (奇数奇偶校验) * 1个停止位 (始终为1个) 控制器发送到设备的每个字节都作为包含12位的数据包传输。 “主机到设备” 数据包具有以下位: * 1起始位 (始终为0) * 8个数据位 (最低有效位优先) * 1奇偶校验位 (奇数奇偶校验) * 1个停止位 (始终为1个) * 1个确认位 == 驱动程序模型 == PS/2端口控制器有各种类型; 包括 “bit banging” 通用IO,内置于系统芯片组的特殊支持和附加PCI卡。 还有各种类型的PS/2设备 (键盘,鼠标,触摸板,条形码扫描仪,磁卡/条纹读取器,指纹读取器等)。 显然,你不想在每个不同的PS/2控制器驱动程序中重复每种类型的PS/2设备的代码。 你想要将它们独立实现,以便PS/2设备的任何驱动程序都可以与任何PS/2控制器驱动程序对话 (并且可以将PS/2设备的代码移植到不同的体系结构而无需进行任何更改)。 这比较简单 - PS/2控制器驱动程序只需要能够发送和接收字节 (没有波特率控制或任何东西) 和一个简单的 “字节流” 方法就足够了。 == 另见 == === 文章 === *[["8042" PS/2 Controller]] *[[PL050 PS/2 Controller|PL050 PS/2 Controller (ARM)]] *[[PS/2 Keyboard]] *[[PS/2 Mouse]] === 外部链接 === *[http://www.versalent.biz/ps2facts.htm PS2 Facts and Info from Versalent] *[http://www.computer-engineering.org/ps2protocol/ www.computer-engineering.org/ps2protocol]
本页使用的模板:
模板:Stub
(
查看源代码
)
返回至“
PS/2
”。
导航菜单
个人工具
登录
命名空间
页面
讨论
变体
已展开
已折叠
查看
阅读
查看源代码
查看历史
更多
已展开
已折叠
搜索
导航
首页
最近更改
随机页面
MediaWiki帮助
工具
链入页面
相关更改
特殊页面
页面信息