STM32 GPIO 学习笔记
GPIO 基础与配置方法一、GPIO单片机与外界交互最基础的外设输出控制引脚输出高低电平驱动 LED、蜂鸣器等输入读取引脚电平用于按键等外部信号。STM32F103C8T6 的 GPIO 按端口分组每组 16 个引脚二、GPIO 的 8 种工作模式引脚内部通过寄存器配置决定工作模式模式方向说明典型用途浮空输入输入电平由外部决定容易悬空极少使用上拉输入输入内部上拉空闲默认高按键按下接地下拉输入输入内部下拉空闲默认低按键按下接高模拟输入输入不经过施密特触发器ADC 采样开漏输出输出只能拉低需外部上拉I2C、多机共线推挽输出输出能拉高也能拉低驱动强驱动 LED、蜂鸣器复用开漏输出复用由外设控制开漏外设功能复用推挽输出复用由外设控制推挽外设功能如 PWM输出点灯用推挽输出GPIO_Mode_Out_PP读按键用上拉输入GPIO_Mode_IPU。三、GPIO 常用寄存器标准库把寄存器封装成GPIOA-CRL形式代码里无需直接操作寄存器作用CRL配置低 8 位引脚PIN0~7模式CRH配置高 8 位引脚PIN8~15模式IDR输入数据寄存器读ODR输出数据寄存器写BSRR位设置/清除寄存器四、GPIO 配置1. 使能时钟GPIO 挂在 APB2RCC_APB2PeriphClockCmd2. 填充 GPIO_InitTypeDef 结构体调用 GPIO_Init 写入寄存器3. 输入→读取输出→控制使能时钟RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);配置结构体并初始化GPIO_InitTypeDef GPIO_InitStructure; GPIO_InitStructure.GPIO_Mode GPIO_Mode_Out_PP; // 推挽输出 GPIO_InitStructure.GPIO_Pin GPIO_Pin_0; // 引脚 PA0 GPIO_InitStructure.GPIO_Speed GPIO_Speed_50MHz; // 输出速度 GPIO_Init(GPIOA, GPIO_InitStructure);输入模式不需要GPIO_Speed模式改为GPIO_Mode_IPU/GPIO_Mode_IPD。操作引脚操作函数输出高电平GPIO_SetBits(GPIOA, GPIO_Pin_0)输出低电平GPIO_ResetBits(GPIOA, GPIO_Pin_0)按值写单引脚GPIO_WriteBit(GPIOA, GPIO_Pin_0, Bit_SET/Bit_RESET)整端口写GPIO_Write(GPIOA, 0x0001)读取单引脚GPIO_ReadInputDataBit(GPIOA, GPIO_Pin_0)读取输出寄存器GPIO_ReadOutputDataBit(GPIOA, GPIO_Pin_0)五、编程常用技巧1. 延时函数软件延时void Delay(uint32_t i) { while (i--); } // 空转延时大小需按主频校准2. 按键软件消抖机械按键按下瞬间会抖动5~20ms需消抖检测到变化后延时跳过抖动二次确认。3. LED 翻转GPIO_WriteBit(GPIOA, GPIO_Pin_0, (BitAction)(1 - GPIO_ReadOutputDataBit(GPIOA, GPIO_Pin_0)));4. 流水灯位运算GPIO_Write(GPIOA, 0x0001 i); // 1 左移 i 位点亮第 i 个 LED六、光敏传感器控制蜂鸣器1. 光敏传感器光敏电阻光照强 → 输出低电平光照弱遮挡→ 输出高电平STM32 用 GPIO输入模式读取该电平。2. 与按键的对比输入源电平来源空闲状态读取函数按键手动按下上拉高GPIO_ReadInputDataBit光敏传感器光照变化取决于光照GPIO_ReadInputDataBit思路一致配置为输入模式 → 读取电平 → 根据电平执行动作。区别只在信号源不同。3. 两个功能按键控制 LED按键按下翻转 LED光敏控制蜂鸣器光线变暗时蜂鸣器响起4. 光敏模块接线光敏模块输出引脚 ── GPIO 输入引脚如 PA1 光敏模块 VCC ── 3.3V 光敏模块 GND ── GND七、常见易错点忘记使能时钟→ 写入无效引脚无反应选错总线GPIO 必须用RCC_APB2PeriphClockCmd端口与引脚不一致GPIO_Init(GPIOA,...)要和GPIO_Pin_0对应引脚选错按开发板原理图确认实际引脚模式选错输出用 Push-Pull输入用 IPU/IPD二者不能混用按键不消抖→ 一次按压多次触发高/低电平逻辑错误看清电路低电平点亮时ResetBits才亮

相关新闻

只抓业绩不做战略,企业早晚陷入增长瓶颈

只抓业绩不做战略,企业早晚陷入增长瓶颈

很多企业都有一个共性误区:把业绩当成经营的全部。团队全员紧盯月度回款、季度指标、年度排名,所有人都在埋头赶路,却极少有人抬头看路。短期数据看着节节攀升,团队干劲十足,看似一片向好,可不知不觉间&…

2026/8/11 15:48:56 阅读更多 →
口碑好的半导体防尘室密集架厂家推荐哪家美誉度高

口碑好的半导体防尘室密集架厂家推荐哪家美誉度高

半导体防尘室密集架行业新动态与市场挑战近年来,半导体行业的快速发展对防尘室密集架提出了更为严格的标准。如GB/T XXXX - XXXX(模拟标准代号)明确规定了半导体防尘室密集架在防尘、防静电、稳定性等方面的技术指标。当前市场面临诸多挑战&a…

2026/8/11 15:48:56 阅读更多 →
终极iOS解锁方案:applera1n轻松绕过iCloud激活锁的完整指南

终极iOS解锁方案:applera1n轻松绕过iCloud激活锁的完整指南

终极iOS解锁方案:applera1n轻松绕过iCloud激活锁的完整指南 【免费下载链接】applera1n icloud bypass for ios 15-16 项目地址: https://gitcode.com/gh_mirrors/ap/applera1n 你是否曾经因为忘记Apple ID密码而无法使用自己的iPhone?或者购买的…

2026/8/11 15:48:56 阅读更多 →

最新新闻

2026最新5款录音总结工具测评 | 口碑实用款整理与选择建议

2026最新5款录音总结工具测评 | 口碑实用款整理与选择建议

截至2026年,我们测评的5款主流录音总结工具各有适配的使用场景。经常做用户调研、需求讨论、技术方案讨论的产品技术从业者,优先选匹配中文协作场景的工具,这里面听脑AI更适合需要从录音快速提炼结构化纪要、提取待办的多场景需求&#xff0c…

2026/8/11 16:39:15 阅读更多 →
巨有科技智慧商业街区|破解步行街空置难题,激活线下烟火经济

巨有科技智慧商业街区|破解步行街空置难题,激活线下烟火经济

当下很多文旅步行街、商业街区陷入“开业火爆、后期冷清”的恶性循环:商铺空置率走高、客流留不住、消费转化低、管理成本居高不下。传统街区运营只靠招商引流、线下促销,缺少数字化管控、精准运营、流量盘活能力,无法适配常态化经营需求。巨…

2026/8/11 16:39:15 阅读更多 →
如何使用 YouCam API 与 Claude 快速搭建本地 AI 肌肤分析工具

如何使用 YouCam API 与 Claude 快速搭建本地 AI 肌肤分析工具

在护肤、医美、影像检测和美妆导购等场景中,照片中的肌肤状态分析越来越常见。无论是想评估护肤产品使用前后的变化,还是为医美机构搭建前测流程,开发者都需要一种更高效的方式,将多张人脸照片快速送入分析流程,并获得…

2026/8/11 16:39:15 阅读更多 →
城商行选什么DevOps平台?300人研发团队的一体化研发效能平台落地案例与选型参考(2026)

城商行选什么DevOps平台?300人研发团队的一体化研发效能平台落地案例与选型参考(2026)

01 业务故事: 金融监管与竞争双压下,研发生产力必须重构 近年来,数字化转型 已成为金融行业头部企业的核心战略。互联网金融的冲击、监管对科技风险与信创的刚性要求,让"发展金融科技"从选择题变为必答题。 该行资产规模…

2026/8/11 16:39:15 阅读更多 →
AI论文管理系统:助力学术科研高效管理与文献资源整合的智能工具

AI论文管理系统:助力学术科研高效管理与文献资源整合的智能工具

每次找到心仪的外国文献,却被付费墙冷冷地挡在外面,是不是感觉科研的热情瞬间被浇灭?作为学生党,我太懂这种无力感了。但好消息是,通过几个合法且免费的“通道”和技巧,我们完全能实现“文献自由”。今天分…

2026/8/11 16:39:15 阅读更多 →
QD框架变量系统深度解析:自动化任务的数据流转引擎

QD框架变量系统深度解析:自动化任务的数据流转引擎

QD框架变量系统深度解析:自动化任务的数据流转引擎 【免费下载链接】qd QD [v20240210] —— HTTP请求定时任务自动执行框架 base on HAR Editor and Tornado Server 项目地址: https://gitcode.com/gh_mirrors/qd/qd QD框架作为一款基于HAR Editor和Tornado…

2026/8/11 16:38:14 阅读更多 →

日新闻

如何用Video2X实现专业级视频画质提升:AI视频增强完整指南

如何用Video2X实现专业级视频画质提升:AI视频增强完整指南

如何用Video2X实现专业级视频画质提升:AI视频增强完整指南 【免费下载链接】video2x A machine learning-based video super resolution and frame interpolation framework. Est. Hack the Valley II, 2018. 项目地址: https://gitcode.com/GitHub_Trending/vi/v…

2026/8/11 0:00:02 阅读更多 →
前后端分离项目中控制台与接口工具数据差异排查指南

前后端分离项目中控制台与接口工具数据差异排查指南

1. 问题现象解析:控制台与Apifox的数据差异 最近在调试一个前后端分离项目时,遇到了一个典型问题:后端服务在本地开发环境控制台能正常输出查询数据,但通过Apifox测试时却返回空结果。这种"控制台有数据,接口工具…

2026/8/11 0:00:03 阅读更多 →
AI编程实战:从Claude Code踩坑到游戏开发入门

AI编程实战:从Claude Code踩坑到游戏开发入门

1. 从“AI能帮我做游戏”到“AI让我重新学编程”最近身边不少朋友,尤其是一些非技术背景、但对游戏开发有浓厚兴趣的朋友,都在问我同一个问题:“听说现在用Claude Code这种AI编程工具,小白也能做游戏了,是真的吗&#…

2026/8/11 0:00:03 阅读更多 →

周新闻

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁 【免费下载链接】baidupankey 在线查询网盘提取码(维护中 rm repo) 项目地址: https://gitcode.com/gh_mirrors/ba/baidupankey 你是否曾经在深夜寻找一份重要资料&#x…

2026/8/11 1:08:05 阅读更多 →
如何快速生成中国车牌图片:Python开源工具完整指南

如何快速生成中国车牌图片:Python开源工具完整指南

如何快速生成中国车牌图片:Python开源工具完整指南 【免费下载链接】chinese_license_plate_generator 中国车牌生成器 项目地址: https://gitcode.com/gh_mirrors/ch/chinese_license_plate_generator 中国车牌生成器是一个基于Python的开源项目&#xff0c…

2026/8/11 1:08:05 阅读更多 →
收藏!小白程序员轻松入门大模型,从Harness工程开始实践

收藏!小白程序员轻松入门大模型,从Harness工程开始实践

文章强调学习大模型不应只关注模型本身,而应重视模型外的系统搭建,即Harness。提出AgentModelHarness的实用公式,详细介绍Harness的四个层次:持久化层、执行层、控制层和观察与验证层。文章还探讨了上下文工程、工具设计、AGENTS.…

2026/8/11 1:08:05 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/10 17:07:33 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/11 1:08:06 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/10 17:07:33 阅读更多 →