|
Mobil_surveillance_system 1
|
00001 #include "Interrupts.h" 00002 00003 00005 00011 //***************************************************************************** 00012 // 00013 // Global variables 00014 // 00015 //***************************************************************************** 00016 00018 tpfInterruptsCallbackFunction g_pfOnUSCI0RX_ISRcallback = NULL; 00019 00021 tpfInterruptsCallbackFunction g_pfOnUSCI0TX_ISRcallback = NULL; 00022 00024 tpfInterruptsCallbackFunction g_pfOnUSCI1RX_ISRcallback = NULL; 00025 00027 tpfInterruptsCallbackFunction g_pfOnUSCI1TX_ISRcallback = NULL; 00028 00030 tpfInterruptsCallbackFunction g_pfOnTimerA_ISRcallback = NULL; 00031 00032 //***************************************************************************** 00033 // 00034 // Function declarations of init functions of callbacks 00035 // 00036 //***************************************************************************** 00037 00038 00040 void Interrupts_setUSCI0RX_ISRCallbackFunction(tpfInterruptsCallbackFunction pfUSCI0RX_ISRcallback) 00042 { 00043 g_pfOnUSCI0RX_ISRcallback = pfUSCI0RX_ISRcallback; 00044 } 00045 00046 00048 void Interrupts_setUSCI0TX_ISRCallbackFunction(tpfInterruptsCallbackFunction pfUSCI0TX_ISRcallback) 00050 { 00051 g_pfOnUSCI0TX_ISRcallback = pfUSCI0TX_ISRcallback; 00052 } 00053 00054 00056 void Interrupts_setUSCI1RX_ISRCallbackFunction(tpfInterruptsCallbackFunction pfUSCI1RX_ISRcallback) 00058 { 00059 g_pfOnUSCI1RX_ISRcallback = pfUSCI1RX_ISRcallback; 00060 } 00061 00063 void Interrupts_setUSCI1TX_ISRCallbackFunction(tpfInterruptsCallbackFunction pfUSCI1TX_ISRcallback) 00065 { 00066 g_pfOnUSCI1TX_ISRcallback = pfUSCI1TX_ISRcallback; 00067 } 00068 00069 00071 void Interrupts_setTimerA_ISRCallbackFunction(tpfInterruptsCallbackFunction pfTimerA_ISRcallback) 00073 { 00074 g_pfOnTimerA_ISRcallback = pfTimerA_ISRcallback; 00075 } 00076 00077 00078 //***************************************************************************** 00079 // 00080 // Function definations of interrupts service rutins 00081 // 00082 //***************************************************************************** 00083 00085 #pragma vector = USCIAB0RX_VECTOR // This line indicates that the function that follows is to be used as 00086 // the interrupt vector routine for the listed vector. 00087 00089 __interrupt void USCI0RX_ISR(void) 00091 { 00092 // if callback funtion is set call it 00093 if(g_pfOnUSCI0RX_ISRcallback){ 00094 g_pfOnUSCI0RX_ISRcallback(); 00095 } 00096 } 00097 00098 00100 #pragma vector = USCIAB0TX_VECTOR 00101 00103 __interrupt void USCI0TX_ISR(void) 00105 { 00106 // if callback funtion is set call it 00107 if(g_pfOnUSCI0TX_ISRcallback){ 00108 g_pfOnUSCI0TX_ISRcallback(); 00109 } 00110 } 00111 00112 00114 #pragma vector = USCIAB1RX_VECTOR 00115 00117 __interrupt void USCI1RX_ISR(void) 00119 { 00120 // if callback funtion is set call it; 00121 if(g_pfOnUSCI1RX_ISRcallback){ 00122 g_pfOnUSCI1RX_ISRcallback(); 00123 } 00124 } 00125 00126 00128 #pragma vector = USCIAB1TX_VECTOR 00129 00131 __interrupt void USCI1TX_ISR(void) 00133 { 00134 // if callback funtion is set call it 00135 if(g_pfOnUSCI1TX_ISRcallback){ 00136 g_pfOnUSCI1TX_ISRcallback(); 00137 } 00138 } 00139 00140 00141 // TIMER A ISR 00142 #pragma vector=TIMERA0_VECTOR 00143 00145 __interrupt void TimerA_ISR (void) 00147 { 00148 // if callback funtion is set call it 00149 if(g_pfOnTimerA_ISRcallback){ 00150 g_pfOnTimerA_ISRcallback(); 00151 } 00152 }
1.7.4