单片机电脑计算机键盘设计,客制pc小键盘,CH552单片机HID键盘,电脑多媒体小键盘...
使用沁恒CH552G 51单片机制作的自定义键盘(也可以用CH551G),使用3个凯华矮轴以及一个EC16增量旋转编码器(EC11也可以,附件里有EC11的工程),接口用带定位柱的MICRO-USB,MICRO-USB旁边H1的是用于短接插进入电脑进行程序下载(不必焊接排针,用镊子短接就行)。为了避免使用不同的旋转编码器驱动有问题,附件里提供了我使用的2种旋转编码器的链接、程序源码、元器件清单、HID协议、HID用途表。
按键功能自定义:
普通键盘按键:
普通按键hid值可以看我附件里提供的HID用途表1.12.pdf的**Keyboard/Keypad Page的Usage ID(Hex) **以C的06为0x06。键盘发送给PC的数据每次8个字节:BYTE1 BYTE2 BYTE3 BYTE4 BYTE5 BYTE6 BYTE7 BYTE8。定义分别是:
BYTE1 --
|--bit0: Left Control 0x01
|--bit1: Left Shift 0x02
|--bit2: Left Alt 0x04
|--bit3: Left GUI(win键) 0x08
|--bit4: Right Control 0x10
|--bit5: Right Shift 0x20
|--bit6: Right Alt 0x40
|--bit7: Right GUI 0x80
BYTE2 -- 暂不清楚,有的地方说是保留位
BYTE3--BYTE8 -- 这六个为普通按键
以按键1修改为例:
按键功能:ctrl + c
if(keyCode == 0x31)//按键1
{
HIDKey[0] = 0x01; //HIDKey[0]放Ctrl、Shift、Alt这些。这里为 左Ctrl 0x01
HIDKey[2] = 0x06; //HIDKey[2]-HIDKey[7]为按下的第一个按键到第六个,这里0x06为c
if(Ready) //枚举成功
{
HIDValueHandle1(); //多媒体按键HID值上传
}
}
多媒体按键:
BYTE1:Vol- 到 Scan Pre Track
BYTE2:Scan Next Track开始的8个,取值参考下面的BYTE1去对照KeyMULRepDesc数顺序。
BYTE1 BYTE2 BYTE3 这3个字节分成24位,每个位代表一个按键,1代表按下,0抬起。
BYTE1 --
|--bit0: Vol- 0x01
|--bit1: Vol+ 0x02
|--bit2: Mute 0x04
|--bit3: Email 0x08
|--bit4: Media 0x10
|--bit5: WWW Home 0x20
|--bit6: Play/Pause 0x40
|--bit7: Scan Pre Track 0x80
BYTE2 BYTE3按下面的顺序排下去,BYTE3 bit7:最后一个Usage( NULL )。
BYTE4 --
系统功能按键,关机(0x81),休眠(0x82),唤醒(0x83)
以按键1修改为例:
if(keyCode == 0x31)//按键1
{
HIDKeyMUL[0] = 0x02; //音量+
if(Ready) //枚举成功
{
HIDValueHandle2(); //多媒体按键HID值上传
}
}
程序下载步骤:
先短接H1然后插入电脑,看下图,工程里用的是CH552G(如果用其他型号选对应型号就行)。
选择8位CH55X系列。
选择CH552。
把(下载完成后运行目标程序)的√打上就不用拔插重启了。
看usb设备列表了出现设备就可以下一步了。
选择编译好的程序CH552E.hex。
点击下载,最下方的下载进度条走完就下载就行了
下载方式记得选 usb
修改日期:2021-01-02 10:54
单片机电脑计算机键盘设计,客制pc小键盘,CH552单片机HID键盘,电脑多媒体小键盘...相关推荐
- 电脑计算机d盘有用吗,d盘不见了,教您电脑d盘不见了怎么解决
安装完win7系统之后,一般用户会分硬盘有CDEF盘,可以方便我们存储文件软件等,而有win7系统用户要却发现没有D盘了,D盘不见了?这是怎么回事呢?该怎么去解决呢?下面,小编就给大家分享解决电脑d盘 ...
- 电脑计算机怎么没有桌面显示器,显示器无信号,详细教您电脑显示屏不显示怎么修复...
电脑现在是越来越普遍了,不过既有甜又有苦,这不有用户就遇到了显示器无信号的情况,这让用户摸不着头脑.相比显示器没有任何显示而言,显示器无信号电脑故障其实更容易解决.那么该怎么去解决呢?下面,小编就来跟 ...
- 基于单片机的超市储物柜设计_一种基于at89c51单片机的超市寄存装置的制造方法...
一种基于at89c51单片机的超市寄存装置的制造方法 [专利摘要]一种基于AT89C51单片机的超市寄存装置,主要包括AT89C51单片机最小系统.按键模块.电源模块.箱柜控制模块.语音提醒模块.管理 ...
- 计算机课程进制的转换,计算机课程设计 进制转换
简要介绍资料的主要内容,以获得更多的关注 河北工业大学计算机软件技术基础(VC)课程设计报告 学院 机械工程系 班级 姓名 __ 学号 ____ 成绩 __ ____ 一.题目: 进制转换(8) 二. ...
- 计算机创新设计2大赛获奖作品3Done,【20届中小学电脑获奖指导老师分享】张明华:3D One 创意教学的探索与前行...
南昌市青桥学校 张明华老师 我来自南昌市青桥学校,任教初二年级的信息技术课程.虽然我今年都50岁了,是从教30年的老教师.但实际担任信息技术课程的教学还不到两年,需要向大家学习的远超过我跟大家分享的 ...
- 小学音乐利用计算机教学设计,外婆的澎湖湾公开课,怎么利用技术多媒体小学音乐教学设计...
<义务教育音乐课程标准>中明确提出:"以信息技术为代表的现代教育技术极大地扩展了音乐教学的容量,丰富了教学手段和教学资源,在音乐教育中有着广阔的应用前景,教师应努力掌握现代信息技 ...
- 电脑计算机和算盘童话作文,网路_童话作文嫦娥玩电脑700字小学生作文
[导读]农惠美嗨!大家好,我是美貌无比,迷倒上千万男子的嫦娥仙子,自从吃了王母娘娘给后羿的长生不老的仙药..本文<童话作文嫦娥玩电脑700字>由小学生作文大全整理,仅供参考. 如果觉得很不 ...
- PC 机与单片机通信(RS232 协议)
PC 机与单片机通信(RS232 协议) 1.单片机串口通信的应用 2.PC控制单片机IO口输出 3.单片机控制实训指导及综合应用实例 4.单片机给计算机发送数据 文章目录 PC 机与单片机通信(RS ...
- 客制化键盘编程_基于3D打印的客制化机械键盘设计与实现
龙源期刊网 http://www.qikan.com.cn 基于 3D 打印的客制化机械键盘设计与实现 作者:许玺风 毛凌志 来源:<科学与财富> 2020 年第 03 期 摘 要:本文首 ...
最新文章
- C语言 从指定文件中依次读出字符直至文件结束
- 浅谈域名发散与域名收敛
- 48_并发编程-线程-资源共享/锁
- 1.3编程基础之算术表达式与顺序执行 01 A+B问题 (Python3实现)
- 冯仕堃:预训练模型哪家强?百度知识增强大模型探索实践!
- 简介几种负载均衡原理
- ADOMDConnection连接字符串与AnalysisService服务器配置
- NLP ---文本情感分析
- C++视频教程资源链接合集
- 毕业设计 - 题目: 基于深度学习的疲劳驾驶检测 深度学习
- word单元格调整文字行间距
- win10如何做到在指定目录下打开cmd命令窗口
- DTOJ 3999 ♂U♂ Xi♂
- 2019314输入一个日期,输出星期几
- 渗透测试入门(域名、DNS)— 理论知识
- 话费充值接口文档源码(2)
- 90句美丽的英文及翻译
- Mysql数据库基础知识(五)之:视图、变量、存储过程、函数、流程控制结构
- c# asp.net mvc使用斑马GK888t打印机打印标签
- 姚能伟:以邻盛智能为例,如何在行业大脑进行创新实践
热门文章
- PostgreSQL数据库导入EXCEL数据表
- STM32开发笔记27:STM32L0低功耗设计——RTC模块1秒时钟的产生方法
- 织梦网站数据入库接口(实现图片本地化,自动图片打水印)【原创】
- ROS2报错缺少“diagnostic_updater“,CMake did not find diagnostic_updater. 解决思路
- PHP 简单日历功能的实现
- python 声音强度检测_python检测音频中的静音
- 详解Mysql分布式事务XA
- 915M无线通讯模块 数传 SI4463 SX1278
- iOS开发-集成阿里云实人认证
- [OHIF-Viewers]医疗数字阅片-医学影像-es6-Element.querySelector()