60 lines
2.2 KiB
Arduino
60 lines
2.2 KiB
Arduino
/* Pro Micro Test Code
|
|
|
|
Code von https://codebender.cc/sketch:77845#Pro%20Micro%20Blink.ino
|
|
Zuerst musste unter Ubuntu der Modem Manager entfernt werden mit, s. https://community.arduboy.com/t/resolved-issues-uploading-with-ubuntu-18-10-and-arduino-1-8-9/7447/4
|
|
sudo systemctl disable ModemManager.service
|
|
|
|
In den Preferences die zusätzliche Quell-URL eintragen, s. https://learn.sparkfun.com/tutorials/pro-micro--fio-v3-hookup-guide/all#installing-mac--linux
|
|
https://raw.githubusercontent.com/sparkfun/Arduino_Boards/master/IDE_Board_Manager/package_sparkfun_index.json
|
|
Danach über den Board Manager die Sparkfun AVR installieren und als Board "Sparkfun Pro Micro" und Provil 5V 16MHz auswählen.
|
|
|
|
Upload über den neuen seriellen Port /dev/ACM3
|
|
|
|
|
|
Troubleshooting, wenn bricked:
|
|
- ModemManager abschalten
|
|
sudo systemctl disable ModemManager.service
|
|
- Pro Micro mit USB-Port verbinden
|
|
- 2x schnell hintereinander RST mit GND verbinden, danach 8s Zeit für den Upload https://learn.sparkfun.com/tutorials/pro-micro--fio-v3-hookup-guide/troubleshooting-and-faq#ts-revive
|
|
- Upload mit
|
|
sudo ./arduino --upload /root/Arduino/pro_micro/pro_micro.ino --port /dev/ttypACM3
|
|
|
|
Auch hilfreich:
|
|
ls /dev/ttyA*
|
|
lsusb
|
|
|
|
*/
|
|
|
|
#include "Keyboard.h"
|
|
|
|
const int RXLED = 17; // The RX LED has a defined Arduino pin
|
|
const int buttonPin = 2;
|
|
int buttonState = 0;
|
|
int prevButtonState = HIGH;
|
|
|
|
void setup() {
|
|
Serial.println("Hello Keyboard World");
|
|
pinMode(RXLED, OUTPUT); // Set RX LED as an output
|
|
pinMode(buttonPin, INPUT_PULLUP);
|
|
digitalWrite(buttonPin, HIGH);
|
|
Serial.begin(9600); //This pipes to the serial monitor
|
|
Keyboard.begin();
|
|
}
|
|
|
|
void loop() {
|
|
buttonState = digitalRead(buttonPin);
|
|
if ((buttonState != prevButtonState) && (buttonState == HIGH)) {
|
|
Serial.println("Now pressing button");
|
|
|
|
// Here starts the output action
|
|
//Keyboard.press(KEY_LEFT_GUI); // Command key in Mac, use KEY_LEFT_CTRL for Pc
|
|
Keyboard.press('v');
|
|
delay(100);
|
|
Keyboard.releaseAll(); // This is important after every Keyboard.press it will continue to be pressed
|
|
|
|
digitalWrite(RXLED, LOW); // set the LED on
|
|
delay(300);
|
|
digitalWrite(RXLED, HIGH); // set the LED off
|
|
}
|
|
prevButtonState = buttonState;
|
|
} |