在用滴答定时器中断的时候,写完用软件模拟测试了一下,没什么问题,然后就烧了。结果一个写在SysTick_Handler里灯一直不闪,用了一个变量累加,效果是1s亮半秒。然后检查了一下,实际上SysTick_Handler只执行了一次。我配置的是SysTick_Config(SystemCoreClock/1000),1ms进一次中断。请问有没有遇到同样问题的,实在很费解
如果没有 说明你配置有问题
是1ms,但是中断只进了一次。滴答定时器需要什么配置吗,我就只设置了一个SysTick_Config,没别的了,还需要别的什么配置吗
这是HAL库写的吗,我没接触过HAL库,不过大概意思能看懂,我先看看我是不是漏了什么
兄弟,主要代码公司是不让贴出来,要是能直接贴出来,我早放上来了。。。。。主要是想咨询一下,大家有没有遇到过这种系统定时器中断只执行一次的情况,真的很怪,我是第一次碰到,以前不管怎么乱配置也没出现过这种情况
看看我用mbed写的,很简洁#include<mbed>
DigitalOut led(PA_5);
Ticker timer led;
void ledflip()
{led=1;//假设高电平点亮
wait(1);
led=0;
}
int main()
{
timer_led.attach(&ledflip,0.5);//滴答中断
while(1);
}
手机编的排版不太好
我用寄存器写的
听说SysTick 的中断默认最低优先级 而且不需要配置NVIC 地址竟然是-1 属于 处理器运行异常
然后测一下电平翻转情况 如下