From 1e5cb54c00c02e8d79d0ac51b1c16887b32fb854 Mon Sep 17 00:00:00 2001 From: Alex-create-beep <2965312221@qq.com> Date: Wed, 23 Sep 2026 22:50:29 +0800 Subject: [PATCH] =?UTF-8?q?docs(readme):=20=E8=AE=B0=E5=BD=95=E4=B8=8A?= =?UTF-8?q?=E6=9D=BF=E5=AE=9E=E6=B5=8B=E5=87=BA=E6=9D=A5=E7=9A=84=20PS/2?= =?UTF-8?q?=20=E6=96=B9=E5=90=91=E7=BA=A6=E5=AE=9A=EF=BC=88=E9=BC=A0?= =?UTF-8?q?=E6=A0=87=20dy=20=E5=8F=96=E8=B4=9F=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 上板已经确认:不定负号的表现就是“左右正常、上下反向”,不是解码错; 另外把“键鼠静止时一个字节都不发”写成显式提醒,避免再被误判成硬件坏。 --- README.md | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/README.md b/README.md index 6004fd3..74d0ee9 100644 --- a/README.md +++ b/README.md @@ -347,6 +347,15 @@ Nexys4DDR 右上角那个 **USB HOST** 口不是给 FPGA 直连的 USB:板上 进 `saolei/sw/isr.c`。不想要 PS/2 就把顶层参数 `USE_PS2_MOUSE` 设为 0(只剩板载 5 向按键);PS/2 接收器的帧格式/校验有专门的几秒钟自测(见下文“回归测试”)。 +两条**上板实测**出来的方向约定(都值得写进报告): + +- **鼠标的 dy 要取负**:PS/2 的原生约定是「正 dx = 右、**正 dy = 鼠标上移**」, + 而软件里「正 dx = 列 +1、**正 dy = 行 +1(向下)**」(板载按键 BTND 就是 +8), + 所以 `cpu21_ps2_mouse.v` 在拼包时把 dy 取负、dx 不动。不定这个负号的表现就是 + **左右正常、上下反向** —— 不是解码错。 +- **键鼠静止时一个字节都不发**,所以“插上不动没反应”是正常的,必须一边按键/ + 移鼠标一边看 LED。 + ### 时钟:分频比怎么选(`CLK_DIV` / `CLK_DIV_INTRUPT`) 乘除法原本是 ALU 里的组合运算(`a*b`、`a%b`),实测关键路径约 94 ns(325 级逻辑、