在装配中连接键盘控制器

时间:2013-04-10 22:37:51

标签: assembly keyboard

我正在尝试通过端口与我的键盘控制器连接 64h60h。我编写了与 Borland兼容的汇编代码 Turbo Assembler(TASM) Linker(TLINK)来做。 我试图获得有关键盘接口的足够信息 控制器来自网络上的文章,但遗憾的是没有成功 到目前为止,让我的代码获得预期的结果。

以下是我已经完成的工作的摘要:

  1. 我通过读取端口64h读取了状态寄存器并得到了该字节    (00010100b)最初。
  2. 在向控制器发送任何命令之前,我已经包含了    等待 IBF 标志(状态寄存器的位1)的循环,以确保它已被清除    (IBF = 0)
  3. 在上面描述的循环之后,我发送了一个简单的命令    AAh (控制器自检)ADh (禁用键盘接口)    控制器通过端口64h
  4. 发送命令后包含另一个循环以确保和    确定 OBF 标志(状态寄存器的位0)设置为(OBF = 1)
  5. 问题出现在这个阶段,当我检查时 通过读取端口64h 状态寄存器我看不到 据我所知,控制器不会更新 OBF IBF 至少 OBF 应该是我从状态寄存器得到的 是字节(00011100b),表示命令已发送到 控制器设置为“位3”。虽然只是在命令ADh (禁用 键盘接口)我看到我的键盘停止响应。

    我使用的系统信息:

    • 奔腾4,
    • Windows XP SP3,
    • Windows命令提示符(cmd),
    • Borland Turbo Assembler(TASM)和Linker(TLINK)第5版,
    • 带有PS / 2接口的FCR-8900键盘,
    • USB鼠标通过USB-2-PS / 2连接到第二个PS / 2端口,

    PS / 2端口 6针DIN 我相信并检查了两倍的时间。

    尽管有这些PS / 2端口,我还是使用了几个片段 报告我的系统作为 AT系统的网络,我 也无法理解。

    感谢任何有任何经验或帮助的人 谢谢......

0 个答案:

没有答案