⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rtosvect.c

📁 An Demo of uCGUI from SEGGER
💻 C
字号:
/*********************************************************************
*               SEGGER MICROCONTROLLER GmbH & Co. KG                 *
*       Solutions for real time microcontroller applications         *
**********************************************************************
*                                                                    *
*       (C) 2008   SEGGER Microcontroller GmbH & CO. KG              *
*                                                                    *
*       www.segger.com      Support: support@segger.com              *
*                                                                    *
**********************************************************************
*                                                                    *
*       embOS * Real time operating system for microcontrollers      *
*                                                                    *
*                                                                    *
*       Please note:                                                 *
*                                                                    *
*       Knowledge of this file may under no circumstances            *
*       be used to write a similar product or a real-time            *
*       operating system for in-house use.                           *
*                                                                    *
*       Thank you for your fairness !                                *
*                                                                    *
**********************************************************************
*                                                                    *
*       embOS version: 3.60c                                         *
*                                                                    *
**********************************************************************

----------------------------------------------------------------------
File    : RTOSVect.c
Purpose : Vector table for STM32F103 (ST MB525 & ST MB672).
--------  END-OF-HEADER  ---------------------------------------------
*/

typedef void( *intfunc )( void );
typedef union { intfunc __fun; void * __ptr; } intvec_elem;


#ifdef __ICCARM__
  #pragma language=extended
  #if (__VER__ < 500)
    #pragma segment="CSTACK"
    extern void __program_start(void);
  #else
    #pragma section="CSTACK"
    extern void __iar_program_start(void);
  #endif  // #if (__VER__ < 500)
#endif    // #ifdef __ICCARM__

#ifdef __CC_ARM
  extern unsigned int Image$$CSTACK$$ZI$$Limit;
  extern void __main(void);
#endif

extern void OS_Systick(void);
extern void OS_COM_IsrHandler(void);
extern void OS_USER_irq_func(void);
extern void OS_Exception(void);

static void NMIException             (void) {};
static void HardFaultException       (void) {};
static void MemManageException       (void) {};
static void BusFaultException        (void) {};
static void UsageFaultException      (void) {};
static void DebugMonitor             (void) {};
static void SVCHandler               (void) {};
static void WWDG_IRQHandler          (void) {};
static void PVD_IRQHandler           (void) {};
static void TAMPER_IRQHandler        (void) {};
static void RTC_IRQHandler           (void) {};
static void FLASH_IRQHandler         (void) {};
static void RCC_IRQHandler           (void) {};
static void EXTI0_IRQHandler         (void) {};
static void EXTI1_IRQHandler         (void) {};
static void EXTI2_IRQHandler         (void) {};
static void EXTI3_IRQHandler         (void) {};
static void EXTI4_IRQHandler         (void) {};
static void DMAChannel1_IRQHandler   (void) {};
static void DMAChannel2_IRQHandler   (void) {};
static void DMAChannel3_IRQHandler   (void) {};
static void DMAChannel4_IRQHandler   (void) {};
static void DMAChannel5_IRQHandler   (void) {};
static void DMAChannel6_IRQHandler   (void) {};
static void DMAChannel7_IRQHandler   (void) {};
static void ADC_IRQHandler           (void) {};
static void USB_HP_CAN_TX_IRQHandler (void) {};
static void USB_LP_CAN_RX0_IRQHandler(void) {};
static void CAN_RX1_IRQHandler       (void) {};
static void CAN_SCE_IRQHandler       (void) {};
static void EXTI9_5_IRQHandler       (void) {};
static void TIM1_BRK_IRQHandler      (void) {};
static void TIM1_UP_IRQHandler       (void) {};
static void TIM1_TRG_COM_IRQHandler  (void) {};
static void TIM1_CC_IRQHandler       (void) {};
static void TIM2_IRQHandler          (void) {};
static void TIM3_IRQHandler          (void) {};
static void TIM4_IRQHandler          (void) {};
static void I2C1_EV_IRQHandler       (void) {};
static void I2C1_ER_IRQHandler       (void) {};
static void I2C2_EV_IRQHandler       (void) {};
static void I2C2_ER_IRQHandler       (void) {};
static void SPI1_IRQHandler          (void) {};
static void SPI2_IRQHandler          (void) {};
static void USART2_IRQHandler        (void) {};
static void USART3_IRQHandler        (void) {};
static void EXTI15_10_IRQHandler     (void) {};
static void RTCAlarm_IRQHandler      (void) {};
static void USBWakeUp_IRQHandler     (void) {};


#ifdef __ICCARM__
  #if (__VER__ < 500)
    #pragma location = "INTVEC"
  #else
    #pragma location = ".intvec"
  #endif  // #if (__VER__ < 500)
#endif    // #ifdef __ICCARM__
#ifdef __CC_ARM
  #pragma arm section rodata = "INTVEC"
#endif
/* STM32F10x Vector Table entries */
const intvec_elem __vector_table[] =
{
#ifdef __ICCARM__
  { .__ptr = __sfe( "CSTACK" ) },
#if (__VER__ < 500)
  __program_start,
#else
  __iar_program_start,
#endif  // #if (__VER__ >= 500)
#endif  // #ifdef __ICCARM__
#ifdef __CC_ARM
  (intfunc) &Image$$CSTACK$$ZI$$Limit,
  __main,
#endif
  NMIException,
  HardFaultException,
  MemManageException,
  BusFaultException,
  UsageFaultException,
  0, 0, 0, 0,            /* Reserved */
  SVCHandler,
  DebugMonitor,
  0,                     /* Reserved */
  OS_Exception,
  OS_Systick,
  WWDG_IRQHandler,
  PVD_IRQHandler,
  TAMPER_IRQHandler,
  RTC_IRQHandler,
  FLASH_IRQHandler,
  RCC_IRQHandler,
  EXTI0_IRQHandler,
  EXTI1_IRQHandler,
  EXTI2_IRQHandler,
  EXTI3_IRQHandler,
  EXTI4_IRQHandler,
  DMAChannel1_IRQHandler,
  DMAChannel2_IRQHandler,
  DMAChannel3_IRQHandler,
  DMAChannel4_IRQHandler,
  DMAChannel5_IRQHandler,
  DMAChannel6_IRQHandler,
  DMAChannel7_IRQHandler,
  ADC_IRQHandler,
  USB_HP_CAN_TX_IRQHandler,
  USB_LP_CAN_RX0_IRQHandler,
  CAN_RX1_IRQHandler,
  CAN_SCE_IRQHandler,
  EXTI9_5_IRQHandler,
  TIM1_BRK_IRQHandler,
#if OS_TEST
  OS_USER_irq_func,
#else
  TIM1_UP_IRQHandler,
#endif
  TIM1_TRG_COM_IRQHandler,
  TIM1_CC_IRQHandler,
  TIM2_IRQHandler,
  TIM3_IRQHandler,
  TIM4_IRQHandler,
  I2C1_EV_IRQHandler,
  I2C1_ER_IRQHandler,
  I2C2_EV_IRQHandler,
  I2C2_ER_IRQHandler,
  SPI1_IRQHandler,
  SPI2_IRQHandler,
  OS_COM_IsrHandler,
  USART2_IRQHandler,
  USART3_IRQHandler,
  EXTI15_10_IRQHandler,
  RTCAlarm_IRQHandler,
  USBWakeUp_IRQHandler,
};

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -