正点原子学习笔记(3)—图解GPIO配置步骤


在这里插入图片描述
GPIO主要的配置步骤包括四个。

v
这是HAL库函数,下面就说明如何配置时钟

1.定义时钟

在这里插入图片描述
首先我们需要找到GPIO源码,按照这三个步骤便能找到源码
在这里插入图片描述
1.定义时钟的宏
2.定义一个宏,前或等于后

在这里插入图片描述
3. F1时钟寄存器
4. 开启时钟的宏

在这里插入图片描述
这里的意思是1左移两位,开启A时钟
在这里插入图片描述
这里就定义一个宏,并且可以开启时钟A。

2.定义工作模式

在这里插入图片描述
1. GPIO_TypeDef结构体,定义七个寄存器

typedef struct
{
  __IO uint32_t CRL;
  __IO uint32_t CRH;
  __IO uint32_t IDR;
  __IO uint32_t ODR;
  __IO uint32_t BSRR;
  __IO uint32_t BRR;
  __IO uint32_t LCKR;
} GPIO_TypeDef;

2. 把结构体GPIO_TypeDef的地址转入GPIOA—G
3. 设置一个GPIO_InitTypeDef结构体
在这里插入图片描述
4. 工作模式设置

3.设置输出模式

在这里插入图片描述

在这里插入图片描述
1. 设置工作模式
2. 设置引脚
3. 枚举类型0/1状态

下面举个例子设置PB10=1
GPIO_TypeDef* GPIOB, uint16_t GPIO_Pin_10, 1

HAL_GPIO_TogglePin设置方法
在这里插入图片描述
1.设置工作模式
2. 设置引脚
下面举个例子设置PAO翻转

GPIO_TypeDef* GPIOA, uint16_t GPIO_Pin_0

HAL_GPIO_ReadPin设置方法
在这里插入图片描述
1.返回值,0/1高低电平
2. 时钟初始化,寄存器基地址
3. 设置引脚
下面举个例子查询PCO的状态

GPIO_TypeDef* GPIOC, uint16_t GPIO_Pin_0

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值