Liebes Forum, ich bin ganz neu in der Mikrocontrollerwelt und habe gerade begonnen das Tutorial durchzustudieren. Ich habe nach den ersten 3 Lexionen versucht mir selbst einige Aufgaben zu stellen. Ich arbeite im AVR Studio 4 mit einem STK500 und wollte ein Lauflicht programmieren (Lauflicht nicht wirklich von Led zu Led, sondern einfach die Leds nach Binärsystem aufblinken zu lasen). Mein Programm läuft im AVR Studio einwandfrei, jedoch wenn ich es in das STK überspiele (was auch ohne Fehlermedlung funtioniert) leuchten alles 6 Leds auf und das wars. Nun zu meinem Programm: .include "m8def.inc" ldi r16,255 out ddrb, r16 ;Port B auf Ausgang ldi r16, 00 out ddrd, r16 ;Port D auf Eingang .set wart=10 ;Zähler für Warteschleife ldi r16, 254 start: out portb, r16 sbis pind, 0 rjmp start lauf: inc r16 out portb, r16 ldi r17, wart warte: dec r17 BREQ lauf rjmp warte Könnte mir bitte einer erklären, warum das so sein könnte? Danke im voraus
vermutlich schaust du nur nicht genau hin, die leds blinken ein paar tausend mal pro sekunden. Schau doch mal im Stdio bei der CPU dort sieht du die Zeit die jeweils vergeht.
Du solltest vielleicht die Warteschleife "etwas" verlängern...
Danke für die rasche antwort. Ich habe die Zeit auf 255 erhöht und tatsächlich blinken die eltzten leds leicht merkbar. Aber warum beginnt das Programm einfach zu laufen, ohne dass ich einen Taster betätigt habe?
toms schrieb: > Aber warum beginnt das Programm einfach zu laufen, ohne dass ich einen > Taster betätigt habe? kann es sein das der Taster invertiert ist, also gegen Masse schaltet?
Hi .set wart=10 ;Zähler für Warteschleife >ldi r17, wart >warte: dec r17 > BREQ lauf > rjmp warte Was meinst du denn, wie lange da gewartet wird? MfG Spess
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.