Hallo zusammen,
ich bin absoluter Neuling auf dem Gebiet der C++ Programmierung und den kleinen Mikro -Controllern. Einfachste Dinge wie einen Taster auf eine Tastaturausgabe zu bringen oder einer Tastenkombination hab ich schon hin bekommen, jedoch stehe ich gerade echt auf dem Schlauch.
Vorhaben:
Ich besitze ein Audiointerface Yamaha AG03 das für das Mikrofon ein Fader besitzt. Nun möchte ich mittels Gabellichtschranke eine Tastatur-Tastenkombination zum PC schicken, sobald ich das Mikrofon öffne (also den Fader nach oben ziehe) um in einem Programm namens mAirList (Radioautomation) den Mikrofoneingang ein zu schalten. Genauso soll eine andere Tastenkombination gesendet werden, sobald der Fader wieder ganz nach unten gezogen ist, also sich in der Gabellichtschranke befindet. OnTop soll noch eine zusätzliche LED den IST-Zustand anzeigen was aber kein Problem dar stellt. (Fader offen = LED an, Fader geschlossen = LED aus)
Mein Problem:
Bis jetzt hab ich es hinbekommen das jeder Zustand, also egal ob Lichtschranke frei oder belegt ist, die entsprechende Tastenkombination zum PC gesendet wird, jedoch natürlich permanent.
Setup:
MikroController: Digispark Attiny85
Verwendete Gabellichtschranke
LED angeschlossen an PIN 1
Digital Read der Gabellichtschranke an PIN 2 ( HIGH, LOW)
Code den ich nicht selbst erstellt habe, sondern nur für meine Bedürfnisse angepasst hab, also PIN belegung etc.
#include "DigiKeyboard.h"
const int buttonPin = 2;
const int ledPin = 1;
int buttonState = 0;
void setup() {
pinMode(ledPin, OUTPUT);
pinMode(buttonPin, INPUT_PULLUP);
DigiKeyboard.update();
}
void loop() {
DigiKeyboard.sendKeyStroke(0);
buttonState = digitalRead(buttonPin);
if (buttonState == HIGH) {
digitalWrite(ledPin, HIGH);
DigiKeyboard.sendKeyPress(KEY_F8, MOD_CONTROL_LEFT);
DigiKeyboard.delay(100);
} else {
digitalWrite(ledPin, LOW);
DigiKeyboard.sendKeyPress(KEY_F7, MOD_CONTROL_LEFT);
DigiKeyboard.delay(100);
}
}
Quizfrage:
Wie bekomme ich es hin, das der Controller nur einmal eine Tastenkombination sendet wenn sich der Zustand verändert hat und nicht Permanent? boolean?
Vielen dank und ich hoffe das ich hier richtig bin auch wenn es kein Arduino Produkt ist??


