I am confused by the response of the LEDs on the STK500. It appears to me
that sending a logical high turns off the LED, and sending a logical low
turns it on. Is this how they are meant to work? (I know that pressing the
switches drives the input pin low, so I suppose this is conceivable.)
Altnatively, there must be something else I not be understanding.
I believe the code below should send logical low to all LEDs (since I have
physically connected the port b header to the LEDs, I am telling the port
it will be used for output, and I am sending $00 to the output port
register). Yet the result from this code is that all LEDs are on.
Note that several similar experiments give the same result (LEDs show
opposite pattern than I expect). If I send $ff to PORTB, all lights are
off. If I send $aa to PORTB, the output pattern is '0101 0101'.
Any suggestions?
---------------------------------------------------
.include "m8515def.inc"
loop:
LDI r17, $ff
OUT DDRB, r17 ; set all pins to output
LDI r16, $00
OUT PORTB, r16 ; output pattern should be '0000 0000'?
RJMP loop
; END
_______________________________________________
AVR-chat mailing list
AVR-chat@nongnu.org
http://lists.nongnu.org/mailman/listinfo/avr-chat