基于FPGA的PS/2鼠标接口设计方法及其应用
Byte1中的Bit0、Bit1、Bit2分别表示左、右、中键的状态,状态值0表示释放,1表示按下;Byte2和Byte3分别表示X轴和Y轴方向的移动计量值,是二进制补码值;Byte4的低四位表示滚轮的移动计量值,也是二进制补码值,高四位作为扩展符号位。这种数据包由带滚轮的三键三维鼠标产生,若是不带滚轮的三键鼠标,产生的数据包没有Byte4,其余的相同。
VGA信号时序
图4所示是计算机VGA(640×480,60Hz)图像格式的信号时序图,其点时钟DCLK为25.175MHz,场频为59.94Hz。图中,Vsync为场同步信号,场周期Tvsync为16.683mS,每场有525行,其中480行为有效显示行,45行为场消隐期。场同步信号Vs每场有一个脉冲,该脉冲的低电平宽度twv为63μS(2行)。场 消隐期包括场同步时间twv、场消隐前肩tHV(13行)和场消隐后肩tVH(30行),共45行。行周期THSYNC为31.78μS,每显示行包 括800点,其中640点为有效显示,160点为行消隐期(非显示 区)。行同步信号Hs每行有一个脉冲,该脉冲的低电平宽度tWH为3.81μS(即96个DCLK);行消隐期包括行同步时间tWH,行消隐前肩tHC(19个DCLK)和行消隐后肩tCH(45个DCLK),共160个点时钟。复合消隐信号是行消隐信号和场消隐信号的逻辑与,在有效显示期复合消隐信号为高电平,在非显示区域它是低电平。
设计实现
实现功能
1、 用FPGA实现PS/2鼠标接口。
2、鼠标左键按下时十字形鼠标图象的中间方块改变颜色,右键按下时箭头改变颜色。
3、 Reset按键:总复位。
设计原理
主机复位后,首先向鼠标发送初始化命令(0xf4)。当鼠标收到命令字后会给出一个应答字节(0xfa),主机根据应答字节来判断鼠标是否正确应答。如果应答正确则接收鼠标数据包,然后从接收到的数据包中获得鼠标位置及状态数据,并输出给显示模块。显示模块在CRT上显示出当前鼠标的状态和位置,否则,停止处理。如图5。
评论