打印

求一个完整的ps2协议的鼠标程序(C语言)

[复制链接]
6979|20
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
ls136112|  楼主 | 2009-4-10 11:10 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
大虾们,我又来了,呵呵。

现在需要用cy8c21434做一个ps2的协议,实在是不熟悉这个协议,21434内部又没有ps2模块,完全需要自己模拟,所以想请问一下哪位大虾有用c写的ps2的完整代码(有在cypress上写的更好,但是要端口模拟的,不是user module的),如果完整的不方便透露,那把ps2关键的代码发出来也可以,让小弟参考参考,下了很多ps2协议,看得不是很明白,看代码应该更好理解一些,谢谢了!

小弟邮箱:hanson.lee@live.hk
沙发
youngwg| | 2009-4-10 18:33 | 只看该作者

同问

麻烦也发我一份,我也在做,楼主可以的话交流一下阿!!!!vip_ywg@126.com

使用特权

评论回复
板凳
shanghai11!!| | 2009-4-11 09:45 | 只看该作者

这个好像有人卖

使用特权

评论回复
地板
jxin| | 2009-4-13 09:23 | 只看该作者

程序员网站

www.pudn.com 上有黑多哦

使用特权

评论回复
5
ls136112|  楼主 | 2009-4-13 10:02 | 只看该作者

谢谢了

正在努力coding ing!

使用特权

评论回复
6
小工程师| | 2009-4-15 17:06 | 只看该作者

CY网上有个类此应用的代码下载


CY网上有个Combi Mouse的参考设计,适合USB和PS/2协议,代码可以免费下载的,LZ可以前去看看。

http://www.cypress.com/?rID=14822

使用特权

评论回复
7
gary_zou| | 2009-4-25 18:26 | 只看该作者

移植PS2D用户模块

昨天刚试了一下把CY7C63XXX的PS2D模块移植到21434上使用,初见成效。好像此模块在撰写之时就预计此用途,有专门用于PSOC的宏控制,选择相应的管脚即可。至少封装了PS2的时序,但是API用起来好像有点怪,还在研究中。下周一再具体试试。

使用特权

评论回复
8
liufan2007| | 2009-4-26 21:12 | 只看该作者

看看我的回答!!!

我做过的,在网上找到的那个PS2中文版的资料,说的不清除,把协议里面重要的东西说的不清楚,不知道作者是否是有意的?!
我要说明一下,PS2最难的地方就在开机自检的通信过程,自检不通过,PC机不会接受键盘/鼠标的任何数据的!!!

不管你是学习好,还是做项目也好,我只能从做技术的角度去提示你一下:
1. 首先,发送和接受的时序要正确。
*2. 在鼠标/键盘发送一个数据给PC机后,键盘/鼠标释放了时钟线后,不要马上发第二个数据,这里就是最最重要的地方啦,等待什么呢?我说明一下,当发送完数据,键盘/鼠标释放时钟线后,PC机会把时钟线拉低!!!这点可能就是大家没有注意的地方啦,PC机拉低这段时间,就是在处理你刚才发送的一个数据,上面说等待,我想大家就知道是在等待什么啦吧,是的,就是等待PC释放时钟线,这个时候,你再发下一个数据,再等待,反正,只要是键盘/鼠标发送数据给PC机,就必须做这个事情。那么这个协议就很简单啦,把延时做好点,一般都是没有问题的,我想说一下,现在有些电脑主板如945的,不知道是不是PS2协议有变化,他会每隔120MS拉低时钟和数据线,如果是这样的PC机的话,注意一下程序就好,

当时,做一个项目,就有这个,在网上下载资料,写程序,总是过不了自检,公司的示波器也不能录制波形,后来,想一个办法,用PC机的录音软件来当示波器使用,自己用运放做一个缓冲整形,输入到电脑声卡的话筒口,录制的效果还不错,能读出比较精确的时间,当然,声卡的采集速率是有限的,不能采集很高频率的信号,刚好PS2的频率嗨不算高,反正也到极限啦,只能做低速的信号处理。。。。。

使用特权

评论回复
9
ls136112|  楼主 | 2009-4-27 17:36 | 只看该作者

我已经做出来了

呵呵,各位大虾好!!

目前已经做出来了!!效果还不错啦。我是像上面6楼和7楼的朋友说的方法,找到那个代码,然后移植的,看了半天的汇编,原来基本都不用改的,呵呵!!谢谢大家

使用特权

评论回复
10
ls136112|  楼主 | 2009-4-28 18:00 | 只看该作者

8楼的哥们

看了你的说明,茅厕突然就开了!!!感谢的!!!努力发奋中!!!谢谢哥们

使用特权

评论回复
11
gary_zou| | 2009-5-1 09:34 | 只看该作者

完善代码完成

其实后来发现PS2模块的最大缺陷就是不支持large memory programming,硬着头皮把大内存编程文档看完,修改函数class,page mode和相应的cur_pp,idx_pp,终于完成移植。用这个做了个ps2的触摸键盘,效果还不错。

使用特权

评论回复
12
CHENGLI| | 2009-5-1 14:56 | 只看该作者

gary_zou ,请教下您的

修改函数class,page mode和相应的cur_pp,idx_pp--这些您是怎么修改的,方便透露下吗
另外大内存编程文档在哪里呢

使用特权

评论回复
13
sdiv-75| | 2009-5-3 19:03 | 只看该作者

gary_zou ,请教下您的

gary_zou,请问下怎么联系到你

使用特权

评论回复
14
ls136112|  楼主 | 2009-5-8 09:26 | 只看该作者

gary_zou

哥们,你做到什么程度了?交流交流!!!

使用特权

评论回复
15
gary_zou| | 2009-5-10 11:52 | 只看该作者

to 12 楼的朋友

其实这文档就在帮助文档中,方便查看,上传上来了,有需要的可以看看。看完此文档你就知道怎么修改了。
相关链接:https://bbs.21ic.com/upfiles/img/20095/2009510114849692.pdf

使用特权

评论回复
16
gary_zou| | 2009-5-10 11:59 | 只看该作者

to 楼主

就是一个demo,用起来和一个ps/2键盘一样(当然,因为IO的关系,没有达到101或104键)。距离成熟产品还有距离,CSD的调试还需要考究一下。现在改用24894,准备用USB,再附带个PS/2接口。

使用特权

评论回复
17
lsqdesign| | 2009-5-21 15:34 | 只看该作者

8楼的哥们够牛

想一个办法,用PC机的录音软件来当示波器使用,自己用运放做一个缓冲整形,输入到电脑声卡的话筒口,
============
佩服,学习了!

使用特权

评论回复
18
zhouruibin| | 2010-8-20 13:50 | 只看该作者
fgsdfgsdfg

使用特权

评论回复
19
Go_PSoC| | 2010-8-20 17:37 | 只看该作者
楼上把去年的帖子挖出来了,呵呵,虽然是个老贴,但还不错。

使用特权

评论回复
20
rocky_bian| | 2010-8-21 22:58 | 只看该作者
的确很老了,ps2的协议 还算简单,自己模拟了下,基本上能实现功能。
但加了触摸功能后 要实现跟新思的触摸板的功能还是有点难度,一般report rate只能在70左右,

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

8

主题

35

帖子

0

粉丝