Hallo,
Ich bin ein Blutiger Anfänger und möchte ein Signal zählen und es dazu benutzen um 2 relais anzusteuern (Relais2 und Relais3)
davor soll relais 2 noch durch Signal2 angesteuert werden.... jedoch bekomme ich das irgendwie nicht hin es wird nur Relais1 und relais2 geschalten
int Relais1 = 13;
int Relais2 = 12;
int Relais3 = 8;
int Signal1 = 2;
int Signal2 = 4;
int SignalAnzahl = 0;
int SignalZustand = 0;
int LetzterSignalZustand = 0;
void setup()
{
Ich hatte gehofft das ganze ohne Millis hinzubekommen da ich das thema trotz mehrerer Videos und Forumsbeiträge noch nicht ganz praktisch anwenden kann habe den arduino seit dem 30/04
Ich verstehe das Millis wichtig sind und will den Umgang damit auch noch lernen jedoch würde ich mich sehr darüber freuen wenn mir jemand Tipps für dieses Projekt geben könnte (Automatisches öffnen u d schließen einer Klappe über funksignal mit endschalter und linearantrieb) ich als Laie finde das der sketch logisch ist und komme deshalb nicht weiter ich kann euch versichern das ich einige Stunden in das Thema investiert habe dieser Forumsbeitrag ist sozusagen ein Schrei nach Hilfe
JA!!!
Wenn Du einen Sender hast, der NUR EIN SIGNAL PRO TASTENDRUCK abgibt UND SELBER DAS BOUNCE BEARBEITET, dann geht das.
Ich glaube nicht daran, das dieser das tut.
const int Led1 = 13;
const int Led2 = 12;
const int Signal = 2;
unsigned int SignalAnzahl = 0;
void setup() {
pinMode(Led1, OUTPUT);
pinMode(Led2, OUTPUT);
pinMode(Signal, INPUT);
}
void loop() {
if (digitalRead(Signal))
{
SignalAnzahl+;
if (SignalAnzahl > 2) SignalAnzahl = 0;
}
if (SignalAnzahl == 1)
{
digitalWrite(Led1, HIGH);
delay(300);
digitalWrite(Led1, LOW);
}
if (SignalAnzahl == 2)
{
digitalWrite(Led2, HIGH);
delay(3000);
digitalWrite(Led2, LOW);
SignalAnzahl = 0; // setzt zähler auf 0
}
}
Hallo,
im einfachsten Fall brauchst du einen Endlichen Automaten, basierend auf der SWITCH/CASE Anweisung, einen Timer und und eine Button-Auswertung, die die Zustandsübergänge im Endlichen Automaten steuern.
Also ehrlich, ich habe mich gerade nochmal durch Deinen Eingangspost gewurschtelt, aber Deine Beschreibung ist nicht aufklärend.
Der Code da oben nicht in codetags macht es nicht einfacher.
Wenn Du irgendwas willst, dann beschreibe die Aufgabe und kommentiere den Code, den Du bitte in Codetags verfasst!
fangen wir mal von vorne an: WAS willst du schlussendlich steuern?
Mach eine Handskizze von deinem Aufbau damit wir verstehen was du willst.
Zum Programm:
Wenn du was auslösen willst, beschreibe welche Pins in welcher Reihenfolge geschaltet werden sollen.
Wodurch wird ein Zustand wieder zurückgenommen? Nur durch Zeitablauf und/oder durch ein anderes Signal?
Beschreibe den Programmablauf in kurzen Sätzen.
(bei langen Sätzen tut sich ein Anfänger schwer daraus Code zu machen)