Hamster, Да, согласен, все верно.
Цитата:
Сообщение от Alex-NN
|
Можно и так. Только там имитация нажатия клавиатурных кнопок осуществляется замыканием контактов. Хотя эту часть можно переделать и под резистивные кнопки.
Если ничего не напутал и не сделал ошибок то где-то вот так:
PHP код:
#include "UsbKeyboard.h"
int analogPin=0;
int data;
void setup()
{
// Disable timer0 since it can mess with the USB timing. Note that
// this means some functions such as delay() will no longer work.
TIMSK0&=!(1<<TOIE0);
// Clear interrupts while performing time-critical operations
cli();
// Force re-enumeration so the host will detect us
usbDeviceDisconnect();
delayMs(250);
usbDeviceConnect();
// Set interrupts again
sei();
}
void loop()
{
UsbKeyboard.update();
data=analogRead(analogPin);
if (data==614)
//вместо 614 нужно поставить значение прочитанное
//на PIN0 при на жатии выбранной резистивной кнопки
{
UsbKeyboard.sendKeyStroke(KEY_H, MOD_SHIFT_LEFT);
UsbKeyboard.sendKeyStroke(KEY_E);
UsbKeyboard.sendKeyStroke(KEY_L);
UsbKeyboard.sendKeyStroke(KEY_L);
UsbKeyboard.sendKeyStroke(KEY_O);
UsbKeyboard.sendKeyStroke(KEY_SPACE);
UsbKeyboard.sendKeyStroke(KEY_W, MOD_SHIFT_LEFT);
UsbKeyboard.sendKeyStroke(KEY_O);
UsbKeyboard.sendKeyStroke(KEY_R);
UsbKeyboard.sendKeyStroke(KEY_L);
UsbKeyboard.sendKeyStroke(KEY_D);
UsbKeyboard.sendKeyStroke(KEY_ENTER);
}
}
void delayMs(unsigned int ms)
{
for (int i = 0; i < ms; i++) {
delayMicroseconds(1000);
}
}