new port init + added schematic url
[my-code/atmel.git] / led_plex / port.asm
index 55e90e2..b5aec4b 100644 (file)
@@ -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,6 +27,9 @@ PORT_INIT:
        ; ser -> low
        cbi PORTD,6
 
+       ; release hc595 register clear
+       sbi PORTB,3
+
        ret
 
 SET_HC595: