news 2026/5/1 8:33:59

GPIO配置与中断控制全解析

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
GPIO配置与中断控制全解析

GPIO 配置模式

输出模式

  • 开漏输出:输出端为开漏结构,需外接上拉电阻实现高电平输出,适合总线通信(如I²C)。
  • 推挽输出:直接输出高/低电平,驱动能力强,常用于普通数字信号输出。
  • 复用开漏/推挽:引脚复用为外设功能(如串口、定时器)时的开漏或推挽模式。

输入模式

  • 上拉/下拉输入:内部电阻将引脚默认拉至高/低电平,避免悬空干扰。
  • 浮空输入:引脚悬空,需外部电路确保稳定电平,抗干扰能力弱。
  • 模拟输入:引脚连接ADC,读取模拟信号(如传感器电压)。

独立按键检测

硬件连接
按键一端接地,另一端接GPIO引脚,并配置为上拉输入模式(默认高电平)。

软件逻辑
检测引脚电平变化:

if (GPIO_ReadPin(KEY_PIN) == LOW) { delay_ms(10); // 消抖 if (GPIO_ReadPin(KEY_PIN) == LOW) { // 按键按下处理 } }


中断处理流程

触发条件

  • 外部中断:引脚电平跳变(下降沿/低电平)。
  • 定时器中断:计数器溢出触发。

配置步骤

  1. 使能中断:设置IE寄存器(如EA=1开启总中断,EX0=1允许外部中断0)。
  2. 选择触发方式:TCON寄存器设置(如IT0=1为下降沿触发)。
  3. 编写中断服务函数
void EXTI0_IRQHandler() { // 清除中断标志 // 执行处理逻辑 }


定时器应用

初始化步骤

  1. 设置模式:TMOD寄存器配置(如M1=0, M0=1为16位定时器模式)。
  2. 赋初值:计算定时时长,写入TH0/TL0(如50ms定时需初值TH0=0x3C, TL0=0xB0)。
  3. 启动定时器:TCON寄存器置TR0=1

中断服务例程

void Timer0_IRQHandler() { TH0 = 0x3C; // 重装初值 TL0 = 0xB0; // 定时任务处理 }


PWM 控制蜂鸣器

参数计算

  • 周期:由定时器溢出频率决定(如1kHz方波需定时器1ms中断一次)。
  • 占空比调节:通过改变高电平时间控制音量。

无源蜂鸣器驱动

while (1) { GPIO_WritePin(BUZZER_PIN, HIGH); delay_us(500); // 50%占空比 GPIO_WritePin(BUZZER_PIN, LOW); delay_us(500); }

注意事项

  • 有源蜂鸣器仅需电平控制,无需PWM。
  • 无源蜂鸣器频率决定音调,占空比影响音量。
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/28 15:35:18

【课程设计/毕业设计】基于python深度学习识别混凝土是否有裂缝基于python-CNN深度学习识别混凝土是否有裂缝

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

作者头像 李华
网站建设 2026/4/29 11:15:00

HBase在电信领域的应用:CDR记录存储

HBase在电信领域的应用:CDR记录存储 引言 背景介绍 在当今数字化的时代,电信行业产生的数据量呈爆炸式增长。其中,通话详单记录(Call Detail Record,CDR)是电信运营中极为重要的数据类型,它详细…

作者头像 李华
网站建设 2026/4/23 13:06:45

2026年最新7.1版本pFBA(switch街机模拟器)-适配大气层21.1.0

《pFBA模拟器》是switch主机上的街机模拟器,借助其强大的兼容性和switch强大的硬件性能,模拟器直接加入了几乎所有经典街机机型的支持,包括neogeo、cps1、cps2、cps3、megadrive、PCE等等,还能运行世嘉经典主机游戏,绝…

作者头像 李华
网站建设 2026/4/17 17:04:20

计算机毕业设计springboot博物馆藏品管理系统 基于SpringBoot的文物典藏智慧管理平台 SpringBoot驱动的博物馆珍宝数字化运营系统

计算机毕业设计springboot博物馆藏品管理系统(配套有源码 程序 mysql数据库 论文) 本套源码可以在文本联xi,先看具体系统功能演示视频领取,可分享源码参考。当纸质卡片遇上百万级藏品,错位、虫蛀、检索慢让库房管理员“望物兴叹”…

作者头像 李华
网站建设 2026/4/27 20:22:27

无线网络仿真:6G网络仿真_(1).6G网络基础理论

6G网络基础理论 1. 6G网络的演进背景 6G网络(第六代移动通信网络)是在5G网络的基础上进一步发展而来的。随着5G网络在全球范围内的逐步商用,通信技术的需求和挑战也在不断变化。6G网络的目标是提供更高的数据传输速率、更低的延迟、更高的连接…

作者头像 李华