Setzte doch den blinkState mit beim Tasterdruck. Und führe dann in der blinken Funktion nur das Leuchten der LED aus, wenn blinkState wahr ist.
#include <Servo.h>
int taster1 = 8;
int taster2 = 9;
int LED = 10;
int tasterstatus1, tasterstatus2;
Servo Serv;
boolean blinkState;
void blinken() {
if (blinkState && millis() % 1000 > 500)
{
digitalWrite(LED, HIGH);
}
else
{
digitalWrite(LED, LOW);
}
}
void setup() {
pinMode(taster1, INPUT_PULLUP);
pinMode(taster2, INPUT_PULLUP);
pinMode(LED, OUTPUT);
Serv.attach(5);
}
void loop() {
tasterstatus1 = digitalRead(taster1);
tasterstatus2 = digitalRead(taster2);
if (tasterstatus1 == 0) {
Serv.write(97);
blinkState=false;
}
if (tasterstatus2 == 0) {
Serv.write(0);
blinkState=true;
}
blinken();
}
Edit: pinMode wird eigentlich nur einmalig im Setup ausgeführt. Das wiederholte aufrufen im Loop bei dir ergibt kein Sinn.