社区
Linux_Kernel
帖子详情
linux鼠标驱动问题
Shane_Song
2010-10-17 10:36:11
在做用c开发界面的一个项目,请问怎么添加鼠标功能?
键盘响应用key表示,那么鼠标的响应接口该怎么表示?
还有要怎么设计一个从底到上的思路?
现在一片混乱,菜鸟啊,请教高手指点!谢谢!
...全文
388
15
打赏
收藏
linux鼠标驱动问题
在做用c开发界面的一个项目,请问怎么添加鼠标功能? 键盘响应用key表示,那么鼠标的响应接口该怎么表示? 还有要怎么设计一个从底到上的思路? 现在一片混乱,菜鸟啊,请教高手指点!谢谢!
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
15 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
thunder__god
2011-07-06
打赏
举报
回复
markmarkmarkmarkmark
Shane_Song
2010-10-20
打赏
举报
回复
非常有用,谢谢小贼这么热心
方便的话能留个qq么,呵呵
[Quote=引用 12 楼 dfysy 的回复:]
呵呵,关于这个USB鼠标驱动的问题,我想如果你的板子有USB Host的话,比如三星的很多板子,如S3C2410的板子,应该在内核编译的时候打开USB HID Mouse的选项应该就可以了,因为USB HID Mouse是很通用的东西了,应该不需要单独写驱动了,我看到内核目录下也有专门的USB HID目录,但是我没用过这种方式。我以前用过友善之臂的SBC2410的USB鼠标驱动是一个模块,使用i……
[/Quote]
dfysy
2010-10-20
打赏
举报
回复
呵呵,关于这个USB鼠标驱动的问题,我想如果你的板子有USB Host的话,比如三星的很多板子,如S3C2410的板子,应该在内核编译的时候打开USB HID Mouse的选项应该就可以了,因为USB HID Mouse是很通用的东西了,应该不需要单独写驱动了,我看到内核目录下也有专门的USB HID目录,但是我没用过这种方式。我以前用过友善之臂的SBC2410的USB鼠标驱动是一个模块,使用insmod加载以后插上USB鼠标就OK了。不管是USB还是PS2的鼠标,一般都是映射到的/dev/input/mice,至于如何获取数据,你可以看看这篇文章:
http://www.linuxidc.com/Linux/2008-05/12893.htm
至于图形系统里面的实现,一般处理键盘或鼠标输入的是一个单独的线程或进程,当收到鼠标或者键盘有输入时会向专门负责UI绘制的线程或进程发送消息,然后那个UI的线程或进程就会重绘界面。
希望对你有帮助。
[Quote=引用 11 楼 shane_song 的回复:]
谢谢小贼
板子上没有ps2口,但是有usb接口,那么usb鼠标驱动程序是在网上下吗?我新手,自己可写不来。
对于minigui,我想是想在pc上界面里实现鼠标功能,先不管触摸屏,那pc里的系统肯定是有ps2鼠标驱动的,我该怎么参考minigui将系统的鼠标显示在我的界面上呢?
好菜啊,今天恶补了设备驱动的基础知识,还是一片迷茫啊!
引用 9 楼 dfysy 的回复:
……
[/Quote]
dfysy
2010-10-20
打赏
举报
回复
呵呵,好多年不用QQ了,相互有东西交流可以通过CSDN短信交流
[Quote=引用 13 楼 shane_song 的回复:]
非常有用,谢谢小贼这么热心
方便的话能留个qq么,呵呵
引用 12 楼 dfysy 的回复:
呵呵,关于这个USB鼠标驱动的问题,我想如果你的板子有USB Host的话,比如三星的很多板子,如S3C2410的板子,应该在内核编译的时候打开USB HID Mouse的选项应该就可以了,因为USB HID Mouse是很通用的东西了,应该不需要单独写驱动了,我看到内核目录下也有专门的……
[/Quote]
Shane_Song
2010-10-19
打赏
举报
回复
谢谢小贼
板子上没有ps2口,但是有usb接口,那么usb鼠标驱动程序是在网上下吗?我新手,自己可写不来。
对于minigui,我想是想在pc上界面里实现鼠标功能,先不管触摸屏,那pc里的系统肯定是有ps2鼠标驱动的,我该怎么参考minigui将系统的鼠标显示在我的界面上呢?
好菜啊,今天恶补了设备驱动的基础知识,还是一片迷茫啊!
[Quote=引用 9 楼 dfysy 的回复:]
首先你是否有一个鼠标的驱动,如果没有,就需要自己移植了,如果板子上有USB就移植USB鼠标的驱动就OK了,如果是用I/O模拟PS2那就要自己写驱动了。 MiniGUI其实也是使用系统现成的驱动的,它只是通过HAL把系统现成的驱动的数据转换成他要求的数据格式而已,如果系统没有鼠标驱动,MiniGUI的鼠标也用不了。标准的鼠标驱动只要先open,然后read就OK了,好像是三个字节,头两个字节是x、……
[/Quote]
Shane_Song
2010-10-19
打赏
举报
回复
不好意思,我还有些不明白
按我现在的知识面理解:我移植鼠标驱动只是给应用程序(也可以是界面程序)一个接口,但是通过什么具体函数来调用这些接口,使得界面里面有鼠标移动呢?
[Quote=引用 8 楼 deep_pro 的回复:]
好吧,只能说你们老师还是挺狠的
不过即使如此,也完全不需要你去写鼠标驱动本身
只要移植Linux内核时添加usb鼠标支持即可
你只需要从鼠标设备节点读取出鼠标操作即可
以前的消息响应定义一个int类型key作为与键盘上的键对应,要是用鼠标不能只有一个变量表示响应吧?这个类似于key的某某是什么(应用鼠标后)?(指针指向鼠标结构体)?
==================……
[/Quote]
dfysy
2010-10-19
打赏
举报
回复
首先你是否有一个鼠标的驱动,如果没有,就需要自己移植了,如果板子上有USB就移植USB鼠标的驱动就OK了,如果是用I/O模拟PS2那就要自己写驱动了。 MiniGUI其实也是使用系统现成的驱动的,它只是通过HAL把系统现成的驱动的数据转换成他要求的数据格式而已,如果系统没有鼠标驱动,MiniGUI的鼠标也用不了。标准的鼠标驱动只要先open,然后read就OK了,好像是三个字节,头两个字节是x、y方向的移动,最后一个是点击,有点记不清了。
deep_pro
2010-10-18
打赏
举报
回复
好吧,只能说你们老师还是挺狠的
不过即使如此,也完全不需要你去写鼠标驱动本身
只要移植Linux内核时添加usb鼠标支持即可
你只需要从鼠标设备节点读取出鼠标操作即可
以前的消息响应定义一个int类型key作为与键盘上的键对应,要是用鼠标不能只有一个变量表示响应吧?这个类似于key的某某是什么(应用鼠标后)?(指针指向鼠标结构体)?
==================
这个就跟你的源代码实现相关了,不能指望我能帮你了。
Shane_Song
2010-10-18
打赏
举报
回复
补充:
以前的消息响应定义一个int类型key作为与键盘上的键对应,要是用鼠标不能只有一个变量表示响应吧?这个类似于key的某某是什么(应用鼠标后)?(指针指向鼠标结构体)?
Shane_Song
2010-10-18
打赏
举报
回复
谢谢,那我说了噢,呵呵
在跟老师做一个项目,arm板linux操作系统,不用qt或者minigui,但需要做出图形界面,最终能够有触摸屏功能,并且有鼠标显示根据触点移动。
老师手上有以前项目编写的库(比如说光标显示、绘图库、编辑框按钮之类控件等),没有鼠标和触摸屏功能,但可以通过键盘响应。
你说用input子系统注册inputdevice,我看minigui里面是这么实现鼠标功能的,能不能把一些源码移植过来用?
该怎么做?求指导....谢谢啦
[Quote=引用 5 楼 deep_pro 的回复:]
好了,你把你的需求尽可能详细地讲出来
没准根本不需要写驱动
从硬件到软件应用都讲
[/Quote]
deep_pro
2010-10-18
打赏
举报
回复
好了,你把你的需求尽可能详细地讲出来
没准根本不需要写驱动
从硬件到软件应用都讲
Shane_Song
2010-10-18
打赏
举报
回复
还要牵涉到interrupt?晕 中断完全不懂
[Quote=引用 2 楼 zmlovelx 的回复:]
1楼正解 input device 注册input device 然后在interrupt将按键上报给input device
[/Quote]
Shane_Song
2010-10-18
打赏
举报
回复
我对这个问题解决还没有明确的思路,所以讲的有点乱。
现在是没有api,但是要让我纯手写一个鼠标驱动很困难,
能给指点一下我该怎么做?
[Quote=引用 1 楼 deep_pro 的回复:]
在做用c开发界面的一个项目,请问怎么添加鼠标功能?
======================
难道不用x,不用gtk ,纯自己写啊,否则都提供有api
键盘响应用key表示,那么鼠标的响应接口该怎么表示?
================================
无论键盘鼠标都是由input子系统输入,输出到设备节点,读取后解析即可
[/Quote]
deep_pro
2010-10-17
打赏
举报
回复
在做用c开发界面的一个项目,请问怎么添加鼠标功能?
======================
难道不用x,不用gtk ,纯自己写啊,否则都提供有api
键盘响应用key表示,那么鼠标的响应接口该怎么表示?
================================
无论键盘鼠标都是由input子系统输入,输出到设备节点,读取后解析即可
帅得不敢出门
2010-10-17
打赏
举报
回复
1楼正解 input device 注册input device 然后在interrupt将按键上报给input device
Linux
USB
鼠标
驱动
入门以及处理流程
Linux
USB
鼠标
驱动
入门以及处理流程
十五、
Linux
驱动
之USB
鼠标
驱动
结合十四、
Linux
驱动
之USB
驱动
分析中的分析,我们开始写一个USB
鼠标
驱动
。 USB的
驱动
可以分为3类:SoC的USB控制器的
驱动
,主机端USB设备的
驱动
,设备上的USB Gadget
驱动
,通常,对于USB这种标准化的设备,内核...
Linux
USB
驱动
-
鼠标
驱动
4.1.USB设备
驱动
Linux
USB核心层使用struct usb_driver结构体表示一个USB设备
驱动
,编写USB设备
驱动
时,主要实现probe和disconnect函数,分别用于初始化和释放软硬件资源,设备和
驱动
匹配成功后,probe函数被调用...
linux
环境下模拟
鼠标
键盘
驱动
在
Linux
环境下编写模拟键盘和
鼠标
驱动
的指南在虚拟化环境(如 KVM)中,将硬件功能转化为软件功能,并通过 API 调用进行控制,可以实现对键盘和
鼠标
的模拟
驱动
。本文将详细介绍模拟键盘和
鼠标
驱动
的原理、实现方法...
Linux_Kernel
4,465
社区成员
17,462
社区内容
发帖
与我相关
我的任务
Linux_Kernel
Linux/Unix社区 内核源代码研究区
复制链接
扫一扫
分享
社区描述
Linux/Unix社区 内核源代码研究区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章