![4e08720187ea1a3e7edd34354d6325aa.png](https://i-blog.csdnimg.cn/blog_migrate/94f8a5cdeda01c21772de60eb08c8637.png)
上一节,我们完成了STM32单片机开发环境的搭建,本节我们正式学习STM32单片机,编程语言的学习,通常是从第一个"hello world"开始,而点灯实验便是单片机学习的开始。
一基础知识
1. STM32最小系统简介
一个最小的STM32系统,需要有单片机、电源电路、晶振电路、复位电路、启动电路、调试电路组成,这几部分存在就可以使STM32正常工作。
(1) STM32F103C8T6
ARM的Cortex-M3处理器是最新一代的嵌入式ARM处理器,它为实现MCU的需要提供了低成本的平台、缩减的引脚数目、降低的系统功耗,同时提供卓越的计算性能和先进的中断系统响应。
ARM的Cortex-M3是32位的RISC处理器,提供额外的代码效率,在通常8和16位系统的存储空间上发挥了ARM内核的高性能。
(2) 电源电路
和STC89C52单片机5V供电不同,STM32需要3.3V电压供电,直接输入的电压不太稳定性,需要电路稳压,同时点亮LED1,可以通过LED1的亮灭初步观察系统运行情况,正常运行情况,LED1常亮。
使用稳压芯片,将USB输入的5V电压转换为STM32需要的3.3V电压
LED1电路如下,插上Micro USB线后即可点亮
(3) 复位电路
单片机有一个RESET引脚,只需要将此引脚保持一段时间低电平即可复位STM32单片机,当按键按下瞬间,RESET电平为低电平,复位STM32单片机,之后C2开始充电,C2电源不断上升,R2两端电压不断下降,当C2两端电压达到3.3V时,充电结束,此时RESET引脚变为高电平,单片机进入正常工作状态,复位完成。
注意:51单片机是高电平复位,STM32是低电平复位
(4) 晶振电路
上图中有两个晶振,一个是8MHz,另一个是32.768KHz,8M晶振的作用是为最小系统提供最基本的时钟信号,方便倍频,一般STM32F103系列正常使用过程需要倍频到72MHz。32.768KHZ晶振经过15次分频后可以得到1HZ的频率(原因是32768 = 2^15),可以实现精准定时,用于精准计时电路,比如作为万年历。
(5) boot启动电路
启动方式如下表所示:
BOOT0 |
BOOT1 |
启动方式 |
0 |
x |
从主闪存存储器启动 |
1 |
0 |
从系统存储器启动 |
1 |
1 |
从内置SRAM启动 |
(6) 调试接口电路
本系列教程使用STM32F103C8T6核心板,其调试接口电路采用JLink SWD方式进行