【单片机】GPIO位结构图解析

1、片上外设与CPU的关系

CPU是单片机的核心部分,负责处理数据和控制程序流程。片上外设是集成在单片机芯片内部的外部电路,如GPIO、ADC、定时器、串口等。这些外设通过特殊的寄存器与CPU进行通信,CPU通过读写这些寄存器来控制外设的工作状态。

2、GPIO位结构

GPIO位结构包括两个重要部分,一个是输入数据寄存器(IDR),一个输出数据寄存器(ODR)

保镖室(保护二极管)
作用:瞬间高压来了,先把电引走,防止芯片被“电死”。
白话:像门口保安,遇到闹事的大块头直接请出门,不让进屋。

翻译室(TTL 施密特触发器)
作用:把引脚上“模模糊糊”的电压翻译成“0 或 1”的干净数字信号。
白话:把方言转成标准普通话,让后面的大脑听得懂。

录音室(输入寄存器)
作用:把翻译好的 0/1 先“录”下来,CPU 随时来读。
白话:像录音笔,按下按钮就能把声音存起来,想听再播放。

播音室(输出寄存器 + 驱动器)
作用:CPU 想发话时,先把 0/1 写进“小喇叭”,再由驱动器把电流放大,真正送到引脚。
白话:像教室里的广播站,老师先写好稿子,再通过大喇叭让全校听见。

多功能切换开关(复用功能开关)
作用:决定这个引脚今天当“普通 I/O”还是当“特殊外设”(比如串口、PWM)。
白话:像电视遥控器上的“信号源”键,一键切换 HDMI、AV、USB,不同模式干不同活。

3、输入寄存器(IDR)与片上外设的区别

将转换后的数字信号传递到对应的cpu内核中

模拟输入就是原来没有转换的电平信号,都是模拟信号,传递到对应的处理模拟信号的片上外设,复用功能输入主要将数字信号不通过CPU而是直接传递到对应要读取引脚电平的片上外设中,比如串口接收引脚,直接将电平信号传递到串口接收器中,不需要CPU处理。

4、输出寄存器(ODR)与复位功能输出的区别

输出寄存器使用的是CPU处理后的数字信号,通过GPIO输出,然后控制P-MOS和N-MOS来定义引脚的输出高低(数字信号),复用功能输出主要是多次发送数字信号,做个比喻,输出寄存器就好比单发的子弹,而复用功能输出就好比机关枪,可以连续发射。

没有这条“复用功能输出”线,我们就倒退回“软件 bit-bang”石器时代——速度低、抖动大、CPU 被绑、协议难写。

“抢方向盘”是迫不得已且心甘情愿:让专业硬件干专业活,软件只需配置和装数据。

把“弹”和“枪”拆开,就一目了然:
ODR 的“弹”=1 个 bit
你写 GPIOA->ODR = 1 → 上管立刻开,引脚变高;写 0 → 下管开,引脚变低。
写完就完事,不会再自动翻,必须下一次 CPU(或 DMA)再写新值才会变。
→ 所以 ODR 只是单发步枪,每放一枪都要软件重新扣扳机。
复用功能(SPI/PWM/USART)的“弹”=一串 bit+时钟
你把 0x55 放进 SPI_DR → 移位寄存器在 8 个 SCK 周期里自动依次把 0-1-0-1… 送到引脚,完全不用软件再干预。
波特率、相位、占空比都由硬件计数器自动对齐。
→ 这是连发机枪,装一次弹,硬件帮你打完整串。
二者永远互斥
引脚只有一对上下管,MUX 硬开关保证:
要么连 ODR(单发,软件扳机)
要么连外设移位寄存器(连发,硬件扳机)
不能同时连,否则会出现“软件写 1 而硬件移位写 0” → 上下管同时导通短路。

5、USART-TX在哪里?

USART-TX在哪里?
在这张图里,USART-TX 并没有被单独画出来,它藏在 “来自片上外设” 这条总线里——
先找到图最下方的那根横线,旁边写着
“来自片上外设”
它就是 所有片上外设(USART、SPI、TIM…)共用 的“复用功能输出”总线。
这条总线通过一个 “复用功能输出 或关闭” 开关(多路选择器)直接连到 输出驱动器(P-MOS / N-MOS)。
当你把引脚配置成 USART1_TX 时,芯片内部的路由逻辑会把 USART 外设的 TX 移位寄存器输出 接到这条总线上,从而接管输出驱动器;ODR 通路被自动断开。
因此,USART-TX 的物理信号就是沿着
“USART 移位寄存器 → 片上外设总线 → 复用功能输出开关 → 输出驱动器 → 引脚”
这条路径出去的,图上只用一个公共箭头表示,没有单独标“USART-TX”字样。

6、GPIO模式与外设模式

GPIO 模式
你自己当厨师:
点火(写 1)、关火(写 0)、翻锅(读 IDR)——每一步都要 CPU 亲手操作。
外设模式
你按下“电饭煲”按钮:
升温、恒温、跳保温全部由电饭煲内部硬件状态机搞定;
CPU 只负责“放米+按开始”,之后该干嘛干嘛,饭熟硬件自动通知你(中断/DMA)。
引脚上的时钟、数据、PWM 波形,都是“电饭煲”里的电路自动产生,CPU 已经插不上手。

7、一句话总结

把单片机想成一座“智能工厂”:CPU 是厂长,片上外设是各专业车间,GPIO 则是能随时改换的“万能工位”。
厂长(CPU)可以亲手拧螺丝(GPIO 模式:写 ODR、读 IDR),也能按下电钮(配置寄存器)把工位交给自动化流水线(外设复用模式)。
交出去后,子弹变机关枪、单发变连发,厂长只需等中断“叮”一声——饭已煮好、数据已发完、波形已生成。
记住这条铁律:
“谁掌握驱动器,谁决定引脚命运。”
让专业硬件干专业活,软件只需“开局一张配置表”,剩下的时间,CPU 可以去睡觉,也可以去规划下一道工序——这就是现代单片机高效、低功耗、省心的终极秘密。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/1012625.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

LFM2-8B-A1B:混合专家模型如何重新定义2025智能终端计算范式

LFM2-8B-A1B:混合专家模型如何重新定义2025智能终端计算范式 【免费下载链接】LFM2-8B-A1B 项目地址: https://ai.gitcode.com/hf_mirrors/LiquidAI/LFM2-8B-A1B 导语 Liquid AI推出的LFM2-8B-A1B混合专家模型以83亿总参数和15亿激活参数的创新设计&#x…

RuoYi-Vue终极指南:3步构建企业级Java应用系统

RuoYi-Vue终极指南:3步构建企业级Java应用系统 【免费下载链接】RuoYi-Vue-fast :tada: (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue & Element 的前后端分离权限管理系统 项目地址: https://gitcode.com/GitH…

万丈高楼平地起:从“输入-处理-输出”第一性原理,看懂系统架构的演进

系统设计的复杂性,往往源于其需要应对的外部压力。对于互联网应用而言,用户规模的增长和流量的瞬时波动,是其必须面对的常态。一个未经深思熟虑的系统,在流量洪峰面前可能会变得迟缓甚至不可用,直接影响用户体验与业务…

基于Java + vue校园论坛系统(源码+数据库+文档)

校园论坛 目录 基于springboot vue校园论坛系统 一、前言 二、系统功能演示 三、技术选型 四、其他项目参考 五、代码参考 六、测试参考 七、最新计算机毕设选题推荐 八、源码获取: 基于springboot vue校园论坛系统 一、前言 博主介绍:✌️大…

阿里开源Wan2.2:MoE架构重构视频生成,消费级显卡实现电影级效果

阿里开源Wan2.2:MoE架构重构视频生成,消费级显卡实现电影级效果 【免费下载链接】Wan2.2-TI2V-5B-Diffusers 项目地址: https://ai.gitcode.com/hf_mirrors/Wan-AI/Wan2.2-TI2V-5B-Diffusers 导语 阿里巴巴正式开源视频生成模型Wan2.2&#xff…

Qdrant混合搜索:让AI搜索既懂语义又识关键词的完美方案

Qdrant混合搜索:让AI搜索既懂语义又识关键词的完美方案 【免费下载链接】qdrant Qdrant - 针对下一代人工智能的高性能、大规模向量数据库。同时提供云端版本 项目地址: https://gitcode.com/GitHub_Trending/qd/qdrant 想象一下这样的场景:你在电…

Dolphin Mistral 24B Venice Edition:重新定义无审查AI的三大技术突破与商业价值

Dolphin Mistral 24B Venice Edition:重新定义无审查AI的三大技术突破与商业价值 【免费下载链接】Dolphin-Mistral-24B-Venice-Edition 项目地址: https://ai.gitcode.com/hf_mirrors/dphn/Dolphin-Mistral-24B-Venice-Edition 在AI伦理与创作自由日益对立…

基于Java + vue在线教育学习系统(源码+数据库+文档)

在线教育学习 目录 基于springboot vue在线教育学习系统 一、前言 二、系统功能演示 三、技术选型 四、其他项目参考 五、代码参考 六、测试参考 七、最新计算机毕设选题推荐 八、源码获取: 基于springboot vue在线教育学习系统 一、前言 博主介绍&…

PyOxidizer:重新定义Python应用部署的终极解决方案

PyOxidizer:重新定义Python应用部署的终极解决方案 【免费下载链接】PyOxidizer A modern Python application packaging and distribution tool 项目地址: https://gitcode.com/gh_mirrors/py/PyOxidizer 你是否曾经因为Python应用的部署问题而彻夜难眠&…

AI视频生成革命:如何用消费级GPU创作专业级视频内容?

在2025年,AI视频生成技术迎来重大突破!阿里巴巴开源的Wan2.2模型首次让普通用户也能在消费级硬件上生成720P高清视频。这项技术到底有多厉害?为什么说它重新定义了视频创作的门槛?让我们一探究竟!🎬 【免费…

MOSES:重新定义药物发现中分子生成的基准测试

MOSES:重新定义药物发现中分子生成的基准测试 【免费下载链接】moses 项目地址: https://gitcode.com/gh_mirrors/mo/moses 在人工智能加速药物研发的时代,分子生成模型正以前所未有的速度发展。然而,缺乏统一的评估标准成为了制约该…

3小时搞定kkFileView:从零搭建企业级文档预览系统

3小时搞定kkFileView:从零搭建企业级文档预览系统 【免费下载链接】kkFileView Universal File Online Preview Project based on Spring-Boot 项目地址: https://gitcode.com/GitHub_Trending/kk/kkFileView 想要在网页中直接预览Word、Excel、PDF等200多种…

1、掌握 Linux 网络管理:从环境搭建到实战应用

掌握 Linux 网络管理:从环境搭建到实战应用 1. 开篇介绍 在当今数字化时代,Linux 网络管理技能对于技术人员来说至关重要。无论是构建企业网络、管理服务器,还是保障网络安全,都离不开扎实的 Linux 网络管理知识。接下来,我们将深入探讨 Linux 网络管理的各个方面,从环…

基于Java+ vue图书管理系统(源码+数据库+文档)

图书管理 目录 基于springboot vue图书管理系统 一、前言 二、系统功能演示 三、技术选型 四、其他项目参考 五、代码参考 六、测试参考 七、最新计算机毕设选题推荐 八、源码获取: 基于springboot vue图书管理系统 一、前言 博主介绍:✌️大…

Archery数据导出终极指南:3分钟学会Excel和JSON高效导出

还在为数据库数据导出而头疼?每天手动复制粘贴SQL查询结果到Excel表格?Archery的离线数据导出功能让你彻底告别这些繁琐操作!🎯 【免费下载链接】Archery hhyo/Archery: 这是一个用于辅助MySQL数据库管理和开发的Web工具。适合用于…

告别瞎忙!16K星开源神器自动追踪时间

还在为不知道自己每一天都瞎忙了什么而烦恼吗?很多人试过手动记日志、打卡软件,要么因为隐私、或者安全性、繁琐坚持不了。这几天在Github上发现一款16K star的超级实用的工具 - ActivityWatch,它可以自动、无感地追踪你在设备上的所有活动&a…

BiliRoaming终极使用指南:解锁B站完整观影体验

BiliRoaming终极使用指南:解锁B站完整观影体验 【免费下载链接】BiliRoaming 哔哩漫游,解除B站客户端番剧区域限制的Xposed模块,并且提供其他小功能。An Xposed module that unblocks bangumi area limit of BILIBILI with miscellaneous fea…

OpenCode智能测试自动化终极指南:彻底告别手动测试的完整教程

OpenCode智能测试自动化终极指南:彻底告别手动测试的完整教程 【免费下载链接】opencode 一个专为终端打造的开源AI编程助手,模型灵活可选,可远程驱动。 项目地址: https://gitcode.com/GitHub_Trending/openc/opencode 还在为重复的测…

基于Java+ vue出行旅游安排系统(源码+数据库+文档)

出行旅游安排 目录 基于springboot vue出行旅游安排系统 一、前言 二、系统功能演示 三、技术选型 四、其他项目参考 五、代码参考 六、测试参考 七、最新计算机毕设选题推荐 八、源码获取: 基于springboot vue出行旅游安排系统 一、前言 博主介绍&…

基于Java + vue学生管理系统(源码+数据库+文档)

学生管理 目录 基于springboot vue学生管理系统 一、前言 二、系统功能演示 详细视频演示 三、技术选型 四、其他项目参考 五、代码参考 六、测试参考 七、最新计算机毕设选题推荐 八、源码获取: 基于springboot vue学生管理系统 一、前言 博主介绍&am…