.module _HC12Setup.c .area text 0000 __HC12Setup:: 0000 ; // _HC12Setup.c 0000 ; 0000 ; #include <912d60.h> 0000 ; #include "kernel.h" 0000 ; 0000 ; 0000 ; 0000 ; void _HC12Setup(void) { 0000 ; 0000 ; // set the register base to 0x800 0000 ; //*(volatile unsigned char *)0x0011 = 0x08; 0000 ; 0000 ; 0000 ; // set up the RTI INTERRUPT 0000 ; INTR_OFF(); // disable/mask all maskable interrupts 0000 1410 sei 0002 0002 ; RTICTL = 0x86; // enable RTI at 65.536 miliseconds 0002 C686 ldab #134 0004 7B0014 stab 0x14 0007 ; //RTICTL = 0x85; // enable RTI at 32.768 miliseconds 0007 ; RTIFLG = 0x80; // clear real time interrupt flag 0007 C680 ldab #128 0009 7B0015 stab 0x15 000C ; 000C ; 000C ; // set up the COP WATCHDOG clock monitor for 524.288 ms 000C ; COPCTL = 0xC5; // COP on 000C C6C5 ldab #197 000E 7B0016 stab 0x16 0011 ; //COPCTL = 0x00; // COP off 0011 ; 0011 ; 0011 ; // set the TOF interrupt up 0011 ; TMSK2 = 0x87; // set to interrupt at 65.536 microseconds 0011 C687 ldab #135 0013 7B008D stab 0x8d 0016 ; PACTL = 0016 C680 ldab #128 0018 7B0086 stab 0x86 001B C680 ldab #128 001D 7B00A0 stab 0xa0 0020 ; TSCR = 0x80; 0020 ; 0020 ; HPRIO = 0xDE; // elevate the TOF interrupt 0020 C6DE ldab #222 0022 7B001F stab 0x1f 0025 ; 0025 ; } 0025 L3: 0025 .dbline 0 ; func end 0025 3D rts