; main file of led_plex project ; ; schematics: http://hackdaworld.org/download/led_plex/led_plex.png ; ; author: hackbard@hackdaworld.org ; ; device specific definition file .include "../include/tn2313def.inc" ; defines .def tmp1 = r16 .def tmp2 = r17 .def uart_rxtx = r18 .def hc595_sink = r19 .def hc595_source = r20 ; ; interrupts ; ; RESET rjmp INIT ; INT0 reti ; INT1 reti ; T1 CAPT1 reti ; T1 COMP A reti ; T1 OVF1 rjmp T1_OVF ; T0 OVF0 rjmp T0_OVF ; UART RX rjmp UART_RECEIVE ; UART UDRE reti ; UART TX reti ; ANA COMP reti ; PCINT reti ; T1 COMP B reti ; T0 COMP A reti ; T0 COMP B reti ; USI START reti ; USI OVF reti ; EE READY reti ; WDT OVF reti ; ; init and main code ; RESET: INIT: ; gio port init rcall PORT_INIT ; timer init ;rcall TIMER_INIT ; uart init rcall UART_INIT ; uart interrupt enable rcall UART_INT_RX_INIT ; set stackpointer ldi tmp1,low(RAMEND) out SPL,tmp1 ; global interrupt enable ;sei ; signal ready output ldi uart_rxtx,0x68 rcall UART_TX ; testing ... DO NOT CONNECT LEDS BY NOW !!! ldi hc595_sink,0xff ldi hc595_source,0xff rcall SET_HC595 ldi uart_rxtx,0x61 rcall UART_TX MAIN: ; loop forever rjmp MAIN ; include subroutines .include "port.asm" .include "timer.asm" .include "uart.asm" ; ; interrupt routines ; T1_OVF: reti T0_OVF: reti UART_RECEIVE: reti