该器件支持多种功耗模式,以实现低功耗、短启动时间、可用外设和可用唤醒源之间的最佳折衷。
默认情况下,在系统或上电复位后,微控制器处于运行模式,范围1:
为了改善复位下的消耗,复位下和复位后的I/O状态为“模拟状态”(I/O斯密特触发器被禁用)。另外,当复位源为内部复位时,内部复位上拉不激活。
几个外围设备之间有直接连接。这允许在外设之间进行自主通信,从而节省CPU资源,从而降低电源消耗。此外,这些硬件连接允许快速和可预测的延迟。
根据外设的不同,这些互连可以在运行、睡眠、LPRun、LPSleep、停止0、停止1和停止2模式下运行。
以下不同的时钟源可以用来驱动系统时钟(SYSCLK):
复位启动后,MSI作为系统时钟源,配置为4MHz
设备有以下额外的时钟源:
每个时钟源可以在不使用时单独开启或关闭,以优化功耗。
几个预分频器可用于配置AHB频率(HCLK3/PCLK3,HCLK1),高速APB2(PCLK2)和低速APB1(PCLK1)域。
AHB(HCLK3、HCLK1)、PCLK1和PCLK2域的最大频率为48MHz。
大多数外设时钟都是从它们的总线时钟(HCLK、PCLK)派生而来,以下几种除外:
HSEM提供了一个基于16位寄存器的信号量。
信号量可用于确保内核上运行的不同进程之间的同步。
HSEM提供了一种非阻塞机制,以原子方式锁定信号量,提供以下功能:
每个GPIO引脚都可以通过软件配置为输出(推挽或开漏),输入(带或不带或上拉或下拉)或辅助功能。
大多数GPIO引脚与数字或模拟替代功能共享。由于它们在AHB总线上的映射,可以实现快速I/O切换。
如果需要,可以按照特定的顺序锁定I/O复用功能配置,以避免对I/O寄存器进行虚假写入。
DMA(直接存储器访问)用于在外设和存储器之间以及存储器到存储器之间提供高速数据传输。
数据可以通过DMA快速移动,而无需任何CPU操作。这样可以为其它操作保留空闲的CPU资源。
DMA控制器总共有14个通道。
一个完整的交叉矩阵允许具有DMA支持的外设映射到任何可用的DMA通道上。每个DMA通道都有一个仲裁器,用于处理DMA请求之间的优先级。
DMA主要特性如下:
DMAMUX1用于将具有DMA源支持的外设路由到任何DMA通道。
该设备嵌入了一个能够管理16个优先级的NVIC,并处理多达62个可屏蔽中断通道上追加Cortex-M4的16条中断线。
NVIC的好处如下:
NVIC硬件块以最小的中断延迟提供灵活的中断管理功能。
EXTI通过可配置和直接的事件输入来管理唤醒。
它向电源控制提供唤醒请求,并向CPU NVIC生成中断请求和向CPU事件输入生成事件。
可配置事件/中断来自能够产生脉冲的外设,并允许在事件/中断触发边缘和软件触发之间进行选择。
直接事件/中断来自具有自己的清除机制的外设。
CRC计算单元用于从8位、16位或32位数据字和生成多项式中获得CRC码。
在其它应用中,基于CRC的技术用于验证数据传输或存储的完整性。
在功能安全校准的范## 标题围内,它们提供了一种验证闪存完整性的方法。
本机12位ADC嵌入到器件中。
它可以通过硬件采样扩展到16位分辨率。
ADC有多达12个外部通道和4个内部通道(温度传感器、参考电压、VBAT监控、DAC输出)。
ADC在单镜头或扫描模式下执行转换。在扫描模式下,对一组选定的模拟输入进行自动转换。
ADC频率独立于CPU频率,即使在CPU速度较低的情况下,也允许最大采样率位~2Msps。自动关断功能保证ADC除主动转换阶段外处于断电状态。
ADC可以由DMA控制器提供服务。它可以在整个VDD供电范围内运行。
ADC具有多达256个采样的硬件过采样器,将分辨率提高到16位。参考应用说明通过过采样(AN2668)提高STM32F1系列、STM32F3系列和STM32Lx系列ADC分辨率。
模拟看门狗能允许非常精确地监测一个,一些或所有扫描通道的转换电压。当转换电压超出程序设定的阈值时,就会产生中断。
由通用定时器(TIMx)生成的事件可以在内部连接到ADC启动触发器,以允许应用程序与定时器同步A/D转换。
温度传感器(TS)产生随温度线性变化的VTS电压。
温度传感器内部连接ADC VIN输入通道,将传感器输出电压转换为数字值。
传感器提供良好的线性,但它必须校准,以获得良好的整体精度的温度测量。由于温度传感器的偏移量可能因工艺变化而异,因此未校准的内部温度传感器仅适用于相对温度测量。
为了提高温度传感器的精度,每个部件都由ST单独进行工厂校准。结果校准数据存储在设备工程字节中,可在只读模式下访问。
VREFINT为ADC和比较器提供稳定的(带隙)电压输出。VREFINT内部连接ADC VIN[13]输入通道。
该设备嵌入了一个真正的RNG,可提供由集成模拟电路生成的32位随机数。
RNG是一个真正的随机数生成器,它为应用程序提供32位样本的全熵输出。它由一个活熵源(模拟)和一个内部调节组件组成。
AES加密或解密数据,使用完全符合FIPS(联邦信息处理标准)第197号出版物中定义的高级加密标准(AES)的算法和实现。
支持多种链模式(ECB,CBC,CTR,GCM,GMAC,CCM),密钥大小为128或256位。
AES支持传入和传输数据的DMA传输(需要两个DMA通道)。
PKA用于计算加密公钥原语,特别是与RSA (Rivest, Shamir和Adleman), Diffie-Hellmann或ECC(椭圆曲线加密)在GF§(伽罗瓦域)上相关的原语。这些操作在Montgomery域中执行。
这些器件包括一个高级16位定时器,一个通用32位定时器,两个16位基本定时器,三个低功耗定时器,两个看门狗定时器和一个SysTick定时器。
高级控制定时器TIM1可以看作是两个通道上的三相PWM多路复用。
每个通道具有可编程插入死区时间的互补PWM输出。每个通道也可以看作是完整的通用计时器。
4个独立通道可用于:
在调试模式下,TIM1计数器可以冻结,PWM输出被禁用,以关闭由这些输出驱动的任何电源开关。
许多特性与使用相同体系结构的通用计时器(将在下一节中描述)共享。然后,TIM1可以通过外设互连矩阵与TIM2一起工作,用于同步或事件链。
每个通用定时器可用于产生PWM输出,或作为一个简单的时基。
定时器2主要特点:
定时器16和定时器17的主要特点: