STM32功能
STM32学习需要了解数据手册,Datasheet
STM32内部核心功能
- ARM内核
- ARM32位 Cortex-M3,最高72MHz工作频率
- 在存储器的0等待周期访问时可达1.25DMIPS/MHz
- 单周期乘法,除法
- 存储器
- 64KB128KB的flash,断电可记忆(存放程序
- 高达20KB的SRAM(运行程序
- 时钟
- 内嵌出厂调校的8MHz的系统时钟
- 内嵌带校准功能的40kHz RC振荡器
- 外部高速晶振 系统时钟,使用对时钟精度需求高的场合
- 外部低速晶振 RTC
振荡器 RC振荡器和晶体振荡器。
名称 | 缩写 | 频率 | 外部连接 | 功能 | 用途 | 特性 |
外部高速晶体振荡器 | HSE | 4~16MHz | 4~16MHz晶体 | 系统时钟/RTC | 成本高,温漂小 | |
外部低速晶体振荡器 | LSE | 32kHz | 32.768kHz晶体 | 带校准功能 | RTC | 成本高,温漂小 |
内部高速RC振荡器 | HSI | 8MHz | 无 | 经出厂调校 | 系统时钟 | 成本低,温漂大 |
内部低速RC振荡器 | LSI | 40kHz | 无 | 带校准功能 | RTC | 成本低,温漂大 |
方波主要靠R和C产生,R和C的值决定了方波频率,RC振荡器
晶体产生一定频率的振荡器电路叫晶体振荡器。
分频器PLL锁相环电路
4.复位
电/断电复位(POR/PDR)、可编程电压监测器(PVD)
上电复位,可编程的电压监控器
复位是核心功能的一部分,复位功能已经内置于单片机中。复位功能的作用是让RAM中的数据清空,让所有连接到复位的相关功能都回到初始状态。 上电之后如果没有复位,所有功能都会处于无序状态。在STM32中有一个供电监控器,能检测外部电源的电压,当电压低于2V时,监控器会让单片机复位。 当高于2V时监控器让单片机进入工作状态,电压从0V到3.3V的过程中,单片机会复位,不需要外界电路。 还有一种复位方法是在单片机复位引脚接开关接地。
5.电源管理
电源管理是对单片机外界电源处理、分配的功能。电源主要分成四个部分,分别是备用电源输入、端口输入/输出、逻辑电源输入和模拟电源输入。
逻辑电源输入,这是单片机最基本的供电输入段楼。给这接口输入2~3.6V的直流电压,就能让ARM内核、存储器、I/O端口和其他纯数字电路工作了。
模拟电源输入的电压是用在模数转换器ADC、RC振荡器和PLL倍频等模拟电路上的。
备用电源输入是一个独立的存在,专门给实时(RTC)供电,以保证在逻辑电源断开后依然让RTC保持走时。
2.0V~3.6V 3.3V常用电源稳压芯片
STM32内部重要功能
1. 低功耗模式
- 睡眠模式 只关掉ARM内核,其他工作正常,不怎么省电。相当于电脑只有CPU不工作了,移动一下鼠标就可以唤醒。睡眠模式唤醒之后,代码从睡眠模式进入的下一条语句执行。
- 停机待机 将ARM与几乎所有的内部功能,包括外部高速晶体振荡器和PLL都关掉了,只有RTC、看门狗定时器,中断控制器在工作,知识还能接收中断,SRAM中的数据还保存。
唤醒的方式是外部中断、RTC的闹钟还有USB接口唤醒,除此之外再没有能恢复的方式,因为所有的内部功能都被关掉了,时钟电路都不工作了。 - 待机模式 最省电的也是待机模式。他和停机模式的区别是把ARAM和外部中断控制器也关掉了,用户运行的数据消失,也就表示唤醒后必须从头开始,相当于复位。
唤醒的方式是按复位按键、看门狗定时器复位、专用唤醒引脚和RTC闹钟唤醒。复位按键和专用唤醒引脚完全不耗电,看门狗定时器算是唯一需要红点的。待机模式相当于PC的关机,只有按电源按钮才会复位启动。
Vbat为RTC和后备寄存器供电
模式 | 关掉功能 | 唤醒方式 |
睡眠模式 | ARM内核 | 所有内部、外部功能的中断/事件 |
停机模式 | ARM内核、内部所有功能、PLL、HSE | 外部中断输入接口EXIT(16个IO端口之一)、电源电压监控中断PVD、RTC闹钟到时、USB唤醒信号 |
待机模式 | ARM内核、内部所有功能、PLL、HSE、SRAM内容消失 | NRST接口的外部复位信号、独立看门狗IWDG复位、专用唤醒WKUP引脚、RTC闹钟到时 |
- 模数转换器ADC
STM32F103xx内嵌2个12位ADC,每个ADC共用多达16个外部通道(采集数据),可以实现单次或扫描转换。在扫描模式下,自动进行在选定的一组模拟输入
ADC逻辑功能
可以使用DMA操作。 - DMA
7通道DMA控制器
支持的外设:定时器、ADC、SPI、I2C和USART
每个通道都有专门的硬件DMA请求逻辑,同时可以由软件触发每个通道:传输的长度、传输的源地址和目标地址都可以通过软件单独设置 - I/O端口
多达80个IO端口
26/37/51/80,所有IO口可以看到映像到16个外部中断;几乎所有的端口都可以兼容5V信号
STM32内部通信功能
5. 调试模式
SWD和JTAG
JTAG五线SWD两线
6. 定时器,看门狗定时器,嘀嗒定时器
3个普通定时器1个高级定时器
2个看门狗定时器,系统时间定时器
标准定时器TIM1 TIM2 TIM3
高级定时器TIM4看门狗定时器
独立看门狗和窗口型看门狗
嘀嗒定时器
RTOS
STM32通信功能
- I2C
串行同步接口 - USART
串行异步 - SPI
串行同步 - CAN
串行同步 - USB
串行同步 - CRC校验和芯片ID
补充
中断处理
自举模式
总结