STM32开发基础知识——GPIO端口

基础知识:

stm32芯片,有7组端口,每组端口最多拥有16个引脚。stm32的每个端口都可以自由编程,但I/O端口寄存器必须按32位字节访问。

1.每个端口都由7个寄存器来控制

2.stm32的I/O端口可以由软件配置成8种模式(输出4种,输入4种)

输出输入
推挽输出模拟输入
开漏输出浮空输入
推挽式复用功能下拉输入
开漏式复用功能上拉输入


 

目录

电平输出HAL库函数

电平输入HAL库函数

电平反转HAL库函数

按键开发的基础


在使用STM32中,可以使用STM32CubeMx软件对stm32芯片进行初始化配置

需要掌握HAL库中的电平输出、电平输入和电平反转函数

电平输出HAL库函数

HAL_GPIO_WritePi(GPIO_TyPeDef* GPIOx,uint16_T GPIO_PIN,GPIO_PINState Pinstate);
/*
GPIOx:目标引脚号的端口号
GPIO_PIN:目标引脚的引脚号
Pinstate:(高电平:GPIO_PIN_SET) ;(低电平:GPIO_PIN_RESET)
*/

电平输入HAL库函数

HAL_GPIO_ReadPin(GPIO_TyPeDef* GPIOx,uint16_T GPIO_PIN);
/*
GPIOx:目标引脚号的端口号
GPIO_PIN:目标引脚的引脚号
*/

电平反转HAL库函数

HAL_GPIO_TogglePin(GPIO_TyPeDef* GPIOx,uint16_T GPIO_PIN);
/*
GPIOx:目标引脚号的端口号
GPIO_PIN:目标引脚的引脚号
*/

按键开发的基础

基础知识:

按键信号识别:一端通过电阻上拉到高电平,另一端则为低电平,在没有按键按下时,输入引脚为高电平,反之为低电平。通过反复的读取按键引脚的电平信号,来判断是否有按键的触发

eg:判断按键(PB3)是否按下

if(HAL_GPIO_ReadPin(GPIOB,GPIO_PIN_3)==GPIO_PIN_RESET){
HAL_Delay(200);//延迟,去抖动
if(HAL_GPIO_ReadPin(GPIOB,GPIO_PIN_3)==GPIO_PIN_RESET){
   //写入按键按下的要执行的函数 
    }
}

STM32CubeMx软件下载

STM32官网下载地址

stm32烧写flash工具

STM32烧写工具官方下载地址

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值