当前位置: 首页 > article >正文

第 1 章:数字 I/O 与串口通信(GPIO UART)


本章目标:

  • 掌握 GPIO 的硬件原理、寄存器配置与典型驱动框架

  • 深入理解 UART/USART 的帧格式、波特率配置、中断与 DMA 驱动

  • 通过实战案例,将 GPIO 与 UART 结合,实现 AT 命令式外设控制

章节结构

  1. GPIO 概述与硬件原理

  2. GPIO 驱动实现:寄存器、中断与去抖

  3. UART/USART 原理与帧格式

  4. UART 波特率与时钟配置

  5. UART 中断与 DMA 驱动

  6. 综合案例:通过 UART 控制 LED 与读取按键

  7. 小结与 Q&A


1.1 GPIO 概述与硬件原理

1.1.1 GPIO 的定位与作用

  • 定义:通用输入/输出(General-Purpose Input/Output)

  • 功能:将处理器的数字端口配置为“输入”或“输出”,用于按键扫描、LED 驱动、继电器控制、外部中断等

  • 特点

    • 最低速、最简单的数字信号接口

    • 支持拉 up/down 、电平触发中断、输出开漏/推挽

1.1.2 GPIO 的硬件结构

以典型 STM32 GPIO 端口为例,每 port 包含 16 个 pin ,结构示意:

 ┌─────────────────────────────────┐│       GPIOx Controller         ││ ┌──────┐ ┌──────┐ ┌──────┐      ││ │ MODER│ │ OTYPER││ PUPDR│ ...  ││ └──────┘ └──────┘ └──────┘      ││ ┌─────────┐ ┌─────────┐         ││ │ IDR (IN) │ │ ODR (OUT)│        ││ └─────────┘ └─────────┘         │└─────────────────────────────────┘
  1. MODER:模式寄存器,控制每个 pin 的输入/输出/复用/模拟

  2. OTYPER:输出类型,推挽(Push-Pull)或开漏(Open-Drain)

  3. OSPEEDR:输出速度,影响上升/下降沿速度

  4. PUPDR:上下拉配置,设定输入时的默认电平

  5. IDR / ODR:输入数据寄存器 / 输出数据寄存器

  6. EXTI:外部中断控制器,与 AF(复用功能)协同实现中断触发

  7. <
http://www.lryc.cn/news/2379994.html

相关文章:

  • 【图像生成大模型】Wan2.1:下一代开源大规模视频生成模型
  • java配置webSocket、前端使用uniapp连接
  • interface接口和defer场景分析
  • 02、基础入门-Spring生态圈
  • 前后端交互中的绝对路径和相对路径
  • 从零开始学习three.js(18):一文详解three.js中的着色器Shader
  • 调用百度云API机器翻译
  • 大模型训练计算显存占用
  • uni-app学习笔记六-vue3响应式基础
  • 亚远景-ASPICE与ISO 21434在汽车电子系统开发中的应用案例
  • 『已解决』Python virtualenv_ error_ unrecognized arguments_--wheel-bundle
  • 详细介绍一下Python连接MySQL数据库的完整步骤
  • 【Unity 2023 新版InputSystem系统】新版InputSystem 如何进行人物移动(包括配置、代码详细实现过程)
  • 单片机-STM32部分:13-1、编码器
  • 机器学习第十二讲:特征选择 → 选最重要的考试科目做录取判断
  • 关于我在使用stream().toList()遇到的问题
  • javascript 编程基础(2)javascript与Node.js
  • Spring Boot 集成 druid,实现 SQL 监控
  • 多卡跑ollama run deepseek-r1
  • HTML向四周扩散背景
  • 基于Java在高德地图面查询检索中使用WGS84坐标的一种方法-以某商场的POI数据检索为例
  • 使用 Terraform 创建 Azure Databricks
  • 本地部署dify+ragflow+deepseek ,结合小模型实现故障预测,并结合本地知识库和大模型给出维修建议
  • SECERN AI提出3D生成方法SVAD!单张图像合成超逼真3D Avatar!
  • 深入探索:Core Web Vitals 进阶优化与新兴指标
  • c/c++的opencv开闭操作
  • 【物联网】 ubantu20.04 搭建L2TP服务器
  • winrar 工具测试 下载 与安装
  • PLC组网的方法、要点及实施全解析
  • 网络安全深度解析:21种常见网站漏洞及防御指南