用digispark实现windows登录
2024-11-04 15:12:32 # 技术笔记

昨晚上在家里搜搜,发现了这个小东西。之前是用来做badusb的。但是一直没有去真的实施(主要是胆小)。所以今天拿出来随便玩玩。其实这玩意可以实现很多操作,主要看自己怎么做了。

下载Arduino IDE

https://www.arduino.cc/en/software

建议打开之后,第一件事就是挂代理,好多依赖都是需要代理才行的。

简单配置:

File->Preferences->Settings

在这里面找到Additional boards manaqer URLs

然后在里面填入以下网址

http://digistump.com/package_digistump_index.json

点击类似文件的按钮进行安装

然后就可以写了,有的时候一定要设置延迟,是给电脑的反应时间。。。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include "DigiKeyboard.h"

void loop() {}

void setup() {
DigiKeyboard.sendKeyStroke(0);
DigiKeyboard.delay(50);
DigiKeyboard.sendKeyStroke(KEY_ENTER);
DigiKeyboard.delay(2000);
DigiKeyboard.print("qqqqq");//这里写开机密码的英文
DigiKeyboard.print("0000");//这里写开机密码的数字
DigiKeyboard.delay(1000);
DigiKeyboard.sendKeyStroke(KEY_ENTER);


}

英文和数字要分开写,测试过,好像英文和数字在一起只会有英文。

另外一定要引用 "DigiKeyboard.h"而不是"Keyboard.h"。再引用Keyboard.h之后,不知道为什么会编译失败一直提是HID.h找不到,网上找办法也找不到。难受得要死。

另外DigiKeyboard.h无法实现ctrl+del+alt的组合键操作,这也是难受的一点。

写完之后,点击左上角的对勾,看看有没有错。没有错的话,就可以点击对勾旁边的按钮进行编译 了。

出现这个plug in device now...提示,是告诉你要再60s内插入disgispark的,要在一分钟之内不插入的话会提示你超时。插入之后,就开始识别编译了。最后出现如下的提示Micronucleus done.Thank youl,就说明编译成功了。

另外,要下载Digispark的驱动才可以。下面的是驱动下载的地址,然后点击64那个安装就可以了。

https://github.com/digistump/DigistumpArduino/releases