我发现,stm32l4为什么gpio时钟低于2M就不工作了
问题更新日期:2024-10-27 03:35:57
问题描述
我发现,stm32l4为什么gpio时钟低于2M就不工作了,在线求解答
- 精选答案
-
ARM的芯片都是这样,外设通常都是给了时钟后 才能设置它的寄存器(即才能使用这个外设) STM32、LPC1XXX等等都是这样 这么做的目的是为了省电,使用了所谓时钟门控的技术 你的问题原因在于 没有给时钟的情况下 无法设置GPIO的寄存器 补充: 寄存器是基于触发器的,触发器的赋值是一定需要时钟的,而寄存器的时钟是由总线时钟提供的,就是说没有总线时钟的话,你给寄存器值它是不会读入的。
为了验证这个问题,你可以用jlink步步调试一下,看看在APB2不提供时钟的情况下,GPIO各个寄存器的值变否






