在学校的时候玩STM32一直都是使用的库函数版本的,现在使用cubemx 生成的代码并且点灯 ,遇到了 灯状态错误的问题,查找之后发现是因为库函数的入口参数导致的。
问题代码的位置如下图所示,传递进去的参数需要是一个宏定义!
这个问题产生的本质是 之前的库函数版本 实现了 类似于 PBout(5) = 1 的操作,这个操作本质是操作的位带区去实现的,但是现在的HAL 库对于这个翻转电平的实现是操作的BRR(端口位清除寄存器(GPIOx_BRR) (x=A…E)) 和 BSRR 寄存器去实现的。



