STM32学习过程中遇到的问题(持续更新)

1、keil Debug的时候切记把优化等级改为0

因为不调为0的话,单步调试的时候会出现迷惑性的现象,箭头表面上会出现不按照我们代码逻辑那样跳转。但是实际上他又是按照我们写的代码逻辑执行的。

2、定时器中断STM32CubeMX配置

1)使能中断切记呀)
2)在定时器初始化函数中手动添加中断初始化函数:

HAL_TIM_Base_Start_IT(&htim2);//以tim2为例

3)就是写回调函数了,回调函数包括:

void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim);//更新中断 
void HAL_TIM_OC_DelayElapsedCallback(TIM_HandleTypeDef *htim);//输出比较
void HAL_TIM_IC_CaptureCallback(TIM_HandleTypeDef *htim);//输入捕获
void HAL_TIM_TriggerCallback(TIM_HandleTypeDef *htim);//触发中断

当我们使能了定时器中断,就会在stm32f1xx_it.c下生成函数:

void TIM2_IRQHandler(void) /*以tim2为例*/
{
  /* USER CODE BEGIN TIM2_IRQn 0 */

  /* USER CODE END TIM2_IRQn 0 */
  HAL_TIM_IRQHandler(&htim2);//其中包含了各种回调函数,根据我们的配置进行调取
  /* USER CODE BEGIN TIM2_IRQn 1 */

  /* USER CODE END TIM2_IRQn 1 */
}

3、Library reports error: __use_no_semihosting was requested, but _ttywrch was referenced

出现这个原因是KEIL没有勾选 Use MicroLIB,勾选即可
在这里插入图片描述

4、error: #268: declaration may not appear after executable statement in block(声明不能出现在块中的可执行语句之后 )

在这里插入图片描述

5、 error: #5: cannot open source input file “core_cm4.h”: No such file or directory

在这里插入图片描述

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值