Gast
#105945
Hallo zusammen,
ich mach jetzt schon 3h rum und bekomme das nicht hin:
Die Led an Portb PB4 soll leuchten wenn der Taster an Portb PB0
gedrückt wird.
In der Simulation (AVR Studio4) gehts einwandfrei.
;Led auf PortB Bit4 ausgeben wenn Port PB0 =0
;Led leuchtet wenn bit4=0; Pb0=0 wenn Taster gedrückt
.nolist
.include "tn12def.inc"
.list
loop:
ldi r16, 0b00010000 ;Datenrichtung einstellen, PB4 als Ausgang,
;PB0 als Eingang
out ddrb, r16
ldi R17, 0b00010000
out portb, r17 ;Led aussschalten
sbic portb,0 ;Tastenabfrage, wenn Bit0=0 (=gedrückt)
;dann übersrpinge
rjmp loop
ldi R17, 0b00000000
out portb, r17 ;Led ein
Was überseh ich da?
Das ganz mach auf ich auf dem STK500.
Der Taster (0V/5V) kommt am IC (Pin5) an.
Ebenso kann ich die Led mit einem anderen Programm zum blinken
bewegen.
Die Led leuchtet dauernd.
Das heisst ja, daß das Bit0 "Null" ist.
Aber es müsste doch eine "1" sein!
(ist der Taster nicht gedrückt, erscheint an Pin5 5Volt)
Hat das was mit den internen "Pull-ups" zu tun?
Danke mal schon im voraus, ein blutiger Anfänger ;-)