irq.c
来自「智能小车的往返行驶,单片机实现,使用红外信号进行路面信号的采集」· C语言 代码 · 共 36 行
C
36 行
#include "SPCE061V004.h"
#define BACKWHEEL_ENA 0x0400 //L298端口11,对应IOB10
typedef unsigned int uint;
extern uint SpeedValue; //档位值,从1-100
extern uint Time500ms;
unsigned int counter=0;
void KeyScan();
//1024HZ,做为'键'扫描的频率
void IRQ4(void) __attribute__ ((ISR));
void IRQ4(void)
{
KeyScan();
*P_INT_Clear=C_IRQ4_1KHz| C_IRQ4_2KHz | C_IRQ4_4KHz ;
}
//2HZ,做为时钟频率
void IRQ5(void) __attribute__ ((ISR));
void IRQ5(void)
{
Time500ms++;
*P_INT_Clear= C_IRQ5_2Hz | C_IRQ5_4Hz ;
}
//1024HZ,做为PWM波形产生频率
void FIQ(void) __attribute__ ((ISR));
void FIQ(void)
{
if(counter<=SpeedValue) *P_IOB_Data |= BACKWHEEL_ENA; //置高
else *P_IOB_Data &= ~BACKWHEEL_ENA; //置低
if(counter<100) counter++;else counter=0;
*P_INT_Clear=C_FIQ_TMA ;
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?