#include "irqhandler.h" void NMI_IRQHandler(void) {} void HardFault_IRQHandler(void) { while (1) { } } void SVC_IRQHandler(void) {} void PendSV_IRQHandler(void) {} uint32_t g_sys_sick = 0; void SysTick_IRQHandler(void) { g_sys_sick++; // TimingDelay_Decrement(); // if (GPIO_ReadBit(TARGET_PIN) == 1) { // LightOn(LED1_PIN); // } else { // LightOff(LED1_PIN); // } } extern uint32_t Period; extern uint32_t dutytab[5]; void PINT1_IRQHandler(void) { if ((PINT_GetITFlag(GPIO_Pin_A1) == SET) && (PINT_GetITStatus(GPIO_Pin_A1) == SET) && (PINT_GetPMASK(GPIO_Pin_A1) != SET)) { // static uint8_t tri_time = 0x0U; // PINT_ClearITFlag(GPIO_Pin_A1); /* 清除端口中断标志位 */ // if (tri_time % 2 == 0) { // // T16Nx_SetMAT2(T16N0, dutytab[1]); //计数匹配寄存器100 // // T16Nx_SetMAT2(T16N0,0); //计数匹配寄存器0,也就是PWM输出为全部高,led灭 // T16Nx_SetMAT2(T16N0,dutytab[4]/2); //计数匹配寄存器0,也就是PWM输出为全部高,led灭 // T16Nx_SetMAT3(T16N0, dutytab[4]);//计数匹配寄存器 // T16Nx_SetTOP1(T16N0, dutytab[4]); //计数峰值300 // GPIO_WriteBit(GPIO_Pin_B1, 0); // } else { // // T16Nx_SetMAT2(T16N0, dutytab[4]); // // T16Nx_SetTOP1(T16N0, dutytab[4]-1); // //设备PWM输出最大也就是全部低电平 // T16Nx_SetMAT2(T16N0, dutytab[4]-1); // T16Nx_SetMAT3(T16N0, dutytab[4]); // T16Nx_SetTOP1(T16N0, dutytab[4]); // GPIO_WriteBit(GPIO_Pin_B1, 1); // } // tri_time++; } }