STM32学习5:GPIO输入输出函数

本文详细介绍了STM32开发中如何使用RCC库开启GPIO时钟和GPIO_Init函数初始化GPIO,以及GPIO的读取(包括GPIO_ReadInputDataBit、GPIO_ReadInputData等)和写入(如GPIO_SetBits、GPIO_Write)操作,涵盖了工作模式和输出速度的选择。
摘要由CSDN通过智能技术生成

目录

一、RCC库函数

二、GPIO库函数

1.GPIO读取

2.GPIO写入


首先,main.c文件中的基本结构是:

#include"stm32f10x.h"

int main(void)
{
	while (1)
	{
		
	}
}

操作STM32的GPIO需要三个步骤:

1、使用RCC开启GPIO时钟

2、使用GPIO_Init函数初始化GPIO

3、使用输出或输入函数控制GPIO口

这里总共涉及到RCC和GPIO两个外设。

一、RCC库函数

在Library文件夹中找到rcc.h文件,打开,拖到最下方,有RCC库函数的所有声明:

其中,最常用的是692、693、694行函数,即RCC AHB外设时钟控制、RCC APB2 外设时钟控制、RCC APB1 外设时钟控制,它们均可通过在编译后右键函数跳转到定义来查看。

二、GPIO库函数

在Library文件夹中找到gpio.h文件,打开,拖到最下方,有GPIO库函数的所有声明:

349行:将指定的GPIO外设复位

350行:复位AFIO外设

351行:用结构体的参数来初始化GPIO口

352行:把结构体变量赋为一个默认值

353~356行:GPIO读取函数

357~360行:GPIO写入函数

1、GPIO的8种工作模式:

这8种模式分别是:模拟输入、浮空输入、下拉输入、上拉输入、开漏输出、推挽输出、复用开漏、复用推挽

2、GPIO的输出速度:

在对功耗和噪声要求不高时,一般选择50MHz的输出速度。

1.GPIO读取

 GPIO_ReadInputDataBit:读取输入数据寄存器某一端口的值(返回uint8_t无符号8位整数),0代表低电平,1代表高电平

 GPIO_ReadInputData:读取整个输入数据寄存器(返回uint16_t无符号16位整数)

 GPIO_ReadOutputDataBit:读取输出数据寄存器某一端口的值,返回uint8_t

GPIO_ReadOutputData:读取整个输出数据寄存器,返回uint16_t

2.GPIO写入

GPIO_SetBits:将指定端口设置为高电平

GPIO_ResetBits:将指定端口设置为低电平

GPIO_WriteBit:设置指定端口的值

GPIO_Write:同时对16个端口进行写入操作

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值