我如何将二进制数写入STM32 GPIO

how do i write a binary number to STM32 GPIO

我想用我的 nucleo 板控制一个 4 位多路复用器。我知道我必须写入 BSRR 寄存器的较高部分或较低部分,以将位设置为高位并将位设置为低位。

我想增加一些变量,比如 multp_select 然后将它输出到 GPIOA(在 AVR 中我可以通过写 PORTA = multp_select 来做到这一点)最好的方法是什么?

改用寄存器ODR

我的建议是:阅读参考手册 - 那里描述了所有内容。

如前所述,ODR 寄存器就是您要查找的内容,可以在参考手册中找到 GPIOX_ODR。您需要下载它并阅读 GPIO 部分。要写入 GPIOA_ODR 寄存器,您的代码最终将如下所示

GPIOA->ODR = multp_select;