Hey Leute, ich möchte in dem Programm SimulIDE, eine LED mit Hilfe eines Arduino Uno zum Blinken bringen. Dazu habe ich an Ausgangspin 2 des Arduino die LED mit Vorwiderstand von 200OHm angeschlossen, und diese Leitung abschließend geerdet. Ich habe in der Arduino IDE Version 2.3.8 den Code: void setup() { // put your setup code here, to run once: pinMode(2,OUTPUT); } void loop() { // put your main code here, to run repeatedly: digitalWrite(2,HIGH); delay(1000); digitalWrite(2,LOW); delay(1000); } geschrieben und nach rechten Mausklick auf den Arduino unter dem Reiter mega328-109-> Eigenschaften -> Firmware das entsprechende Hexfile in den Microcontroller geladen. Die Firmware wurde auch erfolgreich geladen (Nachricht: "Firmware successfully loaded"), trotzdem blinkt die LED beim Starten der Simulation nicht. Auch ein Drehen der LED um 180° gedreht und Variieren der Vorwärtsspannung hat keinen Effekt erzielt. Gibt es vielleicht noch andere Parameter zu beachten? Vielen Dank für eure Hilfe!
a) In SimulIDE gibt es auch ein Oszilloskop. Check' erstmal, ob der Pin wirklich sein Potenzial wechselt. b) bau' in den Loop eine Ausgabe (Serial/Terminal) ein, die je nach Schaltvorgang "ein" und "aus" ausgibt c) Schalte die LED mal mit der Anode gegen Plus. In der Realität kann ein Arduino-Pin mehr Srom aufnehmen als abgeben ... vielleicht hilft es.
Peter schrieb: > Dazu habe ich an Ausgangspin 2 des Arduino die > LED mit Vorwiderstand von 200OHm angeschlossen, und diese Leitung > abschließend geerdet. Da muss man wohl den Arduino auch noch erden.
Wastl schrieb: > Da muss man wohl den Arduino auch noch erden. ... oder die LED an den GND Pin des Arduino anschliessen.
Vielen Dank für eure schnell Hilfe. Ich habe die LED mit den Gnd-Pin des Arduino verbunden und ein Oszilloskop angeschlossen. Darin war zu erkennen, dass der Spannungswert des Pin 2 immer zwischen 5V und 0V toggelt. Ich habe auch nochmal die LED um 180° mehrfach gedreht, um die Anode mit Plus zu verbinden. Trotzdem blinkt die LED nicht? Mein Code mit der Ausgabe von "Ein" bzw. "Aus" sieht jetzt wie folgt aus: void setup() { // put your setup code here, to run once: pinMode(2,OUTPUT); Serial.begin(9600); } void loop() { // put your main code here, to run repeatedly: digitalWrite(2,HIGH); Serial.print("Ein"); delay(1000); digitalWrite(2,LOW); Serial.print("Aus"); delay(1000); } Muss darin noch eine Library eingebunden werden, um die Augabe über das Konsolenfenster zu ermöglichen? Vor "Firmware successfully loaded" erscheint immer die Meldung "Extended Linear Address: 0x0" im Konsolenfenster.
Könnte es sein, dass der von dir verwendete Pin 2 nicht für eine (binäre) Ausgabe geeignet ist? Probier mal andere, z.B. die 8, 9 oder 10 ...
Ich habe das mal eben installiert und bei mir läuft es. Zunächst habe ich die Led an Pin 13 aktiviert. Danach an Pin4 Und noch an Pin2, aber andersrum schaltend.
1 | void setup() {
|
2 | // put your setup code here, to run once: |
3 | pinMode(4,OUTPUT); |
4 | pinMode(2,OUTPUT); |
5 | pinMode(LED_BUILTIN, OUTPUT); |
6 | Serial.begin(9600); |
7 | } |
8 | |
9 | void loop() {
|
10 | // put your main code here, to run repeatedly: |
11 | digitalWrite(4,HIGH); |
12 | digitalWrite(2,LOW); |
13 | digitalWrite(LED_BUILTIN, HIGH); // change state of the LED by setting the pin to the HIGH voltage level |
14 | delay(1000); |
15 | Serial.print("Ein");
|
16 | delay(1000); |
17 | digitalWrite(4,LOW); |
18 | digitalWrite(2,HIGH); |
19 | digitalWrite(LED_BUILTIN, LOW); // change state of the LED by setting the pin to the HIGH voltage level |
20 | delay(1000); |
21 | Serial.print("Aus");
|
22 | delay(1000); |
23 | } |
:
Bearbeitet durch User
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.




