stm32F103寄存器点灯
Posted wtadmirewxy
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了stm32F103寄存器点灯相关的知识,希望对你有一定的参考价值。
分为三个步骤1.开启GPIOx对应的RCC时钟 2.开启引脚的输出模式速率 3.通过ODR数据寄存器发出电平信号
一、开启GPIOB 端口时钟
1// 开启 GPIOB 端口 时钟
2 RCC_APB2ENR |= (1<<3);
二、开启引脚的输出模式速率
首先我们把连接到 LED 灯的 GPIO 引脚 PB0 配置成输出模式,即配置 GPIO 的端口配
置低寄存器 CRL,见图 8-9。 CRL 中包含 0-7 号引脚,每个引脚占用 4 个寄存器位。
MODE 位用来配置输出的速度, CNF 位用来配置各种输入输出模式。在这里我们把 PB0 配
置为通用推挽输出,输出的速度为 10M, 具体见代码清单 8-4
1 // 清空控制 PB0 的端口位
2 GPIOB_CRL &= ~( 0x0F<< (4*0));
3 // 配置 PB0 为通用推挽输出,速度为 10M
4 GPIOB_CRL |= (1<<4*0);
三、控制引脚输出电平
在输出模式时,对端口位设置/清除寄存器 BSRR 寄存器、端口位清除寄存器 BRR 和
ODR 寄存器写入参数即可控制引脚的电平状态,其中操作 BSRR 和 BRR 最终影响的都是
ODR 寄存器,然后再通过 ODR 寄存器的输出来控制 GPIO。为了一步到位,我们在这里直
接操作 ODR 寄存器来控制 GPIO 的电平。具体见代码清单 8-5。
1 // PB0 输出低电平
2 GPIOB_ODR &= ~(1<<0);
以上是关于stm32F103寄存器点灯的主要内容,如果未能解决你的问题,请参考以下文章