stm32实现hid鼠标

news/2024/5/5 20:03:01

启动CubelMX

选择芯片(直接输入stm32f103zet6)

设置时钟 如下图

usb设置

配置usb设备

调试端口设置

 

配置时钟

项目输出设置

打开工程(后记:此工程含有中文不能编译通过)

配置项目

 配置调试器

编译无法通过

删除路径中的中文,以及工程名中的中文。再次生成工程(其他设置一样)再次编译通过

注意看下图没有中文路径,以及工程名不含有中文

代码编辑:

添加声明文件

 代码如下:

 此段代码实现了滚轮滚动。

注意事项:

1.如果没有设置debug端口则第一次下载后jtag端口不能使用,需要使用flymcu通过串口解锁。

2.如果设备没有识别(代码43)建议从新插拔usb端口(我的开发板比较老,估计端口接触不良)

3.注意工程名以及工程路径不要使用中文。否则编译不能通过。

参考链接:

教 你 做 个 HID 鼠 标 ,点赞过千,教你做键盘_哔哩哔哩_bilibiliicon-default.png?t=N7T8https://www.bilibili.com/video/BV17p42127LD/?spm_id_from=333.1007.top_right_bar_window_history.content.click&vd_source=e821a225c7ba4a7b85e5aa6d013ac92e特此记录

anlog

2024年4月16日


http://www.mrgr.cn/p/23721421

相关文章

快速部署 微软开源的 Garnet 键值数据库

快速部署 微软开源的 Garnet 键值数据库 Garnet 是 Microsoft Research 推出的一种新型远程缓存存储,其设计速度极快、可扩展且延迟低。 Garnet 在单个节点内是线程可扩展的。它还支持分片集群执行、复制、检查点、故障转移和事务。它可以在主内存以及分层存储(例如 SSD 和 A…

Sentinel如何持久化数据到Nacos?

默认情况下 Sentinel 只能接收到 Nacos 推送的消息,但不能将自己控制台修改的信息同步给 Nacos,如下图所示:但是在生成环境下,我们为了更方便的操作,是需要将 Sentinel 控制台修改的规则也同步到 Nacos 的,所以在这种情况下我们就需要修改 Sentinel 的源码,让其可以实现…

k8s日常动手实践 ~~ pod访问 pod请求 k8s api ~ 含新版带curl的busybox镜像

前言: 可以使用 Kubernetes API 获取集群信息。使用 Service Account(SA)进行身份验证,可以以安全的方式访问 Kubernetes API,而无需在 Pod 中使用明文凭据。 以下是一个使用 Service Account 访问 Kubernetes API 获…

mysql系列04---索引及性能分析

1、索引的结构mysql索引的数据结构,对经典的B+Tree进行了优化,在原B+Tree上增加了一个指向相邻叶子结点的链表指针,就形成了一个带有顺序指针的B+Tree,提高了区间访问的性能。 选择B+Tree的优点: a、相对于二叉树,层级更少,搜索效率更高 b、相对于B-Tree,B+Tree只在叶子节…

HarmonyOS开发案例:【图片编辑】

介绍 本篇Codelab是基于ArkTS的声明式开发范式的样例,主要介绍了图片编辑实现过程。样例主要包含以下功能: 图片的解码。使用PixelMap进行图片编辑,如裁剪、旋转、亮度、透明度、饱和度等。图片的编码。 相关概念 [图片解码]:读…

transformer 最简单学习3, 训练文本数据输入的形式

1、输入数据中,源数据和目标数据的定义 def get_batch(source,i):用于获取每个批数据合理大小的源数据和目标数据参数source 是通过batchfy 得到的划分batch个 ,的所有数据,并且转置列表示i第几个batchbptt 15 #超参数,一次输入多少个ba…

创建Android Studio项目

如果想在其他模拟器(如雷电上打开项目,需要提前模拟器)下载好Android Studio后,打开 选择new project 选择自己想用的模板 输入基本信息:项目名称,包命名,版本等 点击finish加载完成后结束

Docker基础——50台容器异常占用宿主机90%内存问题

一、问题描述 一台裸金属服务存有50台业务容器,通过Docker进程起服务,由system-runtime守护容器的生命周期。 free -h查看裸金属服务器内存没有正常释放,cat /proc/meminfo查看内存分配无异常,怀疑裸金属服务器 的Java进程存在Glibc内存泄漏,或Docker容器没有正常关闭进程…

Docker 容器操作

容器创建 就是将镜像加载到容器的过程。 新创建的容器默认处于停止状态,不运行任何程序,需要在其中发起一个进程来启动容器。 格式:docker create [选项] 镜像 常用选项: -i:让容器开启标准输入 -t:让…

LFI to RCE [NewStarCtf]Include

记录一个没见过的RCE类型题目。先看源码:点击查看代码 <?phperror_reporting(0);if(isset($_GET[file])) {$file = $_GET[file];if(preg_match(/flag|log|session|filter|input|data/i, $file)) {die(hacker!);}include($file.".php");# Something in phpinfo.p…

C语言扫雷游戏完整实现(下)

文章目录 前言一、排雷函数菜单二、排雷函数菜单的实现三、拓展棋盘功能四、源码1. test.c源文件2. game.h头文件3. game.c源文件 总结 前言 C语言实现扫雷游戏的排雷菜单&#xff0c;以及功能的实现&#xff0c;拓展棋盘功能&#xff0c;以及源码等。 上半部分的链接地址: C语…

echart 常用属性

echart 常用属性 基础属性 title 左上角标题 legend 每一项的列表 xAxis: x轴上的数据 yAxis: y轴上的数据提示框 tooltip: {trigger: axis},demo地址:https://echarts.apache.org/v4/examples/zh/editor.html?c=line-stack 文字转动 斜着摆放 axisLabel.rotate: 30滚动条 da…

VScode远程连接虚拟机提示: 无法建立连接:XHR failed.问题解决方案

一问题描述 在vscode下载插件Remote-SSH远程连接虚拟机时提示无法建立连接 二.最大嫌疑原因&#xff1a; 我也是在网上找了许久&#xff0c;发现就是网络原因&#xff0c;具体不知&#xff0c;明明访问别的网页没问题&#xff0c;就是连不上&#xff0c;然后发现下载vscode的…

.Net添加了引用,仍然提示找不到命名空间

如图&#xff0c;MyStudy控制台程序引用了一个C#类库MyClassLibrary 代码里也能敲出来using MyClassLibrary&#xff0c;但是build时始终提示找不到命名空间MyClassLibrary 我检查了MyClassLibrary的Assembly&#xff0c;命名空间名称无误 又检查了MyStudy里的引用信息&#x…

three.js实现相机碰撞,相机不穿墙壁、物体

大家好,本文实现了相机碰撞检测,使相机不穿墙壁、物体,并给出了思路和代码,感谢大家~大家好,本文实现了相机碰撞检测,使相机不穿墙壁、物体,并给出了思路和代码,感谢大家~ 关键词:数字孪生、three.js、Web3D、WebGL、相机碰撞、游戏相机 我正在承接Web3D数字孪生项目,…

Windows服务器等保审核安全设置

1.开启账户锁定策略 进入Windows服务器,快捷键“WIN+R”打开运行窗口。输入“gpedit.msc”并点击确定,依次点击“计算机配置”>“Windows设置”>“安全设置”>“账户策略”>“账户锁定策略 示例: *多次登录锁定,可以设置次数多点 2、密码长度最小值建议设置为8…

20-vue组件传参(父传子,子传父)

父传子: 父组件向子组件传入一个参数,可以通过 props配置项,让组件接收外部传过来的数据 1)传递数据 这里需要注意,通过 age = "18"的方式,传递进去的数据是字符类型的,通过动态绑定 :age = "26" 的方式,传递进去的数据是整型类型<!--这里需要注…

状态模式和策略模式对比

状态模式和策略模式都是行为型设计模式&#xff0c;它们的主要目标都是将变化的行为封装起来&#xff0c;使得程序更加灵活和可维护。之所以将状态模式和策略模式进行比较&#xff0c;主要是因为两个设计模式的类图相似度较高。但是&#xff0c;从状态模式和策略模式的应用场景…

XV6源码阅读——进程地址空间

文章目录 前言页表实际情况 前言 一个本硕双非的小菜鸡&#xff0c;备战24年秋招。打算尝试6.S081&#xff0c;将它的Lab逐一实现&#xff0c;并记录期间心酸历程。 代码下载 官方网站&#xff1a;6.S081官方网站 页表 每个进程都有一个单独的页表&#xff0c;当xv6在进程之…

谁动了我的数据?如何防止数据偷偷溜走?

在数字化时代,数据成为了企业核心资产的重要组成部分。然而,随着数据量的不断增长和传输方式的多样化,数据泄露的风险也随之增加。那么,企业该如何保护自己的数据,确保数据安全呢?这里就为大家揭秘有效的数据监控策略。实施实时监控是保护数据的关键。通过安装专业的数据…