欢迎光临
我们一直在努力

STM32F4 HAL GPIO 驱动源码解析

一、整体模块概述

1. 模块功能

该文件实现 GPIO 所有底层驱动,分为两大类接口:

  • 初始化 / 反初始化:引脚模式、上下拉、速度、复用功能、外部中断配置
  • IO 读写操作:引脚读电平、写电平、翻转电平、配置锁定、外部中断入口
  • 2. 硬件特性

    • 复位后所有 GPIO 默认浮空输入(JTAG 引脚除外)
    • 每个引脚可配置:输入 / 模拟 / 推挽 / 开漏 / 复用功能 / 外部中断
    • 所有引脚自带独立上拉 / 下拉电阻
    • 外部中断 EXTI0~EXTI15 对应全部 GPIO 引脚,支持上升沿 / 下降沿 / 双边沿触发
    • 晶振引脚(HSE/LSE)优先级高于 GPIO 功能

    二、宏与基础定义

        #define GPIO_NUMBER 16U

    单 GPIO 端口固定 16 个引脚(Pin0~Pin15),所有循环遍历都基于该宏。

    三、核心函数逐段解析

    1. HAL_GPIO_Init 引脚初始化(最核心函数)

    函数作用

    根据 GPIO_InitTypeDef 结构体,逐引脚配置模式、速度、上下拉、复用功能、外部中断。

    关键代码逻辑拆解

       1.参数校验    

        assert_param(IS_GPIO_ALL_INSTANCE(GPIOx));

        assert_param(IS_GPIO_PIN(GPIO_Init->Pin));

    <

    赞(0)
    未经允许不得转载:171主机测评 » STM32F4 HAL GPIO 驱动源码解析
    分享到: 更多 (0)

    评论 抢沙发

    • 昵称 (必填)
    • 邮箱 (必填)
    • 网址