一、功能介绍
白狐狸宏4.2 是一款基于 ATmega32U4 HID 开发板 的硬件宏工具。
由于目前纯软件层面的宏功能已受到较大限制,因此当前方案采用“硬件 + 软件”结合的方式,通过开发板模拟真实键盘鼠标输入,再由上位机软件进行动作控制与时间轴编排,从而继续实现宏功能及自动化操作效果。
当前支持:
- 键盘宏
- 鼠标宏
- 鼠标移动
- 长按操作
- 无限循环
- 时间轴编排
- 动作编辑
二、准备工作
1、需要购买的硬件
淘宝搜索:
- ATmega32U4 开发板
- Leonardo 开发板
- Pro Micro 32U4
任选一种即可。
建议购买:
- Type-C 接口版本
价格通常:
- 20~30 元左右
注意:
必须是 ATmega32U4 芯片。
不要买:
- UNO
- Nano
- ESP32
这些无法直接作为 HID 键鼠设备使用。
三、需要安装的软件
1、Arduino IDE
官网下载:
安装完成即可。
四、烧录 HID 固件
1、连接开发板
使用数据线连接电脑。
2、Arduino 配置
打开 Arduino IDE:
开发板选择:
工具 → 开发板
选择:
- Arduino Leonardo
或者:
- SparkFun Pro Micro
根据自己购买型号选择。
端口选择
工具 → 端口
选择新出现的 COM 口。
3、创建 Arduino 工程
新建一个工程。
将下面完整代码复制进去。
4、完整 HID 固件代码
#include <Mouse.h>
#include <Keyboard.h>
#include <string.h>
#include <stdlib.h>
// =========================
// 命令缓冲区
// =========================
char cmdBuf[64];
uint8_t cmdLen = 0;
// 前置声明
void handleCommand(char* s);
// =========================
// 安全移动(支持大范围移动)
// =========================
void moveSafe(int x, int y)
{
while (x != 0 || y != 0)
{
int mx = constrain(x, -127, 127);
int my = constrain(y, -127, 127);
Mouse.move(mx, my);
x -= mx;
y -= my;
delay(1);
}
}
void setup()
{
Serial.begin(115200);
Mouse.begin();
Keyboard.begin();
}
void loop()
{
while (Serial.available())
{
char c = Serial.read();
if (c == '\r')
continue;
if (c == '\n')
{
cmdBuf[cmdLen] = '\0';
handleCommand(cmdBuf);
cmdLen = 0;
}
else
{
if (cmdLen < sizeof(cmdBuf) - 1)
{
cmdBuf[cmdLen++] = c;
}
else
{
// 超长命令直接丢弃
cmdLen = 0;
}
}
}
}
// =========================
// 命令处理
// =========================
void handleCommand(char* s)
{
// =========================
// 鼠标左键点击
// =========================
if (strcmp(s, "ML") == 0)
{
Mouse.click(MOUSE_LEFT);
}
// =========================
// 鼠标右键点击
// =========================
else if (strcmp(s, "MR") == 0)
{
Mouse.click(MOUSE_RIGHT);
}
// =========================
// 鼠标左键按下
// =========================
else if (strcmp(s, "MP") == 0)
{
Mouse.press(MOUSE_LEFT);
}
// =========================
// 鼠标左键松开
// =========================
else if (strcmp(s, "MU") == 0)
{
Mouse.release(MOUSE_LEFT);
}
// =========================
// 鼠标右键按下
// =========================
else if (strcmp(s, "RP") == 0)
{
Mouse.press(MOUSE_RIGHT);
}
// =========================
// 鼠标右键松开
// =========================
else if (strcmp(s, "RU") == 0)
{
Mouse.release(MOUSE_RIGHT);
}
// =========================
// 鼠标移动
// MV:x,y
// =========================
else if (strncmp(s, "MV:", 3) == 0)
{
int x = 0;
int y = 0;
sscanf(s, "MV:%d,%d", &x, &y);
moveSafe(x, y);
}
// =========================
// 鼠标滚轮
// MW:value
// =========================
else if (strncmp(s, "MW:", 3) == 0)
{
int wheel = atoi(s + 3);
Mouse.move(0, 0, wheel);
}
// =========================
// 键盘按下
// KD:keycode
// =========================
else if (strncmp(s, "KD:", 3) == 0)
{
int key = atoi(s + 3);
Keyboard.press(key);
}
// =========================
// 键盘松开
// KU:keycode
// =========================
else if (strncmp(s, "KU:", 3) == 0)
{
int key = atoi(s + 3);
Keyboard.release(key);
}
// =========================
// 单击按键
// KT:keycode
// =========================
else if (strncmp(s, "KT:", 3) == 0)
{
int key = atoi(s + 3);
Keyboard.press(key);
delay(20);
Keyboard.release(key);
}
// =========================
// 释放全部键盘按键
// =========================
else if (strcmp(s, "KA") == 0)
{
Keyboard.releaseAll();
}
// =========================
// 释放全部鼠标按键
// =========================
else if (strcmp(s, "MA") == 0)
{
Mouse.release(MOUSE_LEFT);
Mouse.release(MOUSE_RIGHT);
Mouse.release(MOUSE_MIDDLE);
}
}
5、上传固件
点击:
工具栏 → 上传
等待上传完成即可。
成功后开发板会自动识别为 HID 键盘鼠标设备。
五、使用白狐狸宏4.2
1、打开软件
运行:
白狐狸宏4.2.exe
2、连接设备
点击:
“连接设备”
状态栏显示:
已连接 COMx
即代表成功。
3、添加动作
目前支持:
- 键盘按键
- 鼠标左键
- 鼠标移动
- 延迟
- 无限循环
- 指定循环次数
4、时间轴编辑
软件支持:
- 修改动作顺序
- 修改按住时间
- 修改动作间隔
- 删除动作
- 无限循环
时间单位均为:
毫秒(ms)
5、载入预设宏
可下方链接先下载预设宏文件到本地,再导入预设的宏文件
1. 2号位动作仅鞠躬刷花
2. 0.2秒鼠标左键循环
3. 放生精灵全选

5、按键介绍

键盘按键填写对照总表(key字段)
| 分类 | 按键 | key填写 |
|---|---|---|
| 字母键 | A-Z | a / b / c / d … |
| 数字键 | 0 | 0 |
| 数字键 | 1 | 1 |
| 数字键 | 2 | 2 |
| 数字键 | 3 | 3 |
| 数字键 | 4 | 4 |
| 数字键 | 5 | 5 |
| 数字键 | 6 | 6 |
| 数字键 | 7 | 7 |
| 数字键 | 8 | 8 |
| 数字键 | 9 | 9 |
| 功能键 | F1 | f1 |
| 功能键 | F2 | f2 |
| 功能键 | F3 | f3 |
| 功能键 | F4 | f4 |
| 功能键 | F5 | f5 |
| 功能键 | F6 | f6 |
| 功能键 | F7 | f7 |
| 功能键 | F8 | f8 |
| 功能键 | F9 | f9 |
| 功能键 | F10 | f10 |
| 功能键 | F11 | f11 |
| 功能键 | F12 | f12 |
| 方向键 | ↑ | up |
| 方向键 | ↓ | down |
| 方向键 | ← | left |
| 方向键 | → | right |
| 常用控制键 | 空格 | space |
| 常用控制键 | 回车 | enter |
| 常用控制键 | ESC | esc |
| 常用控制键 | Tab | tab |
| 常用控制键 | 退格 | backspace |
| 修饰键 | 左Ctrl | lctrl |
| 修饰键 | 左Shift | lshift |
| 修饰键 | 左Alt | lalt |
| 修饰键 | 左Win | lwin |
| 修饰键 | 右Ctrl | rctrl |
| 修饰键 | 右Shift | rshift |
| 修饰键 | 右Alt | ralt |
| 修饰键 | 右Win | rwin |
六、开始运行
快捷键
- 数字 8 → 开始运行
- 数字 9 → 停止运行
也可以直接点击界面按钮。
七、常见问题
1、提示未找到开发板
请检查:
- 是否连接数据线
- 是否安装驱动
- 是否为 ATmega32U4
- 是否能在 Arduino IDE 中看到端口
2、按键无反应
请确认:
- 固件已正确烧录
- 开发板已识别为 HID
- 软件已成功连接 COM 口
3、热键无效
请尝试:
右键 → 管理员运行
部分系统需要管理员权限才能监听全局热键。
八、免责声明
本工具仅用于:
- 学习研究
- 自动化测试
- HID 开发实验
请勿用于违反游戏规则或相关平台规定的用途。
由用户自行承担使用风险。
博主nb
博主,一直未找到开发板怎么解决呀
试下4.2版本,可能解决了
The shift to hardware-level HID emulation is a brilliant technical workaround. It underscores a universal principle: optimizing digital interaction often requires bypassing software limitations, whether for industrial RPA or for enhancing the user experience on a platform like gperya app download apk. Low-level control remains key to advanced automation.