首页
›
Linux内核与驱动
›
168-嵌入式串口通信
›
《裸机串口编程:轮询中断DMA三阶段驱动开发实战》
VIP10
本课程属于:168-嵌入式串口通信
Linux内核与驱动 · 共 10 门相关课程,组合学习更完整。
查看所属VIP全部课程 →
← 返回所属目录
咨询 / 购买
裸机串口编程:轮询中断DMA三阶段驱动开发实战
共计 30 章节
点击此处阅读海量试读课程:100+行业、1000+细分领域
01
课程导论与硬件基础
介绍UART协议原理 · RS232/RS485电平标准 · DB9接口定义
课程导论
硬件基础
02
开发环境搭建
STM32CubeMX工程生成 · Keil MDK-ARM安装与配置 · 串口调试助手(SSCOM/Putty…
开发环境搭建
STM32CubeMX
03
寄存器映射与时钟树
GPIO复用功能配置 · USART时钟使能(APB1/APB… · 波特率计算公式(USART_BRR寄…
寄存器映射
时钟树
04
GPIO初始化与复用功能
推挽输出/浮空输入模式 · AFIO重映射 · GPIO速度配置
GPIO
初始化
05
USART寄存器详解
状态寄存器(USART_SR) · 数据寄存器(USART_DR) · 控制寄存器1/2/3(USART_C…
USART
寄存器详解
06
轮询发送实现
单字节发送函数(while循环等待T… · 字符串发送函数 · 换行符处理(\r\n)
轮询发送实现
while
07
轮询接收实现
单字节接收函数(while循环等待R… · 超时处理机制 · 轮询接收的CPU占用率分析
轮询接收实现
while
08
轮询模式实战
实现printf重定向(fputc函… · 串口回显程序 · AT指令解析框架
轮询模式实战
printf
09
中断系统基础
NVIC嵌套向量中断控制器 · 中断优先级分组(抢占优先级/子优先级… · 中断使能与失能
断系统基础
NVIC
10
USART中断配置
使能RXNEIE中断位 · 配置NVIC优先级 · 中断服务函数命名规范(USARTx_…
USART
断配置
11
中断发送实现
TXE中断触发机制 · 环形缓冲区发送设计 · 中断发送的原子操作问题
断发送实现
TXE
12
中断接收实现
RXNE中断处理 · 单字节接收缓冲区 · 帧错误/溢出错误检测(FE/ORE标…
断接收实现
RXNE
13
环形缓冲区设计
生产者-消费者模型 · 头指针与尾指针 · 缓冲区满/空判断
环形缓冲区设计
生产者
14
中断模式实战
实现中断驱动的串口收发库 · 封装API(uart_send_by… · 中断模式性能测试
断模式实战
实现
15
DMA控制器基础
DMA1/DMA2通道映射 · 传输方向(外设到内存/内存到外设) · 循环模式与普通模式
DMA
控制器基础
16
DMA传输配置
源地址/目的地址递增设置 · 传输数据量(CNDTR寄存器) · DMA优先级与仲裁
DMA
传输配置
17
USART DMA发送配置
使能USART的DMA发送请求(DM… · 配置DMA通道为内存到外设 · 半传输/传输完成中断
USART
DMA
18
USART DMA接收配置
使能USART的DMA接收请求(DM… · 配置DMA通道为外设到内存 · 空闲中断(IDLE)检测帧结束
USART
DMA
19
DMA中断与回调
DMA传输完成中断(TCIF) · 半传输中断(HTIF) · 传输错误中断(TEIF)
DMA
回调
20
DMA双缓冲技术
内存双缓冲切换机制 · 乒乓操作原理 · DMA双缓冲寄存器配置
DMA
双缓冲技术
21
DMA模式实战
实现DMA+IDLE中断的变长接收 · DMA发送完成回调 · DMA模式与中断模式性能对比(CPU…
DMA
模式实战
22
三阶段模式对比分析
轮询/中断/DMA的CPU占用率 · 响应时间 · 吞吐量
三阶段模式对比分…
DMA
23
波特率自适应与流控
自动波特率检测(ABR) · 硬件流控(RTS/CTS) · 软件流控(XON/XOFF)
波特率自适应
流控
24
多串口并发管理
多USART实例管理结构体 · 中断共享与优先级分配 · DMA通道冲突解决
多串口并发管理
USART
25
低功耗模式串口
睡眠模式下的串口唤醒 · 停止模式下的串口保持 · 低功耗串口配置
低功耗模式串口
睡眠模式下的串口…
26
错误处理与调试
溢出错误(ORE) · 噪声错误(NE) · 帧错误(FE)
错误处理
调试
27
串口协议设计
自定义帧格式(帧头/长度/数据/校验… · CRC16校验实现 · 超时重传机制
串口协议设计
自定义帧格式
28
Bootloader串口升级
Ymodem协议实现 · Flash擦写驱动 · 跳转至APP
Bootloader
串口升级
29
性能优化与测试
DMA描述符链 · Cache一致性维护(DCache/… · 串口吞吐量测试方法
性能优化
测试
30
课程总结与项目实战
综合项目需求分析(传感器数据采集+上… · 三阶段混合设计策略 · 代码架构评审
课程总结
项目实战
所属VIP或分类
同VIP:RTOS串口驱动:中断服务函数优先级与多任务互斥
同VIP:STM32串口DMA与空闲中断实现不定长数据接收
同VIP:STM32串口DMA双缓冲实现连续采样不中断