自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(18)
  • 收藏
  • 关注

原创 四、创建键盘数据模型

每个按键灯需要以下信息:1、索引号,int;2、色彩,单色键盘或鼠标只有1个字节,RGB键盘3个字节;

2023-12-16 09:55:32 328

原创 三、AbstractListModel

cpp端会需要提供几个表给qml来显示,所以先设计AbstractListModel。

2023-12-12 12:02:03 349

原创 二、设备信息

制作一个软件用于填写这些信息然后生成了一个json文件用于配置上位机Ui,这个软件较为简单,不在此详解。

2023-12-12 11:45:22 485

原创 一、前期设计

每个按键都可以自定义功能,包括组合键、鼠标功能、多媒体功能、系统控制、宏等。

2023-12-12 11:07:30 341

原创 十一、终章

整套键盘还是有很多可优化的点,基本是围绕着响应速度、Rom占用进行优化。后续也考虑加入RF功能以及旋钮等功能。

2023-12-09 14:07:49 337

原创 十、USB更新

既然有USB,自然会想着实现在线更新功能,代码不复杂,接下来编写bootloader。

2023-12-09 13:58:54 353

原创 九、任务运行

前面所有的任务都是放在了一个简易的时间片里。这个时间片无优先级、动态调度功能。

2023-12-09 13:49:14 352

原创 八、低功耗

虽然这是个有线键盘,但为了未来使用无线的场景,还是提前把低功耗做进去了。

2023-12-09 13:39:08 379

原创 七、上位机通信

通信就比较简单了,制定好协议后只要等待指令回复相应的信息即可。

2023-12-09 13:22:25 496

原创 六、灯效处理

灯效应该是整个键盘里比较困难的部分了,尤其在一个8位,cpu只有6MHz的单片机上实现。我也没怎么做过灯效类的项目,所以灯效基本就是随便写写,这里大概记录下设计过程。

2023-12-09 13:15:50 382

原创 五、按键报告处理

在按键、灯光扫描章节里,按键扫描是按照硬件排布进行处理的,但和实际键盘不一定是一一对应的,如果没有灯效的情况下,倒不一定需要这个映射表,只需要直接查询对应的键值进行发送即可,不过做灯效的话,很多灯效需要和实际键盘坐标相关,就需要映射表了。

2023-12-09 11:58:32 329

原创 四、基本功能设定

这个是用来定义每个按键的灯,这个相对简单,就是每个按键有3个字节的数组,分别代表了r、g、b;定义有以下功能用途,可自行扩展:1、保留,无用途2、键盘按键按下;3、键盘按键释放;4、鼠标按键按下;5、鼠标按键释放;6、鼠标X轴偏移;7、鼠标Y轴偏移;对用途进行编号:0~6定义一个宏信息包有5字节第1字节:功能用途编号(0-6)第2~3字节:功能码:1、键盘按键,填入键值,填入第2个字节2、鼠标按键:Bit0-Bit4依次为: 左、右、中、后退、前进,填入第2个字节。

2023-12-09 11:13:43 339

原创 三、USB通信

0xC0,0x06,0x00,0xff, //厂商自定义。

2023-12-09 10:50:46 378

原创 二、按键、灯矩阵扫描

为了做到能拍照及录像不频闪,所以选择定时器设置每250us做一次灯扫描,然后每扫完所有灯后做一次按键扫描。

2023-12-09 10:34:57 380

原创 一、前期设计

由于工作有给做键盘的客户提供过技术支持,所以做了个键盘demo用于演示,记录一下做个参考。

2023-12-09 09:56:49 354

原创 Windows键鼠按键检测

键盘上位机需要改键功能,所以需要捕获键鼠按键,以方便用户快速改键,这里使用了钩子函数,捕获键鼠按键功能,程序使用了单例模式。构建套件Qt5.15.2 MSVC2019 64bit及Qt6.4.3 MSVC2019 64bit。

2023-07-30 10:35:59 992 1

原创 基于Qt的WindowsHid设备通信

和键盘进行通信大多数是靠usb进行通信,第三方hid库有很多,但为了在qt上更易用一些,根据windows提供的hid接口封装了一下。构建套件Qt5.15.2 MSVC2019 64bit及Qt6.4.3 MSVC2019 64bit。

2023-07-30 10:09:00 930 4

原创 Windows捕获系统声音

最近在写键盘配套的上位机,在写音乐律动灯效时需要实时捕获系统声音,在windows上需要使用 到CoreAudio的Loopback模式捕获。代码在Qt平台上运行,编译环境Qt5.15.2 MSVC2019 64bit以及Qt6.4.3 MSVC2019 64bit。信号发出后,在MainWindow的槽函数进行数据重排列、fft处理,就可以的到频谱了。这里用的fft库是kissfft,可在github上下载。

2023-07-30 09:15:45 653 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除