| ;******************** (C) COPYRIGHT 2006 STMicroelectronics ******************** | |
| ;* File Name : 75x_vect.c | |
| ;* Author : MCD Application Team | |
| ;* Date First Issued : 03/10/2006 | |
| ;* Description : This file used to initialize the exception and IRQ | |
| ;* vectors, and to enter/return to/from exceptions handlers. | |
| ;******************************************************************************* | |
| ; History: | |
| ; 07/17/2006 : V1.0 | |
| ; 03/10/2006 : V0.1 | |
| ;******************************************************************************* | |
| ;* THE PRESENT SOFTWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS | |
| ;* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME. | |
| ;* AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT, | |
| ;* INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE | |
| ;* CONTENT OF SUCH SOFTWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING | |
| ;* INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. | |
| ;******************************************************************************* | |
| #include "FreeRTOSConfig.h" | |
| #include "ISR_Support.h" | |
| PROGRAM ?RESET | |
| SECTION .intvec:CODE(2) | |
| CODE32 | |
| EIC_base_addr EQU 0xFFFFF800 ; EIC base address | |
| CICR_off_addr EQU 0x04 ; Current Interrupt Channel Register | |
| IVR_off_addr EQU 0x18 ; Interrupt Vector Register | |
| IPR_off_addr EQU 0x40 ; Interrupt Pending Register | |
| ;******************************************************************************* | |
| ; Import the __program_start address from 75x_init.s | |
| ;******************************************************************************* | |
| IMPORT __iar_program_start | |
| ;******************************************************************************* | |
| ; Import exception handlers | |
| ;******************************************************************************* | |
| IMPORT Undefined_Handler | |
| IMPORT SWI_Handler | |
| IMPORT Prefetch_Handler | |
| IMPORT Abort_Handler | |
| IMPORT FIQ_Handler | |
| ;******************************************************************************* | |
| ; Import IRQ handlers from 75x_it.c | |
| ;******************************************************************************* | |
| IMPORT WAKUP_IRQHandler | |
| IMPORT TIM2_OC2_IRQHandler | |
| IMPORT TIM2_OC1_IRQHandler | |
| IMPORT TIM2_IC12_IRQHandler | |
| IMPORT TIM2_UP_IRQHandler | |
| IMPORT TIM1_OC2_IRQHandler | |
| IMPORT TIM1_OC1_IRQHandler | |
| IMPORT TIM1_IC12_IRQHandler | |
| IMPORT TIM1_UP_IRQHandler | |
| IMPORT TIM0_OC2_IRQHandler | |
| IMPORT TIM0_OC1_IRQHandler | |
| IMPORT TIM0_IC12_IRQHandler | |
| IMPORT TIM0_UP_IRQHandler | |
| IMPORT PWM_OC123_IRQHandler | |
| IMPORT PWM_EM_IRQHandler | |
| IMPORT PWM_UP_IRQHandler | |
| IMPORT I2C_IRQHandler | |
| IMPORT SSP1_IRQHandler | |
| IMPORT SSP0_IRQHandler | |
| IMPORT UART2_IRQHandler | |
| IMPORT UART1_IRQHandler | |
| IMPORT vSerialISR | |
| IMPORT CAN_IRQHandler | |
| IMPORT USB_LP_IRQHandler | |
| IMPORT USB_HP_IRQHandler | |
| IMPORT ADC_IRQHandler | |
| IMPORT DMA_IRQHandler | |
| IMPORT EXTIT_IRQHandler | |
| IMPORT MRCC_IRQHandler | |
| IMPORT FLASHSMI_IRQHandler | |
| IMPORT RTC_IRQHandler | |
| IMPORT TB_IRQHandler | |
| IMPORT vPortPreemptiveTick | |
| IMPORT vPortYieldProcessor | |
| IMPORT UART0_IRQHandler | |
| ;******************************************************************************* | |
| ; Export Peripherals IRQ handlers table address | |
| ;******************************************************************************* | |
| EXPORT WAKUP_Addr | |
| ;******************************************************************************* | |
| ; Exception vectors | |
| ;******************************************************************************* | |
| LDR PC, Reset_Addr | |
| LDR PC, Undefined_Addr | |
| LDR PC, SWI_Addr | |
| LDR PC, Prefetch_Addr | |
| LDR PC, Abort_Addr | |
| NOP ; Reserved vector | |
| LDR PC, IRQ_Addr | |
| LDR PC, FIQ_Addr | |
| ;******************************************************************************* | |
| ; Exception handlers address table | |
| ;******************************************************************************* | |
| Reset_Addr DCD __iar_program_start | |
| Undefined_Addr DCD UndefinedHandler | |
| SWI_Addr DCD vPortYieldProcessor | |
| Prefetch_Addr DCD PrefetchAbortHandler | |
| Abort_Addr DCD DataAbortHandler | |
| DCD 0 ; Reserved vector | |
| IRQ_Addr DCD IRQHandler | |
| FIQ_Addr DCD FIQHandler | |
| ;******************************************************************************* | |
| ; Peripherals IRQ handlers address table | |
| ;******************************************************************************* | |
| WAKUP_Addr DCD WAKUPIRQHandler | |
| TIM2_OC2_Addr DCD TIM2_OC2IRQHandler | |
| TIM2_OC1_Addr DCD TIM2_OC1IRQHandler | |
| TIM2_IC12_Addr DCD TIM2_IC12IRQHandler | |
| TIM2_UP_Addr DCD TIM2_UPIRQHandler | |
| TIM1_OC2_Addr DCD TIM1_OC2IRQHandler | |
| TIM1_OC1_Addr DCD TIM1_OC1IRQHandler | |
| TIM1_IC12_Addr DCD TIM1_IC12IRQHandler | |
| TIM1_UP_Addr DCD TIM1_UPIRQHandler | |
| TIM0_OC2_Addr DCD TIM0_OC2IRQHandler | |
| TIM0_OC1_Addr DCD TIM0_OC1IRQHandler | |
| TIM0_IC12_Addr DCD TIM0_IC12IRQHandler | |
| TIM0_UP_Addr DCD TIM0_UPIRQHandler | |
| PWM_OC123_Addr DCD PWM_OC123IRQHandler | |
| PWM_EM_Addr DCD PWM_EMIRQHandler | |
| PWM_UP_Addr DCD PWM_UPIRQHandler | |
| I2C_Addr DCD I2CIRQHandler | |
| SSP1_Addr DCD SSP1IRQHandler | |
| SSP0_Addr DCD SSP0IRQHandler | |
| UART2_Addr DCD UART2IRQHandler | |
| UART1_Addr DCD UART1IRQHandler | |
| UART0_Addr DCD vSerialISR | |
| CAN_Addr DCD CANIRQHandler | |
| USB_LP_Addr DCD USB_LPIRQHandler | |
| USB_HP_Addr DCD USB_HPIRQHandler | |
| ADC_Addr DCD ADCIRQHandler | |
| DMA_Addr DCD DMAIRQHandler | |
| EXTIT_Addr DCD EXTITIRQHandler | |
| MRCC_Addr DCD MRCCIRQHandler | |
| FLASHSMI_Addr DCD FLASHSMIIRQHandler | |
| RTC_Addr DCD RTCIRQHandler | |
| TB_Addr DCD vPortPreemptiveTick | |
| ;******************************************************************************* | |
| ; Exception Handlers | |
| ;******************************************************************************* | |
| ;******************************************************************************* | |
| ;* Macro Name : SaveContext | |
| ;* Description : This macro used to save the context before entering | |
| ;* an exception handler. | |
| ;* Input : The range of registers to store. | |
| ;* Output : none | |
| ;******************************************************************************* | |
| SaveContext MACRO reg1,reg2 | |
| STMFD sp!,{reg1-reg2,lr} ; Save The workspace plus the current return | |
| ; address lr_ mode into the stack. | |
| MRS r1,spsr ; Save the spsr_mode into r1. | |
| STMFD sp!,{r1} ; Save spsr. | |
| ENDM | |
| ;******************************************************************************* | |
| ;* Macro Name : RestoreContext | |
| ;* Description : This macro used to restore the context to return from | |
| ;* an exception handler and continue the program execution. | |
| ;* Input : The range of registers to restore. | |
| ;* Output : none | |
| ;******************************************************************************* | |
| RestoreContext MACRO reg1,reg2 | |
| LDMFD sp!,{r1} ; Restore the saved spsr_mode into r1. | |
| MSR spsr_cxsf,r1 ; Restore spsr_mode. | |
| LDMFD sp!,{reg1-reg2,pc}^; Return to the instruction following... | |
| ; ...the exception interrupt. | |
| ENDM | |
| ;******************************************************************************* | |
| ;* Function Name : UndefinedHandler | |
| ;* Description : This function called when undefined instruction exception | |
| ;* is entered. | |
| ;* Input : none | |
| ;* Output : none | |
| ;******************************************************************************* | |
| UndefinedHandler | |
| SaveContext r0,r12 ; Save the workspace plus the current | |
| ; return address lr_ und and spsr_und. | |
| ldr r0,=Undefined_Handler | |
| ldr lr,=Undefined_Handler_end | |
| bx r0 ;Branch to Undefined_Handler | |
| Undefined_Handler_end: | |
| RestoreContext r0,r12 ; Return to the instruction following... | |
| ; ...the undefined instruction. | |
| ;******************************************************************************* | |
| ;* Function Name : SWIHandler | |
| ;* Description : This function called when SWI instruction executed. | |
| ;* Input : none | |
| ;* Output : none | |
| ;******************************************************************************* | |
| SWIHandler | |
| SaveContext r0,r12 ; Save the workspace plus the current | |
| ; return address lr_ svc and spsr_svc. | |
| ldr r0,= SWI_Handler | |
| ldr lr,= SWI_Handler_end | |
| bx r0 ;Branch to SWI_Handler | |
| SWI_Handler_end: | |
| RestoreContext r0,r12 ; Return to the instruction following... | |
| ; ...the SWI instruction. | |
| ;******************************************************************************* | |
| ;* Function Name : IRQHandler | |
| ;* Description : This function called when IRQ exception is entered. | |
| ;* Input : none | |
| ;* Output : none | |
| ;******************************************************************************* | |
| IRQHandler | |
| portSAVE_CONTEXT ; Save the context of the current task. | |
| LDR r0, =EIC_base_addr | |
| LDR r1, =IVR_off_addr | |
| LDR lr, =ReturnAddress ; Load the return address. | |
| ADD pc,r0,r1 ; Branch to the IRQ handler. | |
| ReturnAddress | |
| LDR r0, =EIC_base_addr | |
| LDR r2, [r0, #CICR_off_addr] ; Get the IRQ channel number | |
| MOV r3,#1 | |
| MOV r3,r3,LSL r2 | |
| STR r3,[r0, #IPR_off_addr] ; Clear the corresponding IPR bit. | |
| portRESTORE_CONTEXT ; Restore the context of the selected task. | |
| ;******************************************************************************* | |
| ;* Function Name : PrefetchAbortHandler | |
| ;* Description : This function called when Prefetch Abort exception is entered. | |
| ;* Input : none | |
| ;* Output : none | |
| ;******************************************************************************* | |
| PrefetchAbortHandler | |
| SUB lr,lr,#4 ; Update the link register. | |
| SaveContext r0,r7 ; Save the workspace plus the current | |
| ; return address lr_abt and spsr_abt. | |
| ldr r0,= Prefetch_Handler | |
| ldr lr,= Prefetch_Handler_end | |
| bx r0 ;Branch to Prefetch_Handler | |
| Prefetch_Handler_end: | |
| RestoreContext r0,r7 ; Return to the instruction following that... | |
| ; ...has generated the prefetch abort exception. | |
| ;******************************************************************************* | |
| ;* Function Name : DataAbortHandler | |
| ;* Description : This function is called when Data Abort exception is entered. | |
| ;* Input : none | |
| ;* Output : none | |
| ;******************************************************************************* | |
| DataAbortHandler | |
| SUB lr,lr,#8 ; Update the link register. | |
| SaveContext r0,r12 ; Save the workspace plus the current | |
| ; return address lr_ abt and spsr_abt. | |
| ldr r0,= Abort_Handler | |
| ldr lr,= Abort_Handler_end | |
| bx r0 ;Branch to Abort_Handler | |
| Abort_Handler_end: | |
| RestoreContext r0,r12 ; Return to the instruction following that... | |
| ; ...has generated the data abort exception. | |
| ;******************************************************************************* | |
| ;* Function Name : FIQHandler | |
| ;* Description : This function is called when FIQ exception is entered. | |
| ;* Input : none | |
| ;* Output : none | |
| ;******************************************************************************* | |
| FIQHandler | |
| SUB lr,lr,#4 ; Update the link register. | |
| SaveContext r0,r7 ; Save the workspace plus the current | |
| ; return address lr_ fiq and spsr_fiq. | |
| ldr r0,= FIQ_Handler | |
| ldr lr,= FIQ_Handler_end | |
| bx r0 ;Branch to FIQ_Handler | |
| FIQ_Handler_end: | |
| RestoreContext r0,r7 ; Restore the context and return to the... | |
| ; ...program execution. | |
| ;******************************************************************************* | |
| ;* Macro Name : IRQ_to_SYS | |
| ;* Description : This macro used to switch form IRQ mode to SYS mode. | |
| ;* Input : none. | |
| ;* Output : none | |
| ;******************************************************************************* | |
| IRQ_to_SYS MACRO | |
| MSR cpsr_c,#0x1F | |
| STMFD sp!,{lr} | |
| ENDM | |
| ;******************************************************************************* | |
| ;* Macro Name : SYS_to_IRQ | |
| ;* Description : This macro used to switch from SYS mode to IRQ mode. | |
| ;* Input : none. | |
| ;* Output : none | |
| ;******************************************************************************* | |
| SYS_to_IRQ MACRO | |
| LDMFD sp!,{lr} | |
| MSR cpsr_c,#0xD2 | |
| MOV pc,lr | |
| ENDM | |
| ;******************************************************************************* | |
| ;* Function Name : WAKUPIRQHandler | |
| ;* Description : This function used to switch to SYS mode before entering | |
| ;* the WAKUP_IRQHandler function located in 75x_it.c. | |
| ;* Then to return to IRQ mode after the WAKUP_IRQHandler | |
| ;* function termination. | |
| ;* Input : none | |
| ;* Output : none | |
| ;******************************************************************************* | |
| WAKUPIRQHandler | |
| IRQ_to_SYS | |
| ldr r0,=WAKUP_IRQHandler | |
| ldr lr,=WAKUP_IRQHandler_end | |
| bx r0 | |
| WAKUP_IRQHandler_end: | |
| SYS_to_IRQ | |
| ;******************************************************************************* | |
| ;* Function Name : TIM2_OC2IRQHandler | |
| ;* Description : This function used to switch to SYS mode before entering | |
| ;* the TIM2_OC2_IRQHandler function located in 75x_it.c. | |
| ;* Then to return to IRQ mode after the TIM2_OC2_IRQHandler | |
| ;* function termination. | |
| ;* Input : none | |
| ;* Output : none | |
| ;******************************************************************************* | |
| TIM2_OC2IRQHandler | |
| IRQ_to_SYS | |
| ldr r0,=TIM2_OC2_IRQHandler | |
| ldr lr,=TIM2_OC2_IRQHandler_end | |
| bx r0 | |
| TIM2_OC2_IRQHandler_end: | |
| SYS_to_IRQ | |
| ;******************************************************************************* | |
| ;* Function Name : TIM2_OC1IRQHandler | |
| ;* Description : This function used to switch to SYS mode before entering | |
| ;* the TIM2_OC1_IRQHandler function located in 75x_it.c. | |
| ;* Then to return to IRQ mode after the TIM2_OC1_IRQHandler | |
| ;* function termination. | |
| ;* Input : none | |
| ;* Output : none | |
| ;******************************************************************************* | |
| TIM2_OC1IRQHandler | |
| IRQ_to_SYS | |
| ldr r0,=TIM2_OC1_IRQHandler | |
| ldr lr,=TIM2_OC1_IRQHandler_end | |
| bx r0 | |
| TIM2_OC1_IRQHandler_end: | |
| SYS_to_IRQ | |
| ;******************************************************************************* | |
| ;* Function Name : TIM2_IC12IRQHandler | |
| ;* Description : This function used to switch to SYS mode before entering | |
| ;* the TIM2_IC12_IRQHandler function located in 75x_it.c. | |
| ;* Then to return to IRQ mode after the TIM2_IC12_IRQHandler | |
| ;* function termination. | |
| ;* Input : none | |
| ;* Output : none | |
| ;******************************************************************************* | |
| TIM2_IC12IRQHandler | |
| IRQ_to_SYS | |
| ldr r0,=TIM2_IC12_IRQHandler | |
| ldr lr,=TIM2_IC12_IRQHandler_end | |
| bx r0 | |
| TIM2_IC12_IRQHandler_end: | |
| SYS_to_IRQ | |
| ;******************************************************************************* | |
| ;* Function Name : TIM2_UPIRQHandler | |
| ;* Description : This function used to switch to SYS mode before entering | |
| ;* the TIM2_UP_IRQHandler function located in 75x_it.c. | |
| ;* Then to return to IRQ mode after the TIM2_UP_IRQHandler | |
| ;* function termination. | |
| ;* Input : none | |
| ;* Output : none | |
| ;******************************************************************************* | |
| TIM2_UPIRQHandler | |
| IRQ_to_SYS | |
| ldr r0,=TIM2_UP_IRQHandler | |
| ldr lr,=TIM2_UP_IRQHandler_end | |
| bx r0 | |
| TIM2_UP_IRQHandler_end: | |
| SYS_to_IRQ | |
| ;******************************************************************************* | |
| ;* Function Name : TIM1_OC2IRQHandler | |
| ;* Description : This function used to switch to SYS mode before entering | |
| ;* the TIM1_OC2_IRQHandler function located in 75x_it.c. | |
| ;* Then to return to IRQ mode after the TIM1_OC2_IRQHandler | |
| ;* function termination. | |
| ;* Input : none | |
| ;* Output : none | |
| ;******************************************************************************* | |
| TIM1_OC2IRQHandler | |
| IRQ_to_SYS | |
| ldr r0,=TIM1_OC2_IRQHandler | |
| ldr lr,=TIM1_OC2_IRQHandler_end | |
| bx r0 | |
| TIM1_OC2_IRQHandler_end: | |
| SYS_to_IRQ | |
| ;******************************************************************************* | |
| ;* Function Name : TIM1_OC1IRQHandler | |
| ;* Description : This function used to switch to SYS mode before entering | |
| ;* the TIM1_OC1_IRQHandler function located in 75x_it.c. | |
| ;* Then to return to IRQ mode after the TIM1_OC1_IRQHandler | |
| ;* function termination. | |
| ;* Input : none | |
| ;* Output : none | |
| ;******************************************************************************* | |
| TIM1_OC1IRQHandler | |
| IRQ_to_SYS | |
| ldr r0,=TIM1_OC1_IRQHandler | |
| ldr lr,=TIM1_OC1_IRQHandler_end | |
| bx r0 | |
| TIM1_OC1_IRQHandler_end: | |
| SYS_to_IRQ | |
| ;******************************************************************************* | |
| ;* Function Name : TIM1_IC12IRQHandler | |
| ;* Description : This function used to switch to SYS mode before entering | |
| ;* the TIM1_IC12_IRQHandler function located in 75x_it.c. | |
| ;* Then to return to IRQ mode after the TIM1_IC12_IRQHandler | |
| ;* function termination. | |
| ;* Input : none | |
| ;* Output : none | |
| ;******************************************************************************* | |
| TIM1_IC12IRQHandler | |
| IRQ_to_SYS | |
| ldr r0,=TIM1_IC12_IRQHandler | |
| ldr lr,=TIM1_IC12_IRQHandler_end | |
| bx r0 | |
| TIM1_IC12_IRQHandler_end: | |
| SYS_to_IRQ | |
| ;******************************************************************************* | |
| ;* Function Name : TIM1_UPIRQHandler | |
| ;* Description : This function used to switch to SYS mode before entering | |
| ;* the TIM1_UP_IRQHandler function located in 75x_it.c. | |
| ;* Then to return to IRQ mode after the TIM1_UP_IRQHandler | |
| ;* function termination. | |
| ;* Input : none | |
| ;* Output : none | |
| ;******************************************************************************* | |
| TIM1_UPIRQHandler | |
| IRQ_to_SYS | |
| ldr r0,=TIM1_UP_IRQHandler | |
| ldr lr,=TIM1_UP_IRQHandler_end | |
| bx r0 | |
| TIM1_UP_IRQHandler_end: | |
| SYS_to_IRQ | |
| ;******************************************************************************* | |
| ;* Function Name : TIM0_OC2IRQHandler | |
| ;* Description : This function used to switch to SYS mode before entering | |
| ;* the TIM0_OC2_IRQHandler function located in 75x_it.c. | |
| ;* Then to return to IRQ mode after the TIM0_OC2_IRQHandler | |
| ;* function termination. | |
| ;* Input : none | |
| ;* Output : none | |
| ;******************************************************************************* | |
| TIM0_OC2IRQHandler | |
| IRQ_to_SYS | |
| ldr r0,=TIM0_OC2_IRQHandler | |
| ldr lr,=TIM0_OC2_IRQHandler_end | |
| bx r0 | |
| TIM0_OC2_IRQHandler_end: | |
| SYS_to_IRQ | |
| ;******************************************************************************* | |
| ;* Function Name : TIM0_OC1IRQHandler | |
| ;* Description : This function used to switch to SYS mode before entering | |
| ;* the TIM0_OC1_IRQHandler function located in 75x_it.c. | |
| ;* Then to return to IRQ mode after the TIM0_OC1_IRQHandler | |
| ;* function termination. | |
| ;* Input : none | |
| ;* Output : none | |
| ;******************************************************************************* | |
| TIM0_OC1IRQHandler | |
| IRQ_to_SYS | |
| ldr r0,=TIM0_OC1_IRQHandler | |
| ldr lr,=TIM0_OC1_IRQHandler_end | |
| bx r0 | |
| TIM0_OC1_IRQHandler_end: | |
| SYS_to_IRQ | |
| ;******************************************************************************* | |
| ;* Function Name : TIM0_IC12IRQHandler | |
| ;* Description : This function used to switch to SYS mode before entering | |
| ;* the TIM0_IC12_IRQHandler function located in 75x_it.c. | |
| ;* Then to return to IRQ mode after the TIM0_IC12_IRQHandler | |
| ;* function termination. | |
| ;* Input : none | |
| ;* Output : none | |
| ;******************************************************************************* | |
| TIM0_IC12IRQHandler | |
| IRQ_to_SYS | |
| ldr r0,=TIM0_IC12_IRQHandler | |
| ldr lr,=TIM0_IC12_IRQHandler_end | |
| bx r0 | |
| TIM0_IC12_IRQHandler_end: | |
| SYS_to_IRQ | |
| ;******************************************************************************* | |
| ;* Function Name : TIM0_UPIRQHandler | |
| ;* Description : This function used to switch to SYS mode before entering | |
| ;* the TIM0_UP_IRQHandler function located in 75x_it.c. | |
| ;* Then to return to IRQ mode after the TIM0_UP_IRQHandler | |
| ;* function termination. | |
| ;* Input : none | |
| ;* Output : none | |
| ;******************************************************************************* | |
| TIM0_UPIRQHandler | |
| IRQ_to_SYS | |
| ldr r0,=TIM0_UP_IRQHandler | |
| ldr lr,=TIM0_UP_IRQHandler_end | |
| bx r0 | |
| TIM0_UP_IRQHandler_end: | |
| SYS_to_IRQ | |
| ;******************************************************************************* | |
| ;* Function Name : PWM_OC123IRQHandler | |
| ;* Description : This function used to switch to SYS mode before entering | |
| ;* the PWM_OC123_IRQHandler function located in 75x_it.c. | |
| ;* Then to return to IRQ mode after the PWM_OC123_IRQHandler | |
| ;* function termination. | |
| ;* Input : none | |
| ;* Output : none | |
| ;******************************************************************************* | |
| PWM_OC123IRQHandler | |
| IRQ_to_SYS | |
| ldr r0,=PWM_OC123_IRQHandler | |
| ldr lr,=PWM_OC123_IRQHandler_end | |
| bx r0 | |
| PWM_OC123_IRQHandler_end: | |
| SYS_to_IRQ | |
| ;******************************************************************************* | |
| ;* Function Name : PWM_EMIRQHandler | |
| ;* Description : This function used to switch to SYS mode before entering | |
| ;* the PWM_EM_IRQHandler function located in 75x_it.c. | |
| ;* Then to return to IRQ mode after the PWM_EM_IRQHandler | |
| ;* function termination. | |
| ;* Input : none | |
| ;* Output : none | |
| ;******************************************************************************* | |
| PWM_EMIRQHandler | |
| IRQ_to_SYS | |
| ldr r0,=PWM_EM_IRQHandler | |
| ldr lr,=PWM_EM_IRQHandler_end | |
| bx r0 | |
| PWM_EM_IRQHandler_end: | |
| SYS_to_IRQ | |
| ;******************************************************************************* | |
| ;* Function Name : PWM_UPIRQHandler | |
| ;* Description : This function used to switch to SYS mode before entering | |
| ;* the PWM_UP_IRQHandler function located in 75x_it.c. | |
| ;* Then to return to IRQ mode after the PWM_UP_IRQHandler | |
| ;* function termination. | |
| ;* Input : none | |
| ;* Output : none | |
| ;******************************************************************************* | |
| PWM_UPIRQHandler | |
| IRQ_to_SYS | |
| ldr r0,=PWM_UP_IRQHandler | |
| ldr lr,=PWM_UP_IRQHandler_end | |
| bx r0 | |
| PWM_UP_IRQHandler_end: | |
| SYS_to_IRQ | |
| ;******************************************************************************* | |
| ;* Function Name : I2CIRQHandler | |
| ;* Description : This function used to switch to SYS mode before entering | |
| ;* the I2C_IRQHandler function located in 75x_it.c. | |
| ;* Then to return to IRQ mode after the I2C_IRQHandler function | |
| ;* termination. | |
| ;* Input : none | |
| ;* Output : none | |
| ;******************************************************************************* | |
| I2CIRQHandler | |
| IRQ_to_SYS | |
| ldr r0,=I2C_IRQHandler | |
| ldr lr,=I2C_IRQHandler_end | |
| bx r0 | |
| I2C_IRQHandler_end: | |
| SYS_to_IRQ | |
| ;******************************************************************************* | |
| ;* Function Name : SSP1IRQHandler | |
| ;* Description : This function used to switch to SYS mode before entering | |
| ;* the SSP1_IRQHandler function located in 75x_it.c. | |
| ;* Then to return to IRQ mode after the SSP1_IRQHandler | |
| ;* function termination. | |
| ;* Input : none | |
| ;* Output : none | |
| ;******************************************************************************* | |
| SSP1IRQHandler | |
| IRQ_to_SYS | |
| ldr r0,=SSP1_IRQHandler | |
| ldr lr,=SSP1_IRQHandler_end | |
| bx r0 | |
| SSP1_IRQHandler_end: | |
| SYS_to_IRQ | |
| ;******************************************************************************* | |
| ;* Function Name : SSP0IRQHandler | |
| ;* Description : This function used to switch to SYS mode before entering | |
| ;* the SSP0_IRQHandler function located in 75x_it.c. | |
| ;* Then to return to IRQ mode after the SSP0_IRQHandler | |
| ;* function termination. | |
| ;* Input : none | |
| ;* Output : none | |
| ;******************************************************************************* | |
| SSP0IRQHandler | |
| IRQ_to_SYS | |
| ldr r0,=SSP0_IRQHandler | |
| ldr lr,=SSP0_IRQHandler_end | |
| bx r0 | |
| SSP0_IRQHandler_end: | |
| SYS_to_IRQ | |
| ;******************************************************************************* | |
| ;* Function Name : UART2IRQHandler | |
| ;* Description : This function used to switch to SYS mode before entering | |
| ;* the UART2_IRQHandler function located in 75x_it.c. | |
| ;* Then to return to IRQ mode after the UART2_IRQHandler | |
| ;* function termination. | |
| ;* Input : none | |
| ;* Output : none | |
| ;******************************************************************************* | |
| UART2IRQHandler | |
| IRQ_to_SYS | |
| ldr r0,=UART2_IRQHandler | |
| ldr lr,=UART2_IRQHandler_end | |
| bx r0 | |
| UART2_IRQHandler_end: | |
| SYS_to_IRQ | |
| ;******************************************************************************* | |
| ;* Function Name : UART1IRQHandler | |
| ;* Description : This function used to switch to SYS mode before entering | |
| ;* the UART1_IRQHandler function located in 75x_it.c. | |
| ;* Then to return to IRQ mode after the UART1_IRQHandler | |
| ;* function termination. | |
| ;* Input : none | |
| ;* Output : none | |
| ;******************************************************************************* | |
| UART1IRQHandler | |
| IRQ_to_SYS | |
| ldr r0,=UART1_IRQHandler | |
| ldr lr,=UART1_IRQHandler_end | |
| bx r0 | |
| UART1_IRQHandler_end: | |
| SYS_to_IRQ | |
| ;******************************************************************************* | |
| ;* Function Name : UART0IRQHandler | |
| ;* Description : This function used to switch to SYS mode before entering | |
| ;* the UART0_IRQHandler function located in 75x_it.c. | |
| ;* Then to return to IRQ mode after the UART0_IRQHandler | |
| ;* function termination. | |
| ;* Input : none | |
| ;* Output : none | |
| ;******************************************************************************* | |
| UART0IRQHandler | |
| IRQ_to_SYS | |
| ldr r0,=UART0_IRQHandler | |
| ldr lr,=UART0_IRQHandler_end | |
| bx r0 | |
| UART0_IRQHandler_end: | |
| SYS_to_IRQ | |
| ;******************************************************************************* | |
| ;* Function Name : CANIRQHandler | |
| ;* Description : This function used to switch to SYS mode before entering | |
| ;* the CAN_IRQHandler function located in 75x_it.c. | |
| ;* Then to return to IRQ mode after the CAN_IRQHandler function | |
| ;* termination. | |
| ;* Input : none | |
| ;* Output : none | |
| ;******************************************************************************* | |
| CANIRQHandler | |
| IRQ_to_SYS | |
| ldr r0,=CAN_IRQHandler | |
| ldr lr,=CAN_IRQHandler_end | |
| bx r0 | |
| CAN_IRQHandler_end: | |
| SYS_to_IRQ | |
| ;******************************************************************************* | |
| ;* Function Name : USB_LPIRQHandler | |
| ;* Description : This function used to switch to SYS mode before entering | |
| ;* the USB_LP_IRQHandler function located in 75x_it.c. | |
| ;* Then to return to IRQ mode after the USB_LP_IRQHandler | |
| ;* function termination. | |
| ;* Input : none | |
| ;* Output : none | |
| ;******************************************************************************* | |
| USB_LPIRQHandler | |
| IRQ_to_SYS | |
| ldr r0,=USB_LP_IRQHandler | |
| ldr lr,=USB_LP_IRQHandler_end | |
| bx r0 | |
| USB_LP_IRQHandler_end: | |
| SYS_to_IRQ | |
| ;******************************************************************************* | |
| ;* Function Name : USB_HPIRQHandler | |
| ;* Description : This function used to switch to SYS mode before entering | |
| ;* the USB_HP_IRQHandler function located in 75x_it.c. | |
| ;* Then to return to IRQ mode after the USB_HP_IRQHandler | |
| ;* function termination. | |
| ;* Input : none | |
| ;* Output : none | |
| ;******************************************************************************* | |
| USB_HPIRQHandler | |
| IRQ_to_SYS | |
| ldr r0,=USB_HP_IRQHandler | |
| ldr lr,=USB_HP_IRQHandler_end | |
| bx r0 | |
| USB_HP_IRQHandler_end: | |
| SYS_to_IRQ | |
| ;******************************************************************************* | |
| ;* Function Name : ADCIRQHandler | |
| ;* Description : This function used to switch to SYS mode before entering | |
| ;* the ADC_IRQHandler function located in 75x_it.c. | |
| ;* Then to return to IRQ mode after the ADC_IRQHandler | |
| ;* function termination. | |
| ;* Input : none | |
| ;* Output : none | |
| ;******************************************************************************* | |
| ADCIRQHandler | |
| IRQ_to_SYS | |
| ldr r0,=ADC_IRQHandler | |
| ldr lr,=ADC_IRQHandler_end | |
| bx r0 | |
| ADC_IRQHandler_end: | |
| SYS_to_IRQ | |
| ;******************************************************************************* | |
| ;* Function Name : DMAIRQHandler | |
| ;* Description : This function used to switch to SYS mode before entering | |
| ;* the DMA_IRQHandler function located in 75x_it.c. | |
| ;* Then to return to IRQ mode after the DMA_IRQHandler | |
| ;* function termination. | |
| ;* Input : none | |
| ;* Output : none | |
| ;******************************************************************************* | |
| DMAIRQHandler | |
| IRQ_to_SYS | |
| ldr r0,=DMA_IRQHandler | |
| ldr lr,=DMA_IRQHandler_end | |
| bx r0 | |
| DMA_IRQHandler_end: | |
| SYS_to_IRQ | |
| ;******************************************************************************* | |
| ;* Function Name : EXTITIRQHandler | |
| ;* Description : This function used to switch to SYS mode before entering | |
| ;* the EXTIT_IRQHandler function located in 75x_it.c. | |
| ;* Then to return to IRQ mode after the EXTIT_IRQHandler | |
| ;* function termination. | |
| ;* Input : none | |
| ;* Output : none | |
| ;******************************************************************************* | |
| EXTITIRQHandler | |
| IRQ_to_SYS | |
| ldr r0,=EXTIT_IRQHandler | |
| ldr lr,=EXTIT_IRQHandler_end | |
| bx r0 | |
| EXTIT_IRQHandler_end: | |
| SYS_to_IRQ | |
| ;******************************************************************************* | |
| ;* Function Name : MRCCIRQHandler | |
| ;* Description : This function used to switch to SYS mode before entering | |
| ;* the MRCC_IRQHandler function located in 75x_it.c. | |
| ;* Then to return to IRQ mode after the MRCC_IRQHandler | |
| ;* function termination. | |
| ;* Input : none | |
| ;* Output : none | |
| ;******************************************************************************* | |
| MRCCIRQHandler | |
| IRQ_to_SYS | |
| ldr r0,=MRCC_IRQHandler | |
| ldr lr,=MRCC_IRQHandler_end | |
| bx r0 | |
| MRCC_IRQHandler_end: | |
| SYS_to_IRQ | |
| ;******************************************************************************* | |
| ;* Function Name : FLASHSMIIRQHandler | |
| ;* Description : This function used to switch to SYS mode before entering | |
| ;* the FLASHSMI_IRQHandler function located in 75x_it.c. | |
| ;* Then to return to IRQ mode after the FLASHSMI_IRQHandler | |
| ;* function termination. | |
| ;* Input : none | |
| ;* Output : none | |
| ;******************************************************************************* | |
| FLASHSMIIRQHandler | |
| IRQ_to_SYS | |
| ldr r0,=FLASHSMI_IRQHandler | |
| ldr lr,=FLASHSMI_IRQHandler_end | |
| bx r0 | |
| FLASHSMI_IRQHandler_end: | |
| SYS_to_IRQ | |
| ;******************************************************************************* | |
| ;* Function Name : RTCIRQHandler | |
| ;* Description : This function used to switch to SYS mode before entering | |
| ;* the RTC_IRQHandler function located in 75x_it.c. | |
| ;* Then to return to IRQ mode after the RTC_IRQHandler function | |
| ;* termination. | |
| ;* Input : none | |
| ;* Output : none | |
| ;******************************************************************************* | |
| RTCIRQHandler | |
| IRQ_to_SYS | |
| ldr r0,=RTC_IRQHandler | |
| ldr lr,=RTC_IRQHandler_end | |
| bx r0 | |
| RTC_IRQHandler_end: | |
| SYS_to_IRQ | |
| ;******************************************************************************* | |
| ;* Function Name : TBIRQHandler | |
| ;* Description : This function used to switch to SYS mode before entering | |
| ;* the TB_IRQHandler function located in 75x_it.c. | |
| ;* Then to return to IRQ mode after the TB_IRQHandler function | |
| ;* termination. | |
| ;* Input : none | |
| ;* Output : none | |
| ;******************************************************************************* | |
| TBIRQHandler | |
| IRQ_to_SYS | |
| ldr r0,=TB_IRQHandler | |
| ldr lr,=TB_IRQHandler_end | |
| bx r0 | |
| TB_IRQHandler_end: | |
| SYS_to_IRQ | |
| LTORG | |
| END | |
| ;******************* (C) COPYRIGHT 2006 STMicroelectronics *****END OF FILE***** | |