hi,
habe hier ein board mit dem µC at90s8515 und versuche led's blinken zu
lassen. ich verwende die steinzeit-variante und benutze keinen timer
sondern eine schleife. wie man merkt bin ich anfänger und will
assembler lernen.
so weit bin ich gekommen, aber die leds blinken nicht.
.include "8515def.inc" ;Definitionsdatei einbinden, ggf. durch
rjmp init
init: ldi r16, 0xFF
out DDRB, r16 ;Port B durch Ausgabe von 0xFF ins
;Richtungsregister DDRB als Ausgang
konfigurieren
ldi r16, 0xFF
out PORTB,r16
ldi r16, 0x00
out DDRD, r16 ;Port D durch Ausgabe von 0x00 ins
;Richtungsregister DDRD als Eingang
konfigurieren
main:
ldi r16, 0x00
out PORTB, r16
ldi r17, 0xff
rcall warteschleife
rjmp main
warteschleife:
dec r17
brne warteschleife
rcall warteschleife_end
warteschleife_end:
ldi r16, 0xff
out PORTB, r16
;in r23,pind
;out portb,r23
ldi r17, 0xff
;rcall warteschleife
rjmp main
Du musst zwei Warteschleifen verschachteln. Von 255 auf 0 zu zählen schafft der µC so schnell, dass du es nicht blinken siehst. Ich tippe mal darauf, dass die LEDs dauernd an sind? Gruß, Daniel
Mal mit einem Oszi gemessen was rauskommt? 3N ps: versuchs mal lieber mit Bascom für den Einstieg, sonst ist es leicht frustrierend
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.