[英]How do I get the Vendor and Product strings in case of a HID device on Windows?
[英]How do I use rotary encoders to control an HID device?
我的目标是为我的 Windows 10 PC 创建一个小型开关面板。 我正在使用 Arduino Micro 来运行我的程序。 我想使用数字旋转编码器来控制操纵杆输入。 我想顺时针转动编码器时按音量调高来控制音量,逆时针转动时调低音量
#include <Joystick.h>
#define outputA 2
#define outputB 3
int counter = 0;
int aState;
int aLastState;
void setup() {
Joystick.begin();
pinMode(2, INPUT);
pinMode(3, INPUT);
}
void loop() {
aState = digitalRead(outputA);
if (aState != aLastState) {
if (digitalRead(outputB) != aState) { // Clockwise
Joystick.pressButton(1);
delay(10);
Joystick.releaseButton(1);
counter ++;
} else { // Counterclockwise
Joystick.pressButton(2);
delay(10);
Joystick.releaseButton(2);
counter --;
}
Serial.print("Counter: ");
Serial.println(counter);
}
aLastState = aState;
}
这应该在每次顺时针推动销时按下一个按钮(按钮 1),当它们逆时针移动时按下按钮 2。 我试图将计数器值打印到串行监视器以查看它在做什么,但监视器会随机更改并且无法识别旋转编码器。 我可以澄清这一点,但我想知道我能解决什么问题。
事实证明,这只是一个干扰问题。 使用上拉电阻解决了这个问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.