CSDN论坛 > Linux/Unix社区 > 应用程序开发区

难题,希望帮小弟一把,感激不尽:串口键盘驱动 [问题点数:0分]

Bbs1
本版专家分:16
结帖率 100%
CSDN今日推荐
匿名用户不能发表回复!
其他相关推荐
STM32F103C8 Serial(UART) to USB HID Keyboard Mouse 串口转USB键盘鼠标
STM32F103C8 Serial(UART) to USB HID Keyboard Mouse 串口 转 USB键盘鼠标 (1) 使用Composite Device 组合(复合)设备 (1.1) 1个Device -> 1个 Configuation -> 2个Interfance (Keyboard & Mouse) (1.2) Keyboard Interfance -> HID (boot mode) -> 2个Endpoint(IN_0x81 & OUT_0x01) -> KeyboardReportDescriptor(不使用Report ID) (1.3) Mouse Interfance -> HID (boot mode) -> 1个Endpoint(IN_0x82) -> MouseReportDescriptor(不使用Report ID) (1.4) 使用HID boot模式, 不使用Report ID, 以便兼容在 计算器设定BIOS模式 中的操作 (2) 串口接收 命令 (2.1) UART协议: 115200, n, 8, 1 (2.2) 1帧发送字符串格式, 以 '{'开始; '}'结束; ','分隔. 共9个10进制数字 例如: {1,2,3,4,5,6,7,8,9} (2.3) 第9位 区分 Keyboard(64) 或是 Mouse(128) 命令 例如: {0,0,0,0,0,0,0,0,64} --- 发送Keyboard命令 {0,0,0,0,0,0,0,0,128} --- 发送Keyboard命令 (3) 发送Keyboard键盘命令时 : 第1~8位 分别如下 (3.1) 第1位 : Key_Release = 0x00, Left_Control = 0x01, Left_Shift = 0x02, Left_Alt = 0x04, Left_GUI = 0x08, Right_Control = 0x10, Right_Shift = 0x20, Right_Alt = 0x40, Right_GUI = 0x80, 例如: {8,0,0,0,0,0,0,0,64} --- 发送 Win_Key键 {128,0,0,0,0,0,0,0,64} --- 发送 WinApp_Key键 {32,0,0,0,0,0,0,0,64} --- 发送 右Shift键 (3.2) 第2位 : 保留,不使用,一律填0 (3.3) 第3~8位 : 可以同时发送6个Keyboard按键 例如: {0,0,4,5,6,7,8,9,64} --- 发送 'abcdef'键 {2,0,4,5,6,7,8,9,64} --- 按住 左Shift 发送 'abcdef'键 => 'ABCDEF' {0,0,0,5,0,7,0,9,64} --- 发送 'bdf'键 (0表示 无按键) 按键码 可参阅: (HID Usage ID) http://download.microsoft.com/download/1/6/1/161ba512-40e2-4cc9-843a-923143f3456c/translate.pdf https://www.hiemalis.org/~keiji/PC/scancode-translate.pdf https://gist.github.com/MightyPork/6da26e382a7ad91b5496ee55fdc73db2 http://www.usb.org/developers/hidpage/Hut1_12v2.pdf (4) 发送Mouse鼠标命令时 : 第1~8位 分别如下 (4.1) 第1位 : Button_Release = 0x00, Left_Button = 0x01, Right_Button = 0x02, Mid_Button = 0x04, 例如: {1,0,0,0,0,0,0,0,128} --- 点击 左键 {2,0,0,0,0,0,0,0,128} --- 点击 右键 {4,0,0,0,0,0,0,0,128} --- 点击 中键 (4.2) 第2~4位 : 移动(X,Y), 滚轮(Wheel) X: -127~127:左右移动鼠标 Y: -127~127:上下移动鼠标 Wheel: -127~127:上下转动滚轮 例如: {0,20,-10,0,0,0,0,0,128} --- 鼠标 右移20,上移10 {0,0,0,-30,0,0,0,0,128} --- 滚轮-30 (4.2) 第5~8位 : 保留,不使用,一律填0
Linux 串口终端调试工具minicom
minicom是一个串口通信工具,就像Windows下的超级终端。可用来与串口设备通信,如调试交换机和Modem等,它的使用完全依靠键盘的操作。 一、安装:Linux各发行版因软件管理方式不同而不同,先通过软件管理从自己的软件仓库进行搜索安装。二、查看串口设备及文件权限1、linux下一切皆是文件,用户的所有操作都是对文件的操作,对串口设备操作也是如此,我们应该先确认自己对该文件有没有读写权限。o...
厉害了,我的谷歌小弟
【回复“1024”,送你一个特别推送】今天这篇文章是我们优质博客推荐系列的第三篇,这个系列可以说虽然流量不多,但是反响很好,很多人都非常喜欢。今天推荐的这个博主,虽然用的不是独立博客,但是即使是在 CSDN 上,也是非常厉害的了,不仅质量好,而且很高产。今天我们推荐的这个博主的博客叫:谷哥的小弟,博客标题是:坚持原创,热衷分享;积累技术,沉淀生活。这位博主到底有多棒呢?一起来看看。博客访问量:18
线性代数中矩阵相乘如何计算
线性代数中矩阵相乘如何计算 简单点:就是行*列 新矩阵的  a b c d  a=左边矩阵第一行*右边矩阵的第一列 b=左边矩阵第一行*右边矩阵的第二列 c=左边矩阵第二行*右边矩阵的第二列 d=左边矩阵第二行*右边矩阵的第二列 n个的情况a[i][j] b[i][j] 左边矩阵的行的每一个元素 与右边矩阵的列的对应的元素一一相乘然后加到一起形成新矩阵中的a
一道难题 nyoj902
描述 GreyAnts 遇到了一道难题:     给定n个数{A1, A2, …… ,An}。     对于每次询问 k , 求出 ( (A1*A2*A3*……*An)/Ak )%mod; 请你帮忙解决它。 ps: mod 为素数。 #include long long int a[100005],b[100005]; int main() { int n
Linux多串口驱动
问题描述:机器集成了13个串口,linux操作系统启动后,只能识别到4个串口且无法使用。 是否解决:已基本解决。 问题分析:     经测试,该ATM定制机使用的串口控制芯片为通用串口控制器8250系列的16550A型号。该芯片内置3根地址线寻址范围达8字节,具有10个可编程寻址寄存器(通过地址复用),支持4级中断控制,收发双缓冲寄存器,拥有16字节fifo缓存。     8250系列芯片
USB硬件 键盘鼠标控制器 Lao-UKM V3.1 易语言串口通讯简单例子 .
USB硬件 键盘鼠标控制器 Lao-UKM V3.1 易语言串口通讯简单例子 . 易语言5.11下, 9600波特率 com2 先打开端口,再发送数据, 鼠标移动命令: 02 00 f6 00 00 5位 16进制码 易语言我转换成10进制发送的:02 00 246 00 00 我发现我的win7 32位系统下, e语言 发送数据会卡死, e语言自带的串口通讯例子,win7下也不好使, 我特意装了个xp 32位系统,完全好使,验证了的确是兼容性问题,表示无语。 这个仅供参考,大家一起研究,我不会e语言,表示对e语言,很无奈。 大家一起研究吧。。。。。。 说白了,就是 往串口发送16进制命令, 接收到串口的01,就是说明发送成功。 2013。06。05 laorenshen@163.com http://blog.csdn.net/laorenshen/article/details/9031915
Android牛人博客集合
最近看到别人两个月时间锻炼成安卓大神,真心牛逼,没玩两点多睡,向他人学习啊!http://blog.csdn.net/u011068702/article/category/2541183----两个月学会安卓并且技术还是大神的博客,http://www.cnblogs.com/rollenholt----这是一个大二的学生的博客,自叹不如,http://my.csdn.net/lmj623565
verilog语言RS232串口发送模块设计——采集ps2键盘数据在串口调试工具显示
关于rs232串口的协议和接口已经在《verilog语言RS232串口接收模块设计》这篇博客中有讲述:http://blog.csdn.net/baijingdong/article/details/20460019, 本设计结合前边做的几次工程,包括ps2键盘驱动,数码管输出等完成该设计。 该模块功能可以完成对ps2键盘的数据采集,采集数据在xilinx EXCD-1开发板的 数码管输出(输
宿命的PSS
宿命的PSS 题目描述 最小生成树P.S.S在宿命的指引下找到了巫师Kismi。P.S.S希望Kismi能帮自己变成一个完全图。Kismi由于某些不可告人的原因,把这件事交给了你。 PS: 可以保证,这个最小生成树对于最后求出的完全图是唯一的。输入 输入的第一行是一个整数n,表示生成树的节点数。 接下来有n-1行,每行有三个正整数,依次表示每条边的端点编号和边权。 (顶点的边号在1-n之间
关闭
关闭