Willkommen im Forum! Damit einem schnell und mit geringem Aufwand geholfen werden kann, gibt es ein paar Regeln, die man sich anschauen und einhalten sollte, um Frust (bei Dritten und sich selbst ) zu vermeiden.
a) Code/Sketche bitte zwischen "Code-Tags" posten. Das Ergebnis sieht dann so aus wie hier:
int LED1=1;
int LED2=2;
int LED3=3;
int LED4=4;
int LED5=5;
int LED6=6;
int Taster=7;
int x;
void setup(){
pinMode(Taster, INPUT_PULLUP);
Serial.begin(9600);
randomSeed(analogRead(A1));
}
void loop(){
digitalRead(Taster);
if(Taster==0){
x=random(1,7);
Serial.println(x);
}
}
Es lässt sich besser lesen und deutlich einfacher kopieren und analysieren.
Übrigens noch besser, wenn man vorher in der IDE automatisch formatieren lässt:
int LED1 = 1;
int LED2 = 2;
int LED3 = 3;
int LED4 = 4;
int LED5 = 5;
int LED6 = 6;
int Taster = 7;
int x;
void setup() {
pinMode(Taster, INPUT_PULLUP);
Serial.begin(9600);
randomSeed(analogRead(A1));
}
void loop() {
digitalRead(Taster);
if (Taster == 0) {
x = random(1, 7);
Serial.println(x);
}
}
Der einfachste Weg dazu ist, in der Arduino IDE den Sketch markieren, mit dem Menüpunkt "Automatische Formatierung"
formatiert und dann mit dem Menüpunkt "Für Forum kopieren" über die Zwischenablage in den Post einfügen:
Alternativ kann man die Code-Tags im Editor erzeugen, indem man diese Schaltfläche anklickt und den Sketch zwischen den Tags einfügt:
Letztlich kann man auch
[code] vor den Sketch
und
[/code] hinter den Sketch
schreiben ...
b) Die Aufgabenstellung ausreichend im Post beschreiben:
- Hardware-Aufbau
- Gewünschtes Ergebnis
An Deinem Programm ist zu erkennen, dass Dir noch ganze Reihe grundlegender Kenntnisse bzgl. der Anwendung eines Arduino-Prozessors fehlen. Hier ein paar Beispiele dazu:
- Eine der LEDs (LED1) verwendet den selben Pin, der intern für die serielle Schnittstelle eingesetzt wird (siehe auch Post #5 von @wno158). Im aktuellen Sketch steuerst Du keine LED an, insofern ist das (noch) kein Problem.
- In der loop() wird mit digitalRead(Taster) zwar der aktuelle Status des Pins ausgelesen, jedoch keiner Variablen zugewiesen. Das Ergebnis der Abfrage "verpufft" sozusagen ... Die Variable "Taster" als Argument von digitalRead() erhält nämlich nicht das Ergebnis der Abfrage, sondern zeigt dem Compiler auf, an welchem Pin des Arduino der Taster angeschlossen sein sollte.
- Da "Taster=7" gesetzt ist, ist das Ergebnis der if-Abfrage "(Taster==0)" immer falsch, denn 7 ist ungleich Null.
Da ich vermute, dass Du das Programmieren erlernen willst, empfehle ich Dir, diese hervorragende PDF herunterzuladen, zu lesen und Stück für Stück auszuprobieren:
https://www.arduinoforum.de/referenz.php
Die meisten Deiner jetzigen Probleme wirst Du danach lächelnd beseitigen können