Hi Leute
Ich hab gestern auf EBay-Kleinanzeigen gestöbert. Da war ich doch ziemlich überrascht, wie teuer Sachen für Cerea Angeboten werden. Deswegen hab ich mich entschlossen, meinen Script für den Arduino Pro Micro zu veröffentlichen. Angeblich soll dieser Probleme bereiten, aber er ist ja jetzt offen und kann somit von jedem optimiert werde.
Der Script gibt, je nach Porteingabe, ein Zeichen aus. Welches Zeichen es ist, ist im Code änderbar und dokumentiert. Für das Programm werden 3 Bibliotheken benötigt. Diese sind im Netz aber zu finden.
Viel Spaß damit und über Rückmeldungen wäre ich dankbar.
C
// Arduino Pro Micro Tasteneingabe
// (C) 2017 by Klaus Sieverding - klaus.sieverding@web.de
// Weitergabe an Dritte nur unter Erlaubniss von Klaus Sieverding
#include "Bounce2.h"
#include "Keyboard.h"
#include "usToDE.h"
#define INPUTMODE INPUT_PULLUP
byte buttonPins[] = { 2, 3, 4, 5, 6, 7, 8, 9, 10, 14, 15, 16, 18, 19, 20, 21 };
const int NUMBUTTONS = sizeof(buttonPins);
Bounce debouncer[NUMBUTTONS];
void setup() {
for(int i = 0; i < NUMBUTTONS; i++)
{
pinMode(buttonPins[i], INPUTMODE);
debouncer[i].attach(buttonPins[i]);
debouncer[i].interval(10);
}
Keyboard.begin();
}
void loop() {
for(int i = 0; i < NUMBUTTONS; i++)
{
debouncer[i].update(); // Status prüfen
}
// Taste Auto
if(debouncer[0].rose()) // Wenn die Taste Pin2 losgelassen wird
Keyboard.write('a');
// Taste Marca/Makierung
if(debouncer[1].rose()) // Wenn die Taste Pin3 losgelassen wird
Keyboard.write('7');
// Taste Contorno/Kontur
if(debouncer[2].rose()) // Wenn die Taste Pin4 losgelassen wird
Keyboard.write('4');
// Taste A
if(debouncer[3].rose()) // Wenn die Taste Pin5 losgelassen wird
Keyboard.write('w');
// Taste B
if(debouncer[4].rose()) // Wenn die Taste Pin6 losgelassen wird
Keyboard.write(101);
// Taste Disp-right
if(debouncer[5].rose()) // Wenn die Taste Pin7 losgelassen wird
Keyboard.write(usToDE[43]); //"+"
// Taste Disp-left
if(debouncer[6].rose()) // Wenn die Taste Pin8 losgelassen wird
Keyboard.write('/'); //"-"
// Taste Turn-right
if(debouncer[7].rose()) // Wenn die Taste Pin9 losgelassen wird
Keyboard.write('p');
// Taste Turn-left
if(debouncer[8].rose()) // Wenn die Taste Pin10 losgelassen wird
Keyboard.write('o');
// Taste C
if(debouncer[9].rose()) // Wenn die Taste Pin14 losgelassen wird
Keyboard.write('2');
// Taste S
if(debouncer[10].rose()) // Wenn die Taste Pin15 losgelassen wird
Keyboard.write('s');
// Taste Salir/Ausfahrt
if(debouncer[11].rose()) // Wenn die Taste Pin16 losgelassen wird
Keyboard.write('6');
// Taste Ancho/Breite
if(debouncer[12].rose()) // Wenn die Taste Pin18 losgelassen wird
Keyboard.write('1');
// Taste Nuevo/Neu
if(debouncer[13].rose()) // Wenn die Taste Pin19 losgelassen wird
Keyboard.write('0');
// Taste Cargar/Last
if(debouncer[14].rose()) // Wenn die Taste Pin20 losgelassen wird
Keyboard.write('r');
// Taste Conectar/Verbinden
if(debouncer[15].rose()) // Wenn die Taste Pin21 losgelassen wird
Keyboard.write('9');
}
Alles anzeigen