X-Git-Url: https://hackdaworld.org/gitweb/?a=blobdiff_plain;f=led_plex%2Fmain.asm;fp=led_plex%2Fmain.asm;h=cfa8c2ec9e223d17ce6b97188fd878629ac08a56;hb=76492de1fddc432eb4bf67df8cec93e00641eb78;hp=0000000000000000000000000000000000000000;hpb=7ab0e40c8befe5650c4b859125a6f2b4ea6d2ddf;p=my-code%2Fatmel.git diff --git a/led_plex/main.asm b/led_plex/main.asm new file mode 100644 index 0000000..cfa8c2e --- /dev/null +++ b/led_plex/main.asm @@ -0,0 +1,129 @@ +; main file of led_plex project +; +; author: hackbard@hackdaworld.org +; + +; device specific definition file +.include "../include/tn2313def.inc" + +; defines +.def tmp1 = r16 +.def tmp2 = r17 +.def uart_rxtx = r18 + +; +; interrupts +; + +; RESET +rjmp INIT + +; INT0 +reti + +; INT1 +reti + +; T1 CAPT1 +reti + +; T1 COMP A +reti + +; T1 OVF1 +rjmp T1_OVF1 + +; T0 OVF0 +rjmp T0_OVF0 + +; UART RX +rjmp UART_RX + +; 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 + + +; include control defines +.include "ctrl.def" + +RESET: +INIT: + + ; 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,0x23 + rcall UART_TX + +MAIN: + + ; loop forever + rjmp MAIN + + +; include subroutines +.include "port.asm" +.include "timer.asm" +.include "uart.asm" + + +; +; interrupt routines +; + +T1_OVF1: + reti + +T0_OVF0: + reti + +UART_RX: + reti +