欢迎关注我👆,收藏下次不迷路┗|`O′|┛ 嗷~~
👇热门内容👇
python使用案例与应用_安城安的博客-CSDN博客
软硬件教学_安城安的博客-CSDN博客
Orbslam3&Vinsfusion_安城安的博客-CSDN博客
网络安全_安城安的博客-CSDN博客
教程_安城安的博客-CSDN博客
python办公自动化_安城安的博客-CSDN博客
新书购买《Python实用小工具开发教程》
http://www.pythontoolsteach.com/3
目录
一、STM32F103C8T6入门视频教程
1. 学习STM32基础知识
1)学习STM32需要的基础知识
2)STM32基本架构原理
3)常用型号
4)简单总结
5)STM32时钟树
6)学习STM32的方法
7)STM32实践硬件简介
二、知识小结
一、STM32F103C8T6入门视频教程
1. 学习STM32基础知识
1)学习STM32需要的基础知识
- 电路基础:必须掌握电源、电流、电阻、电容等基本概念和属性关系,能正确选择使用电阻电容等元器件。
- 模数电路:
- 掌握二极管、三极管的基本工作原理
- 重点理解三极管的导通/截止条件(开关条件)
- 掌握A/D、D/A转换基本原理
- 初步掌握稳压电源的工作原理
- 单片机基础:具有MCS-51八位单片机原理学习经历和应用开发经验将极大简化STM32学习,但非必须条件。
- 编程语言:必须具备扎实的C语言基础,能开发较复杂应用系统,因STM32开发主要基于C语言。
- 实践能力:需要具备使用STM32实验板进行实验的动手能力。
2)STM32基本架构原理
- ARM是什么
- 公司性质:英国微处理器公司,采用芯片技术授权商业模式,不直接生产产品。
- 技术特点:
- 高性能、低成本、低功耗RISC处理器
- 适用于嵌入式控制、消费电子、DSP和移动应用
- 处理器特性:
- 体积小、低功耗、低成本、高性能
- 支持Thumb(16位)/ARM(32位)双指令集,兼容8/16位器件
- 大量使用寄存器,指令执行速度快
- 多数数据操作在寄存器中完成
- 寻址方式灵活简单,执行效率高
- 指令长度固定
- STM32是什么
- 产品定位:ST公司使用ARM Cortex-M3核心生产的32位系列单片机。
- 生产分工:
- 内核(CPU)由ARM公司设计
- 外设由ST公司(SOC厂商)生产
- 产品系列:
- 主流产品:STM32F0/F1/F3系列
- 超低功耗:STM32L0/L1/L4/L4+系列
- 高性能:STM32F2/F4/F7/H7系列
- 学习建议:掌握M3内核后,其他内核产品可快速上手。
- STM32芯片内部结构
- 芯片内部结构图1
- 核心组件:
- Cortex-M3内核(CPU)由ARM设计
- 总线矩阵、FLASH、SRAM、GPIO等外设由ST设计
- 关键参数:
- 供电电压:3.3V
- 时钟源:外部时钟和内部RC振荡器(8M/40KHz)
- 工作频率:48/72MHz
- 存储容量:FLASH 512KB,SRAM 64KB
- 外设接口:
- 调试接口:JTAG/SWD
- 通用接口:GPIO、I2C、SPI等
- 定时器:多种定时器功能
- 芯片内部结构图2
- GPIO扩展:
- 多组GPIO端口(PA-PG),不同芯片引脚数量不同
- 简单芯片可能只有部分端口(如PA-PE)
- 通信接口:
- 串口:USART1-4
- SPI:SPI1-3
- I2C:I2C1-2
- 转换模块:
- ADC:12位模数转换器
- DAC:数模转换器
- 特殊功能:
- 定时器:多种定时/计数器
- 看门狗:独立看门狗(IWDG)
- 实时时钟:RTC模块
- 芯片内部结构图1
3)常用型号
- STM32的芯片类型都是一样的吗
- 核心板型号:HJ-STM32核心板集成STM32F103C6T6/C8T6芯片,可直接安装在51开发板上进行升级
- 容量差异:
- C6T6:32KB闪存
- C8T6:64KB闪存
- 定时器数量也不同
- 兼容性:虽然容量不同,但原理、编程特点相同,教程完全兼容
- 主板选择:
- HJ-duino主板配套C6/C8芯片(随机发货)
- 方形核心板使用STM32F103C8T6
- 平衡车核心板采用STM32F103RCT6(引脚更多)
- 智能小车核心板使用STM32F103ZET6(100+引脚)
- 产品分类:
- 小容量:16K/32K闪存,6K/10K RAM
- 中等容量:64K/128K闪存,20K RAM
- 大容量:256K-512K闪存,48K-64K RAM
- 功能差异:
- 48脚:2USART/2定时器/1SPI/1I2C/2ADC
- 64脚:增加1定时器/1I2C
- 100+脚:3USART+2UART/4定时器/3SPI/3ADC等
- 内核统一:均采用Cortex-M3内核,学习成本低
- 升级建议:
- 已有51开发板:选择HJ-STM32核心板直接升级
- 零基础学习:推荐STM32-HJduino主板(配套传感器套件)
- 扩展应用:
- 可升级为智能小车(RCT6核心板)
- 或采用ZET6核心板构建WIFI视频小车/循迹小车
4)简单总结
- 核心架构:均采用Cortex-M3内核,程序编写方式相同
- 学习策略:学习内容基本一致,只需掌握一种代表型号即可通用
- 引脚差异:不同型号I/O引脚数量从36到144个不等,引脚越多价格越高
- 存储配置:闪存容量从6K到512K,RAM从6K到64K不等
- 外设资源:定时器、串口(USART/UART)、SPI、I2C等接口数量随型号递增
- 产品分级:
- 小容量:16K-32K闪存,6K-10K RAM(如36/48/64引脚)
- 中等容量:64K-128K闪存,20K RAM(如100引脚)
- 大容量:256K-512K闪存,48K-64K RAM(如144引脚)
5)STM32时钟树
- STM32时钟树概念分析
- 核心作用:提供稳定机器周期,如同"心脏"般关键,故障将导致系统崩溃
- 设计特点:多时钟源架构满足不同外设需求(如看门狗仅需30KHz)
- 时钟类型:
- HSE:高速外部时钟(4-16MHz晶振)
- HSI:高速内部RC振荡器(8MHz)
- LSE:低速外部时钟(32.768KHz)
- LSI:低速内部RC振荡器(40KHz)
- 信号处理流程:
- 外部晶振输入后经二分频
- HSI经PLL倍频可输出72MHz主频
- USB专用时钟分频至48MHz
- 存储器和DMA时钟最高72MHz
- APB1总线最大36MHz(定时器2-7时钟特殊处理)
- APB2总线最大72MHz(定时器1/8时钟特殊处理)
- ADC专用时钟限制在14MHz
6)学习STM32的方法
- 实践路径:
- 配备开发板/智能小车,通过配套视频"做中学"
- 精读官方芯片手册(ARM/ST工程师编写的最权威资料)
- 从简单项目入手(如LED控制),逐步掌握开发全流程
- 项目深化训练(多LED控制、定时器中断应用等)
- 学习策略:
- 蚂蚁搬家式学习:按需重点突破外设功能模块
- 最小系统优先:理解程序烧写和运行机制
- 频率控制要点:不同外设需匹配对应时钟频率
7)STM32实践硬件简介
- 推荐学习工具
- 开发板选择:推荐使用AJ-RC或C8Z1型号的STM32学习板,这类开发板集成度高且配套资源丰富
- 学习方法:
- 学做结合:通过配套视频教程边学边实践
- 手册研读:STM32芯片手册包含基础理论知识
- 项目驱动:从简单项目入手,按需学习新功能
- 硬件功能集成
- 调试接口:
- 在线下载:集成烧录芯片支持程序下载
- 仿真功能:支持SWD调试接口可扩展
- 电源管理:内置总电源开关控制电路
- 外设接口:提供舵机输出接口和PH2.0标准接线端子
- 人机交互组件
- 显示模块:集成LCD1602字符显示屏
- 输入设备:
- 蜂鸣器报警装置
- 物理按键输入阵列
- LED状态指示灯组
- 引脚标注:所有IO口均有清晰的功能标识
- 电机驱动系统
- 驱动能力:集成四路电机驱动芯片
- 扩展应用:
- 可连接四个电机组成四驱系统
- 通过智能车底盘升级为新能源汽车原型
- 工业类比:类似新能源汽车的简化主板架构(含电机驱动+电池管理系统)
- 性价比优势
- 成本对比:学习板价格远低于新能源汽车主板(几十万售价)
- 学习路径:
- 基础阶段:掌握STM32单片机开发
- 进阶应用:可改造为智能车控制系统
- 教学价值:通过硬件实践理解工业级控制原理
二、知识小结
分类维度 | 核心内容 | 技术参数/关键点 | 对比分析 |
产品型号 | STM32F103C8T6学习板 | • 兼容多种STM32芯片(如F103RC/ZET6) • 集成串口下载器+SWD仿真接口 • 支持四路电机驱动(可组四驱智能小车) | • C8T6 vs C6T6:闪存64KB vs 32KB • 引脚差异:36/48/64/100/144引脚可选 |
硬件功能 | 开发板扩展能力 | • 两路按键输入/指示灯输出 • 多传感器接口(PH2.0排针引出) • 集成LCD1602/蜂鸣器/舵机驱动 | • 与五幺开发板兼容:可升级核心板 • 新能源汽车主板类比:电机驱动+电池组 |
学习基础 | 必备知识 | • 电路基础:电阻/电容/三极管开关条件 • C语言能力:复杂系统开发经验 • 八位单片机(如MCS-51)经验(非必需) | • ARM vs ST分工:内核(ARM设计)与外设(ST设计) • 内核统一性:M3内核兼容M0/M4等 |
时钟系统 | STM32时钟树 | • 多时钟源:内部RC(8M)/外部晶振(4-16M) • 分频机制:USB(48M)、ADC(14M)、APB(72M) | • 外设时钟差异:看门狗(30kHz) vs 主频(72MHz) |
学习方法 | 实战建议 | 1. 配套开发板+视频教程 2. 重点学习芯片手册 3. 简单项目切入(如LED控制) 4. 蚂蚁搬家式学习(按需攻克模块) | • 低成本入门:C8T6开发板(约¥50) • 高阶拓展:ZET6(144引脚)适合复杂项目 |
型号对比 | STM32系列差异 | • 小容量:32KB闪存(C6T6) • 大容量:1MB闪存+多串口(ZET6) • 超低功耗:L0/L4系列 | • 内核一致性:均基于Cortex-M3 • 外设扩展性:引脚数决定功能上限 |
非常感谢您花时间阅读我的博客,希望这些分享能为您带来启发和帮助。期待您的反馈与交流,让我们共同成长,再次感谢!
👇热门内容👇
python使用案例与应用_安城安的博客-CSDN博客
软硬件教学_安城安的博客-CSDN博客
Orbslam3&Vinsfusion_安城安的博客-CSDN博客
网络安全_安城安的博客-CSDN博客
教程_安城安的博客-CSDN博客
python办公自动化_安城安的博客-CSDN博客
👇个人网站👇
安城安的云世界