X-Git-Url: https://hackdaworld.org/gitweb/?a=blobdiff_plain;f=led_plex%2Fport.asm;h=eefa04fcccbf0c04d653c8b7feb0be3b0a040666;hb=7b9bd2b13a2445b7c1ebd50a66d2841e124e0d0d;hp=55e90e2ccf45c3355647a3aadc4fd63a307fc37c;hpb=87ef21d9eacec01abdbf3306dd2493aecf0b4afb;p=my-code%2Fatmel.git diff --git a/led_plex/port.asm b/led_plex/port.asm index 55e90e2..eefa04f 100644 --- a/led_plex/port.asm +++ b/led_plex/port.asm @@ -6,10 +6,20 @@ PORT_INIT: ldi tmp1,0x0f out DDRB,tmp1 - ; g, rck, sck -> low / scl -> high - ldi tmp1,0x07 - out PORTB,tmp1 - sbi PORTB,3 + ; disable hc595 outputs + sbi PORTB,0 + + ; rck -> low + cbi PORTB,1 + + ; clear hc595 registers + cbi PORTB,3 + + ; rck -> high (store shift register data) + sbi PORTB,1 + + ; enable outputs + cbi PORTB,0 ; port d 6 -> output sbi DDRD,6 @@ -17,12 +27,15 @@ PORT_INIT: ; ser -> low cbi PORTD,6 + ; release hc595 register clear + sbi PORTB,3 + ret SET_HC595: ; storage clock -> low - cbi PORTD,1 + cbi PORTB,1 ; source driver