new prescaler + debug outs
[my-code/atmel.git] / led_plex / port.asm
index 55e90e2..7109c3c 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,12 +27,21 @@ PORT_INIT:
        ; ser -> low
        cbi PORTD,6
 
+       ; port d 2 -> output (debug clk!)
+       sbi DDRD,2
+
+       ; port d 3 -> output (debug vertical!)
+       sbi DDRD,3
+
+       ; release hc595 register clear
+       sbi PORTB,3
+
        ret
 
 SET_HC595:
 
        ; storage clock -> low
-       cbi PORTD,1
+       cbi PORTB,1
 
        ; source driver