Hallo, ich bin Henrik, 24, und versuche mich eben an einem Arduino Uno R3.
Das Programm ist recht einfach gedacht, wenn dort Signal, dann dort Ausgang. Aber es funktioniert nicht, Compiler sagt nein.
Das hier ist der Code:
'''
void setup() {
// put your setup code here, to run once:
pinMode(8, INPUT);
pinMode(12, OUTPUT);
pinMode(13, OUTPUT);
}
void loop() {
// put your main code here, to run repeatedly:
if (digitalRead(8) == HIGH)
{digitalWrite(13)};
}
'''
Die IDE-Version ist 1.8.16 und ich arbeite, bitte nicht weiter kommentieren, mit XP Professional. Mit Elektronik kenne ich mich durch meine noch laufende Ausbildung (Elektr. f. Energie- und Gebäudetechnik) ganz ok aus, mit Programmierung hatte ich zuletzt vor über 5 Jahren in der Schule zu tun.
Ich freue mich auf eure Hilfe
Hm, also zum Code posten: ''' Code ''', oder nicht?
Ich krieg unten im schwarzen Feld einige Fehlermeldungen, aber die sagen mir nicht viel. Was Arduino angeht, bin ich absoluter Anfänger...
Leider kann ich über den PC das Forum nicht aufrufen, weil die Uhrzeit falsch sein soll...
Hallo henrik-97
Der/die/das IDE bietet eine gute Unterstützung beim Lernen an.
Dazu im Sketch die farbig hinterlegte Anweisung, z.B. digitalWrite, markieren und mit CTRL-SHIFT-F die Arduino Referenz aufrufen.
Ich wünsche einen geschmeidigen Tag und viel Spass beim Programmieren in C++.
Doch eine kleine Anmerkung/Frage.
Läuft denn die erwähnte Arduino-IDE auf XP überhaupt noch? Ich dachte ab 1.8.10 ist Schluss (1.8.9 und früher funktioniert noch).
Siehe:
und:
Hab auch noch einen alten PC mit XP, da läuft (nur) 1.8.8. (oder früher) ohne Probleme (1.8.9 hab ich nicht ausprobiert).
Ok, also muss ich mal den Laptop ausbuddeln, mit dem müsste das dann gehen. Versuch ich gleich mal.
Wegen der Uhrzeit: die bezieht der PC von einem Server (bisher Microsoft, jetzt mal Google probiert), das hat bis vor einer Weile auch gut funktioniert, aber seit neuestem eben nicht mehr...
Den Widerstand hab ich noch nicht drin, aber gut, dass du es sagst, ich hab ja noch welche liegen.
Ein Taster wie jeder mechanische Kontakt braucht einen Pullup oder pulldown-Widerstand damit der Eingang bei nicht betätigten Taster/offenen Kontakt) ein definiertes Potential hat. Ansonsten mißt er zufällig LOW bzw HIGH.
Der Controller hat intergrierte Pullupwiderstände Die Du benutzen könntest. Dann muß aber der Taster/Kontakt zwischen Eingang und Masse geschaltet sein.
Ja, das hatte ich vor einer Weile mal bei einem Versuch, da musste man nur den Kontakt berühren...
Hab jetzt einen 430kOhm-Widerstand drin, damit sollte das klappen.
Das würde ich nicht sagen.
430kOhm ist sicher am oberen Limit aber müßte funktionieren. Ein großer Wert bedingt kleinere Verluste macht aber auch empfindlicher gegen Störungen.
Ich gebe Tommy56 recht daß 10kOhm eine gute Wahl ist.
Gerade wenn man schon Probleme damit hat, sollte man lieber eim sicheren Bereich arbeiten. Optimieren kann man später immer noch, wenn das notwendig sein sollte.
Naja, wenn ich hier immer wieder lese, wie lange es dauert bis die Ladung auf der Leitung bei der Definition INPUT stand hält, um dann den Wechsel auf LOW zu ermöglichen, sind 430K schon gut.
Ab 1Mohm würde ich intervenieren
So, der Spaß geht weiter. Diesmal ein eher elektronisches Problem. Der Aufbau ist simpel, ein Taster als Eingang, ein Relais am Ausgang. 2 weitere Relais sind auch angeschlossen, aber ohne Funktion. Die Relais sollen am Ende 8VAC-Relais schalten. Nun das Problem: ist der Trafo aus, zieht das Relais bei Tasterbetätigung an und fällt entsprechend auch wieder ab. Schalte ich den Trafo zu, kann man nur noch raten, wie das Relais auf was reagiert. Die LED der anderen beiden Relais glimmen dann auch mit, bzw. leuchten beim Loslassen des Tasters kurz auf. Das Problem wird ja nun bestimmt an der Wechselspannung liegen. Wie kriegt man sowas gelöst, woran liegt das genau?
Hast du aus den vorherigen Posts nichts gelernt ?
Wir brauchen mehr und korrekte Informationen.
Zeige uns dein Schaltbild, wie du alles verdrahtet hast.
Und zeige uns deinen Sketch, diesmal aber gleich richtig in Code-Tags.