STM32GPIO寄存器CRL、CRH、IDR、ODR、BSRR、BRR

本文详细介绍了STM32的GPIO寄存器,包括CRL和CRH用于配置I/O口模式,IDR和ODR用于读取和设置输出状态,以及BSRR和BRR用于快速设置I/O电平。通过实例解析了如何使用这些寄存器进行端口配置,并讨论了使用BSRR和BRR的优势,避免中断冲突。

GPIO 寄存器描述

注意:本文以STM32F10XXX为参考,重在理解

CRL与CRH

CRL与CRH分别为端口配置低与端口配置高寄存器,为32位寄存器,其中每四位控制一个I/O口

在这里插入图片描述

对CNFy与MODEy(y=0,1,2…7)位写1或0控制I/O口的输入输出模式
在这里插入图片描述

STM32I/O口都是16位的,CRL与CRH分别控制低8位与高8位,两个寄存器的用法与功能完全一模一样,下面来几个例子就明白了

e.g.PD1配置为推挽输出,最大速度50MHz

GPIOD->CRL=3<<4

新手注释:上方代码是对GPIOD_CRL寄存器左移4位再(即从第5位开始从右往左,前4位补0)写0011(至于为何写0011看上表),换算成十六进制就是0x0000 0030,如果还不理解(我

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值