嵌入式技术论坛
直播中

mintsy

9年用户 1573经验值
擅长:MEMS/传感技术
私信 关注
[问答]

怎样解决外设寄存器值仍旧为0无法配置的问题

遇到奇怪问题。

使用studio生成407的工程,配置完uart和pwm后,控制台使用正常,pwm无输出。

调试发现pwm相关寄存器在stm32_pwm_init调用后 寄存器仍全为0,查看uart正常。

检查cube生成的msp正确,hal_conf.h正确,board.h中也define了BSP_USING_PWM2和BSP_USING_PWM2_CH3,一路挖到HAL库,发现在stm32f4xx_hal_tim.c 中HAL_TIM_PWM_ConfigChannel()调用的TIM_OCx_SetConfig()等函数,

无论是ctrl+左键还是 右键查看定义 都无法连接到。
即便这些函数就在同一个文件中。并且右键HAL_TIM_PWM_ConfigChannel()查看调用层次结构,提示“无法将选择的文本解析为已定义的函数或成员”。

调试走到这个函数,在寄存器赋值语句后打断点,查看寄存器值仍旧为0,请问是哪里有问题?

回帖(2)

陈丽

2022-12-29 14:59:09
相关的外设时钟在 board.c 中配置了好了吗?
举报

mintsy

2022-12-29 14:59:20
时钟在cube生成的msp.c中配置了,这个应该没有问题
举报

更多回帖

发帖
×
20
完善资料,
赚取积分