STM32寄存器值不变

问题描述

问题定义

电路板:STM32F407

大家好,

我正在尝试更改任何寄存器值。但这并没有改变。例如,如果我们查看GPIOB端口的MODER寄存器,则其端口B的认值为“ 0x0000 0280”。这意味着MODER寄存器7和9的值为1,其他MODER寄存器的值为0。我正在尝试更改1为MODER 7寄存器设置为0。我正在分享我在下面做的简单的单行代码

GPIOB ->MODER &= ~(1 << 7);

DEBUG PROCESS

enter image description here

我正在调试代码。寄存器的值不变。我尝试另找一个寄存器来查看它是否完成。不,不是。 我该怎么办,这是我的错。

预先感谢

解决方法

您需要首先在一个RCC还原器中启用GPIOB时钟。

如果禁用时钟,则外围设备的数字部分也将禁用。