|
添加printf以后发现 就在这一部分卡住的 / TIM1_BRK_TIM15_IRQn interrupt configuration / HAL_NVIC_SetPriority(TIM1_BRK_TIM15_IRQn, 4, 1); HAL_NVIC_EnableIRQ(TIM1_BRK_TIM15_IRQn); / TIM1_UP_TIM16_IRQn interrupt configuration / HAL_NVIC_SetPriority(TIM1_UP_TIM16_IRQn, 0, 0); HAL_NVIC_EnableIRQ(TIM1_UP_TIM16_IRQn); 什么原因啊大佬们,求教求教 |
STSPIN32G4 STM32G431VBTx CAN FIFO发送数据帧随机变远程帧
STM32G473,PA3导致定时器定时误差过大
请问 使用MC SDK6.4版本,芯片选的时STM32G431CBUx系列,再配置电流采样时候,选择片内运放,外部增益网络,为啥会报错呀
求simulink开发STM32的支持包离线版本
MC Workbench无法生成ioc文件,报错无法比较两个不同的数据类型
stm32 can偶现导致其他设备发送数据异常
MCSDK6.4开环能转,速度环一动不动
FDCAN复用在了BOOT0上了,会不会有影响
CUBEMX配置G474串口DMA传输,为什么接收正常发送不了?
有没有人搞过单极倍频的SPWM
微信公众号
手机版
可能导致该问题的原因:
IM1 更新中断在 EnableIRQ 后立即触发
NVIC 立刻跳进
TIM1_UP_TIM16_IRQHandler该中断:
解决办法
1.把 TIM1_UP_TIM16_IRQn 的优先级改低
例如:
HAL_NVIC_SetPriority(TIM1_UP_TIM16_IRQn, 5, 0); HAL_NVIC_EnableIRQ(TIM1_UP_TIM16_IRQn);
2.在中断 Enable 之前,没有清 Pending 位
TIM1 更新中断经常“上电即 Pending”。
修复方式
在
EnableIRQ前加:__HAL_TIM_CLEAR_FLAG(&htim1, TIM_FLAG_UPDATE); NVIC_ClearPendingIRQ(TIM1_UP_TIM16_IRQn);
芯片买假了,换个店铺试试,还有外设电路需要接好