我是靠谱客的博主 犹豫盼望,最近开发中收集的这篇文章主要介绍STM32(一)GPIO的功能描述及配置STM32系列文章目录前言一、GPIO功能描述二、GPIO寄存器配置,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

STM32系列文章目录


文章目录

  • STM32系列文章目录
  • 前言
  • 一、GPIO功能描述
  • 二、GPIO寄存器配置
    • 1.外设GPIO配置
    • 2.GPIO寄存器
        • 1.端口配置低寄存器(GPIOx_CRL)
        • 2.端口配置高寄存器(GPIOx_CRH)
        • 3.端口输入数据寄存器(GPIOx_IDR)
        • 4.端口输出数据寄存器(GPIOx_ODR)
        • 5.端口位设置/清除寄存器(GPIOx_BSRR)
        • 6.端口位清除寄存器(GPIOx_BRR)


前言

开发了好久的STM32,但一直没有总结博客,今天就来总结一下STM32系列博客,也算是自己记的笔记。
第一篇文章就从GPIO开始
IO口即input & out 输入与输出,单片机控制外设的一个重要方法。

以下参考STM32参考手册记录。


提示:以下是本篇文章正文内容,下面案例可供参考

一、GPIO功能描述

首先 STM32 的 IO 口可以由软件配置成如下 8 种模式:
1、输入浮空
2、输入上拉
3、输入下拉
4、模拟输入
5、开漏输出
6、推挽输出
7、推挽式复用功能
8、开漏复用功能
每个 IO 口可以自由编程,但 IO 口寄存器必须要按 32 位字被访问。

在这里插入图片描述

在这里插入图片描述

在 MDK 中是通过一个枚举类型定义的:

typedef enum
{ GPIO_Mode_AIN = 0x0, //模拟输入
 GPIO_Mode_IN_FLOATING = 0x04, //浮空输入
 GPIO_Mode_IPD = 0x28, //下拉输入
 GPIO_Mode_IPU = 0x48, //上拉输入
 GPIO_Mode_Out_OD = 0x14, //开漏输出
 GPIO_Mode_Out_PP = 0x10, //通用推挽输出
 GPIO_Mode_AF_OD = 0x1C, //复用开漏输出
 GPIO_Mode_AF_PP = 0x18 //复用推挽
}GPIOMode_TypeDef;

输入输出方式作用:
1)作为普通GPIO 输入:根据需要配置该引脚为浮空输入、带弱上拉输入或带弱下拉输入,同时不要使能该引脚对应的所有复用功能模块。
2)作为普通GPIO 输出:根据需要配置该引脚为推挽输出或开漏输出,同时不要使能该引脚对应的所有复用功能模块。
3)作为普通模拟输入:配置该引脚为模拟输入模式,同时不要使能该引脚对应的所有复用功能模块。
4)作为内置外设的输入:根据需要配置该引脚为浮空输入、带弱上拉输入或带弱下拉输入,同时使能该引脚对应的某个复用功能模块。
5)作为内置外设的输出:根据需要配置该引脚为复用推挽输出或复用开漏输出,同时使能该引脚对应的所有复用功能模块。

二、GPIO寄存器配置

1.外设GPIO配置

在这里插入图片描述

2.GPIO寄存器

1.端口配置低寄存器(GPIOx_CRL)

在这里插入图片描述

2.端口配置高寄存器(GPIOx_CRH)

在这里插入图片描述

3.端口输入数据寄存器(GPIOx_IDR)

在这里插入图片描述

4.端口输出数据寄存器(GPIOx_ODR)

在这里插入图片描述

5.端口位设置/清除寄存器(GPIOx_BSRR)

在这里插入图片描述

6.端口位清除寄存器(GPIOx_BRR)

在这里插入图片描述
在这里插入图片描述


最后

以上就是犹豫盼望为你收集整理的STM32(一)GPIO的功能描述及配置STM32系列文章目录前言一、GPIO功能描述二、GPIO寄存器配置的全部内容,希望文章能够帮你解决STM32(一)GPIO的功能描述及配置STM32系列文章目录前言一、GPIO功能描述二、GPIO寄存器配置所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(53)

评论列表共有 0 条评论

立即
投稿
返回
顶部