你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

CUBEMX生成代码,使用时宕机

[复制链接]
one-touch 提问时间:2015-8-17 14:18 /
这几天使用STM32CUBEMX编写STM32F411程序的时候,用到了定时器,我要0.01S取一个数,我就用定时器去完成,但是我使用是发现当中断函数里面没有写自己代码时HAL_TIM_Base_Start_IT这个函数执行能通过,当中断函数写了代码,就会宕机在这一行,如果注释掉就没问题,不知道是什么原因。
收藏 评论9 发布时间:2015-8-17 14:18

举报

9个回答
netlhx 回答时间:2015-8-17 16:18:48
上关键代码,要不然大家也没办法猜
feiante 回答时间:2015-8-18 09:56:22
是啊,把你描述的代码贴出来
one-touch 回答时间:2015-8-19 09:16:42
netlhx 发表于 2015-8-17 16:18
上关键代码,要不然大家也没办法猜

我在红色代码上写代码,中断正常工作,但是在下面写运行HAL_TIM_Base_Start_IT就会宕机
void TIM2_IRQHandler(void)
{
  /* USER CODE BEGIN TIM2_IRQn 0 */
        int i=0,sum,j,temp;
        HAL_UART_Transmit(&huart6,uart_send_data,17,1000);
  /* USER CODE END TIM2_IRQn 0 */
  HAL_TIM_IRQHandler(&htim2);
  /* USER CODE BEGIN TIM2_IRQn 1 */

  /* USER CODE END TIM2_IRQn 1 */
}
one-touch 回答时间:2015-8-19 09:16:57
我在红色代码上写代码,中断正常工作,但是在下面写运行HAL_TIM_Base_Start_IT就会宕机
void TIM2_IRQHandler(void)
{
  /* USER CODE BEGIN TIM2_IRQn 0 */
        int i=0,sum,j,temp;
        HAL_UART_Transmit(&huart6,uart_send_data,17,1000);
  /* USER CODE END TIM2_IRQn 0 */
  HAL_TIM_IRQHandler(&htim2);
  /* USER CODE BEGIN TIM2_IRQn 1 */

  /* USER CODE END TIM2_IRQn 1 */
}
党国特派员 回答时间:2015-8-19 09:25:33
one-touch 发表于 2015-8-19 09:16
我在红色代码上写代码,中断正常工作,但是在下面写运行HAL_TIM_Base_Start_IT就会宕机
void TIM2_IRQHandl ...

HAL中断有自己的机制,你只要写好回调就行了。
党国特派员 回答时间:2015-8-19 09:26:46
楼主好好的看下HAL的手册。。 blank.png blank1.png blank2.png blank3.png blank4.png
one-touch 回答时间:2015-8-19 10:38:33
党国特派员 发表于 2015-8-19 09:26
楼主好好的看下HAL的手册。。

好的 多谢大神orz
wuzhujian 回答时间:2015-8-19 13:03:37
定时器的中断间隔太短,不死都难。

不一定是定时器,其它任何的中断,只要中断的间隔太短,或中断中处理的时间过长,不死都难。
one-touch 回答时间:2015-8-25 09:06:23
wuzhujian 发表于 2015-8-19 13:03
定时器的中断间隔太短,不死都难。

不一定是定时器,其它任何的中断,只要中断的间隔太短,或中断中处理的 ...

那它死后,执行的是什么代码呢?中断里面的还是主程序或者跑飞。自己中断把自己打死?

所属标签

相似问题

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版