社区
Linux_Kernel
帖子详情
linux鼠标驱动问题
Shane_Song
2010-10-17 10:36:11
在做用c开发界面的一个项目,请问怎么添加鼠标功能?
键盘响应用key表示,那么鼠标的响应接口该怎么表示?
还有要怎么设计一个从底到上的思路?
现在一片混乱,菜鸟啊,请教高手指点!谢谢!
...全文
390
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
鼠标
驱动
1. 如何编写USB
鼠标
驱动
结合十四、
Linux
驱动
之USB
驱动
分析中的分析,我们开始写一个USB
鼠标
驱动
。 USB的
驱动
可以分为3类:SoC的USB控制器的
驱动
,主机端USB设备的
驱动
,设备上的USB Gadget
驱动
,通常,对于USB这种标准化的设备,内核已经将主机控制器的
驱动
编写好了,设备上的Gadget
驱动
通常只运行固件程序而不是基于
Linux
, 所以
驱动
工程师的主要...
linux
环境下模拟
鼠标
键盘
驱动
在
Linux
环境下编写模拟键盘和
鼠标
驱动
的指南在虚拟化环境(如 KVM)中,将硬件功能转化为软件功能,并通过 API 调用进行控制,可以实现对键盘和
鼠标
的模拟
驱动
。本文将详细介绍模拟键盘和
鼠标
驱动
的原理、实现方法、示意代码,以及在 KVM 上运行的思路和工作流。目录概述模拟键盘和
鼠标
驱动
的目标是将硬件输入设备的功能转化为软件接口,使得应用程序可以通过 API 调用来模拟输入操作。
嵌入式
Linux
—— usb
鼠标
驱动
声明:本文章是看完韦东山老师的usb
鼠标
驱动
视频所写的关于usb
鼠标
的
驱动
,因此如果有相关内容与其他网友相同,敬请原谅。同时我还是想说本文只是总结自己的学习所得,同时也将自己所学到的知识写下来,所以如果这篇文章对你有帮助,那是我的荣幸。 在介绍
驱动
程序前我想向大家介绍一下usb_bus_type(usb总线
驱动
类),内核中有不同的总线类型,不同的总线有不同的匹配方式,如我们前面所学的platfo...
Linux
USB
驱动
-
鼠标
驱动
1.概述 通用串行总线(USB)用于连接主机和外围设备。USB总线采用拓扑结构,USB主机和USB设备的连接构成了一颗树,树的结点为USB节点或USB集线器(HUB),USB集线器(HUB)用于扩展设备接口,一个集线器(HUB)可接多个USB设备或多个集线器。主机侧的USB节点为根节点,所有子节点都连接在根节点集线器(ROOT HUB)上,根节点由USB主机控制器(USB Host Controller)控制,设备侧的节点为子节点,由USB设备控制器(USB Device Controller)控制。在US
Linux_Kernel
4,466
社区成员
17,461
社区内容
发帖
与我相关
我的任务
Linux_Kernel
Linux/Unix社区 内核源代码研究区
复制链接
扫一扫
分享
社区描述
Linux/Unix社区 内核源代码研究区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章