#ifndef __INTERRUPT_H__ #define __INTERRUPT_H__ /* **********NVIC中断向量控制器组别********** */ #define NVIC_GROUP_LEVEL NVIC_PriorityGroup_2 /* **********END********** */ /* Control System Interrupt Sw */ #define DISABLE_INTERRUPT __set_PRIMASK(1); #define ENABLE_INTERRUPT __set_PRIMASK(0); #define INTERRUPT_NUM 300 //System Interrupt Num #ifdef INTERRUPT_NUM /* INTERRUPT_DESC_ST STRUCT */ typedef struct { void(*CallBack)(unsigned int); //回调函数 unsigned int IntId; //触发中断的外设id } INTERRUPT_DESC_ST; /* INTERRUPT_ST STRUCT */ typedef struct { INTERRUPT_DESC_ST Adc_1_2; INTERRUPT_DESC_ST Usb_Hp_Can1_Tx; INTERRUPT_DESC_ST Usb_Hp_Can1_Rx0; INTERRUPT_DESC_ST Can1_Rx1; INTERRUPT_DESC_ST Can1_Sce; INTERRUPT_DESC_ST Exti_9_5; INTERRUPT_DESC_ST Tim_1_Brk; INTERRUPT_DESC_ST Tim_1_Up; INTERRUPT_DESC_ST Tim_1_Trg_Com; INTERRUPT_DESC_ST Tim_1_Cc; INTERRUPT_DESC_ST Tim_2; INTERRUPT_DESC_ST Tim_3; INTERRUPT_DESC_ST Tim_4; INTERRUPT_DESC_ST I2c_1_Ev; INTERRUPT_DESC_ST I2c_1_ER; INTERRUPT_DESC_ST I2c_2_Ev; INTERRUPT_DESC_ST I2c_2_ER; INTERRUPT_DESC_ST Spi_1; INTERRUPT_DESC_ST Spi_2; INTERRUPT_DESC_ST Usart1; INTERRUPT_DESC_ST Usart2; INTERRUPT_DESC_ST Usart3; INTERRUPT_DESC_ST Exti_15_10; INTERRUPT_DESC_ST Rtc_Alarm; INTERRUPT_DESC_ST Usb_WackUp; INTERRUPT_DESC_ST Tim_8_Brk; INTERRUPT_DESC_ST Tim_8_Up; INTERRUPT_DESC_ST Tim_8_Trg_Com; INTERRUPT_DESC_ST Tim_8_Cc; INTERRUPT_DESC_ST Adc_3; INTERRUPT_DESC_ST Fsmc; INTERRUPT_DESC_ST Sdio; INTERRUPT_DESC_ST Tim_5; INTERRUPT_DESC_ST Spi_3; INTERRUPT_DESC_ST Uart4; INTERRUPT_DESC_ST Uart5; INTERRUPT_DESC_ST Tim_6; INTERRUPT_DESC_ST Tim_7; INTERRUPT_DESC_ST Dma_2_Chnl_1; INTERRUPT_DESC_ST Dma_2_Chnl_2; INTERRUPT_DESC_ST Dma_2_Chnl_3; INTERRUPT_DESC_ST Dma_2_Chnl_4; } INTERRUPT_ST, *INTERRUPT_ST_PTR; #endif #endif