Logo

郎哥嵌入式编程

30天STM32嵌入式进阶训练营(完整版)

模块1:51单片机进阶(5天,每天2.5小时,巩固铺垫)

第1天:51中断进阶(外部中断)

•理论课(1小时):回顾51定时器中断,学习外部中断原理、外部中断寄存器配置,理解中断优先级(简单认知,不深挖)。

•实操课(1.5小时):Proteus仿真搭建“外部中断+LED”电路,Keil编写代码(按键触发外部中断,控制LED亮灭),实物实操调试;对比定时器中断与外部中断的区别。

•作业:编写代码,用外部中断实现“按键触发流水灯启停”,完成仿真与实物实操。

第2天:51单片机I2C通信基础

•理论课(1小时):回顾前序串口通信,学习I2C通信协议基础(引脚、通信流程、数据传输逻辑),不用深研究协议细节,掌握基础用法。

•实操课(1.5小时):Proteus仿真搭建“51+I2C OLED”电路,编写I2C通信基础代码,实现OLED显示简单文字;实物实操(若有OLED屏),调试通信稳定性。

•作业:完善代码,让OLED显示前序51综合项目的温湿度模拟数据。

第3天:51单片机SPI通信基础

•理论课(1小时):SPI通信协议基础(引脚、通信模式、与I2C的区别),聚焦单片机常用SPI通信场景,掌握核心配置逻辑。

•实操课(1.5小时):Proteus仿真搭建“51+SPI数码管”电路,编写SPI通信代码,实现数码管动态显示;对比I2C与SPI通信的实操差异。

•作业:编写代码,用SPI通信控制数码管显示倒计时,完成仿真实操。

第4天:51综合项目优化(衔接进阶)

•理论课(1小时):回顾前序51综合项目(简易温湿度显示),讲解项目优化思路(中断替代延时、增加通信功能、优化显示效果)。

•实操课(1.5小时):优化前序项目代码,添加外部中断控制项目启停,用I2C OLED替代LCD1602显示数据,提升项目实用性;实物实操调试优化后的项目。

•作业:完成项目优化,记录优化过程中的问题及解决方法,梳理51单片机核心知识点。

第5天:51进阶复盘+STM32入门铺垫

•理论课(1小时):复盘51单片机进阶内容(外部中断、I2C/SPI通信),对比51与STM32的核心区别(寄存器数量、配置方式、性能),介绍STM32入门思路。

•实操课(1.5小时):熟悉STM32开发板外观、引脚分布,安装Keil MDK-ARM、STM32CubeMX软件,新建STM32基础工程,熟悉软件界面。

•模块复盘:梳理51进阶核心知识点,答疑解惑,确保衔接STM32无压力。

模块2:STM32入门(10天,每天2.5小时,核心重点)

第6天:STM32芯片认知+CubeMX基础

•理论课(1小时):STM32F103C8T6芯片认知(引脚定义、核心功能、存储结构),STM32CubeMX软件作用(图形化配置,替代手动写寄存器),配置流程讲解。

•实操课(1.5小时):用CubeMX新建STM32工程,配置时钟、调试模式,生成Keil MDK工程;熟悉工程结构,了解自动生成的代码含义(不用深研究,会调用即可)。

•作业:新建STM32工程,配置时钟,生成代码,确保工程能正常编译。

第7天:STM32 GPIO进阶(对比51,快速上手)

•理论课(1小时):对比51 GPIO,讲解STM32 GPIO的工作模式(输入/输出模式、推挽/开漏输出),CubeMX配置GPIO的方法,GPIO口控制逻辑(与51一致,配置更规范)。

•实操课(1.5小时):用CubeMX配置STM32 GPIO输出,编写代码控制LED灯亮灭、闪烁;实物实操,对比51与STM32 GPIO控制的差异;拓展:用GPIO输入检测按键状态。

•作业:编写代码,用STM32 GPIO实现LED流水灯,完成实物实操。

第8-9天:STM32定时器进阶(精准定时,对接实战)

•第8天理论课(1小时):回顾51定时器,讲解STM32定时器(TIM2-TIM5)的工作模式、计数方式,CubeMX配置定时器的方法,定时中断配置流程。

•第8天实操课(1.5小时):用CubeMX配置定时器定时中断,编写代码实现LED每隔1秒闪烁(精准定时);实物实操,调试定时精度。

•第9天理论课(1小时):定时器进阶用法(定时中断嵌套、脉冲计数),结合前序51定时器,总结STM32定时器的优势。

•第9天实操课(1.5小时):编写代码,用定时器控制流水灯匀速流动,实现“流水+闪烁”组合效果;实物实操调试,优化定时效果。

•作业:用定时器实现LED灯每隔0.5秒闪烁一次,同时控制另一个LED流水,完成实物实操。

第10-11天:STM32串口进阶(数据交互,实战必备)

•第10天理论课(1小时):回顾51串口通信,讲解STM32串口(USART1)的工作原理、CubeMX配置方法(波特率、数据位、停止位),串口中断配置。

•第10天实操课(1.5小时):用CubeMX配置串口,编写代码实现STM32向上位机发送字符串(如“STM32 Test”);实物实操,用串口调试助手查看接收数据。

•第11天理论课(1小时):STM32串口中断用法(接收数据中断),串口数据解析基础,实现“上位机发指令,STM32执行操作”的逻辑。

•第11天实操课(1.5小时):编写代码,实现“上位机发送‘1’点亮LED,发送‘0’熄灭LED”;实物实操,调试串口通信稳定性,排查数据丢失问题。

•作业:编写代码,STM32向上位机发送LED状态,接收上位机指令控制流水灯启停,完成实物实操。

第12-15天:STM32 GPIO、定时器、串口综合练习

•第12-13天:编写综合代码,实现“定时器定时+串口发送数据+GPIO控制LED”,模拟“LED状态实时上报”功能;实物实操调试,优化代码结构(模块化编程)。

•第14-15天:复盘STM32入门内容(GPIO、定时器、串口),梳理CubeMX配置流程和代码编写思路;针对性解决实操中遇到的问题(如工程编译报错、硬件不响应)。

•作业:完善综合代码,实现“每隔1秒,STM32通过串口上报LED状态,同时接收上位机指令修改LED闪烁频率”,完成实物实操。

模块3:STM32通信与外设(7天,每天2.5小时,实战必备)

第16-17天:STM32 I2C通信实操(对接传感器/显示屏)

•第16天理论课(1小时):回顾51 I2C通信,讲解STM32 I2C外设配置(CubeMX配置I2C引脚、通信速率),I2C通信代码编写思路。

•第16天实操课(1.5小时):用CubeMX配置STM32 I2C,编写代码对接I2C OLED显示屏,实现文字、数字显示;实物实操,调试显示屏显示效果。

•第17天理论课(1小时):I2C传感器对接基础(DHT11温湿度传感器),传感器数据解析方法,数据格式讲解。

•第17天实操课(1.5小时):用STM32 I2C对接DHT11传感器,采集温湿度数据;实物实操,确保数据采集准确,排查通信故障。

•作业:编写代码,实现“DHT11采集温湿度数据,OLED显示屏实时显示”,完成实物实操。

第18-19天:STM32 SPI通信实操(对接外设)

•第18天理论课(1小时):回顾51 SPI通信,讲解STM32 SPI外设配置(CubeMX配置SPI引脚、通信模式),SPI与I2C通信的实操差异。

•第18天实操课(1.5小时):用CubeMX配置STM32 SPI,编写代码对接SPI数码管,实现动态显示温湿度数据;实物实操,调试显示效果。

•第19天实操课(2.5小时):综合练习,实现“DHT11采集温湿度数据,同时通过SPI数码管和I2C OLED显示,串口上报数据”;实物实操调试,确保各模块协同工作。

•作业:完善综合代码,优化数据显示格式,确保数据采集、显示、上报同步进行。

第20-22天:STM32外设综合与故障排查

•第20天:学习STM32常见外设故障排查方法(通信故障、GPIO不响应、定时器不准),针对性解决实操中遇到的问题。

•第21-22天:综合练习,对接多个外设(按键、LED、DHT11、OLED、数码管),实现“按键控制数据采集启停,温湿度数据同步显示和上报”;实物实操,优化代码效率。

•模块复盘:梳理STM32通信与外设核心知识点,答疑解惑,为后续实战项目铺垫。

模块4:进阶实战项目(8天,每天3小时,落地应用)

项目1:STM32简易温湿度监控系统(第23-26天)

•第23天:项目需求分析+电路搭建(1小时理论+2小时实操):明确项目功能(DHT11采集温湿度、OLED显示、串口上报、按键控制启停/清零),搭建实物电路,用CubeMX配置工程。

•第24天:分模块编写代码(I2C OLED驱动、DHT11采集、串口通信、按键控制),模块化编程,逐步调试每个模块功能。

•第25天:模块整合,实现项目完整功能,调试数据采集精度、显示效果、通信稳定性,解决项目中出现的故障(如数据丢失、显示错乱)。

•第26天:项目优化(添加数据异常提示、优化显示界面、简化代码),完成项目测试,记录项目开发流程和问题解决方法。

项目2:STM32智能LED控制系统(第27-29天)

•第27天:项目需求分析+电路搭建(1小时理论+2小时实操):明确项目功能(定时器控制LED亮度调节、串口指令控制LED模式、按键切换模式、OLED显示模式和亮度),搭建实物电路。

•第28天:分模块编写代码(LED亮度调节、串口指令解析、按键控制、OLED显示),逐步调试,确保各模块正常工作。

•第29天:模块整合,实现项目完整功能(如流水模式、呼吸灯模式、亮度调节模式),优化操作体验,排查故障,完成项目测试。

第30天:项目展示+综合考核+后续规划

•考核(1小时):基础知识点问答(STM32基础、通信协议、项目开发思路),实操考核(调试项目功能、修改简单代码)。

•项目展示(1.5小时):学员展示两个实战项目,分享开发心得和问题解决经验,老师点评指导,优化项目细节。

•后续规划(0.5小时):讲解后续进阶方向(STM32高级外设、物联网开发、嵌入式Linux入门),给出学习建议,衔接更高阶的嵌入式学习。

郎哥嵌入式编程 © 版权所有 | STM32进阶训练营完整课程