基于STM32F103,使用寄存库点亮LED流水灯

目录

硬件介绍

功能实现

1.认识LED原理图

 2.了解RCC时钟

3.了解端口配置低寄存器GPIOx_CRL

4.了解端口输出数据寄存器GPIO_ODR

5.代码实现

(1)定义外设基地址

(2)延时函数定义

(3)功能实现


硬件介绍

本例程使用的开发板是野火F103指南者

功能实现

实现的是LED灯红、绿、蓝三色轮流点亮

步骤
时钟使能、
配置输出模式、
配置输出。
 

1.认识LED原理图

 这是从官方参考手册截下来的图,我们看到LED使用的GPIOB(General Purpose Input/Output)端口,其中红灯在PB5端口、绿灯在PB0端口、蓝灯在PB1端口。 

 2.了解RCC时钟

在STM32中,任何外设的运行都要进行时钟使能,它就像一颗心脏一样。要想让一个外设运行,先要让它的心脏——时钟使能,然后再使能端口。

我们打开ST官方的参考手册,找到存储器映像(Memory Map)

可以看到RCC的基地址为0x40021018,然后我们找到GPIOB的基地址

3.了解端口配置低寄存器GPIOx_CRL

找到了RCC和GPIOB的基地址,我们再来了解一下如何配置输出模式

找到端口配置低寄存器GPIOx_CRL(端口配置低寄存器负责控制GPIOx的0-7端口,高位寄存器负责控制GPIOx的8-15端口)

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值