Archiv verlassen und diese Seite im Standarddesign anzeigen : Einfacher Taster
darkkiller
06.04.2007, 17:02
Hallo,
Ich bin gerade dabei meine ersten gehversuche mit ASM zu machn.
Ausgangssituation:
Habe das MyAVR 2.0 (USB)
an PORT-D (2) hängt ein Taster
an PORT-B (2) eine LED
Nun will ich solange der Taster gedrückt ist soll auch die LED leuchten.
Eigentlich ein einfaches unterfangen:
.include "m8def.inc"
ldi r16,255
OUT DDRC,r16 ; AUSGANG
ldi r16,0
OUT DDRB,r16 ; EINGANG
;EDIT:
;Laut dem Forum brauche ich die Pull-Ups --->
ldi r16,0xFF
OUT DDRB,r16
main:
IN r16,PINB
OUT PORTC,r16
RJMP main
Leider geschieht nichts...
Könnte mir jemand hierbei helfn?
Wenn an PORTD.2 der Taster hängt und an PORTB.2 die LED, dann müsste die main so aussehen:
main:
in r16,PIND
out PORTB,r16
rjmp main
Bie Dir wird ja der Zustand von PINB abgefragt, obwohl der Taster an D hängt und das Ergebnis in PORTC geschrieben, obwohl die LED an B hängt.
MfG Mark
darkkiller
06.04.2007, 18:09
uppps mein fehler da war wohl ein kleiner fehler beim copy&paste
Also nochmal +g+
PORT-D (2) Eingang -> Taster
PORT-B (2) Ausgang ->LED
und as dazugehörige programm:
.include "m8def.inc"
ldi r16,255
OUT DDRB,r16 ; AUSGANG
ldi r16,0
OUT DDRD,r16 ; EINGANG
;EDIT:
;Laut dem Forum brauche ich die Pull-Ups --->
ldi r16,0xFF
OUT DDRD,r16
main:
IN r16,PIND
OUT PORTB,r16
RJMP main
komischer weise liefer mir das programm keine reaktion nur wenn ich die LED auf Pin 0 von PortB stecke eine leuchtende led ?
Taster zeigt auch keine wirkung
Wenn Du mit
ldi r16,0xFF
OUT DDRD,r16
PORTD als Ausgang setzt....
Nimm das hier, das sollte klappen:
.include "m8def.inc"
ldi r16,255
OUT DDRB,r16 ; AUSGANG
ldi r16,0
OUT DDRD,r16 ; EINGANG
main:
IN r16,PIND
OUT PORTB,r16
RJMP main
MfG Mark
darkkiller
06.04.2007, 18:20
sorry funktioniert auch nicht :(
Komisch, ich hab es mit AVR-Studio simuliert und da klappte es problemlos... :-k :-k :-k
MfG Mark
darkkiller
06.04.2007, 19:12
laut meinem AVR-Studio funktionierts auch einwandfrei ?
nur auf meiner MyAVR platte nicht ?
So nun stellt sich folgendes problem:
Wenn ich mein Programm im AVR Studio schreibe und mit dem Codevision brenne funktioniert es nicht,
brenne ich aber das SELBE Programm mit myAVR Workbench (=schrott) funktioniert es ?
Hat irgendwer schon einmal das gleiche Phänomen erlebt ?
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.