STM32L072xx:超低功耗32位MCU的卓越之选

电子说

1.4w人已加入

描述

STM32L072xx:超低功耗32位MCU的卓越之选

在当今的电子设计领域,超低功耗、高性能的微控制器(MCU)一直是工程师们追求的目标。ST公司的STM32L072xx系列MCU以其出色的性能和丰富的功能,成为了众多应用场景的理想选择。本文将深入介绍STM32L072xx的特点、功能和应用,为电子工程师们提供全面的参考。

文件下载:STM32L072CZY6TR.pdf

一、引言

STM32L072xx系列MCU提供了10种不同的封装类型,引脚从32到100不等。根据所选设备的不同,包含了不同的外设集,适用于广泛的应用场景,如燃气/水表、工业传感器、医疗保健和健身设备、远程控制和用户界面、PC外设、游戏、GPS设备、报警系统、有线和无线传感器以及视频对讲机等。

二、设备概述

2.1 主要特性

STM32L072xx集成了通用串行总线(USB 2.0无晶振)的连接能力,以及高性能的Arm Cortex - M0+ 32位RISC内核,工作频率可达32 MHz。它还具备内存保护单元(MPU)、高速嵌入式存储器(高达192 Kbytes的Flash程序存储器、6 Kbytes的数据EEPROM和20 Kbytes的RAM),以及大量增强型I/O和外设。

2.2 超低功耗特性

该系列MCU通过多种内部和外部时钟源、内部电压自适应以及多种低功耗模式,实现了高功率效率。它提供了七种低功耗模式,包括睡眠模式、低功耗运行模式、低功耗睡眠模式、带RTC的停止模式、不带RTC的停止模式、带RTC的待机模式和不带RTC的待机模式,能够在低功耗、短启动时间和可用唤醒源之间实现最佳平衡。

三、功能概述

3.1 低功耗模式

  • 动态电压缩放:支持动态电压缩放,可根据系统的最大工作频率和外部电压供应调整内部低压降稳压器的电压,优化运行模式下的功耗。
  • 七种低功耗模式:不同的低功耗模式适用于不同的应用场景,例如睡眠模式下仅CPU停止,外设继续运行;低功耗运行模式通过设置多速内部(MSI)RC振荡器为低速时钟、从SRAM或Flash存储器执行代码以及将内部稳压器设置为低功耗模式来实现低功耗。

3.2 互连矩阵

多个外设直接互连,允许外设之间进行自主通信,节省CPU资源和功耗,并且这些硬件连接具有快速和可预测的延迟。

3.3 Arm Cortex - M0+内核与MPU

Cortex - M0+处理器是一款入门级32位Arm Cortex处理器,具有简单的架构、超低功耗、出色的代码密度、确定性的高性能中断处理、与Cortex - M处理器家族的向上兼容性以及集成的内存保护单元(MPU),提供了卓越的性能和安全性。

3.4 复位和电源管理

  • 电源供应方案:提供多种电源供应,包括外部主电源(VDD)、外部模拟电源(VDDA)和USB收发器电源(VDD_USB)。
  • 电源供应监控器:集成了零功耗上电复位(POR)/掉电复位(PDR)和欠压复位(BOR)电路,以及可编程电压检测器(PVD),可监控电源供应并在电压异常时产生中断。
  • 电压调节器:调节器有主(MR)、低功率(LPR)和掉电三种工作模式,分别适用于运行模式、低功耗运行/睡眠/停止模式和待机模式。

3.5 时钟管理

时钟控制器可将来自不同振荡器的时钟分配给内核和外设,支持时钟预分频、安全时钟切换和时钟门控,以降低功耗。系统时钟源可选择1 - 25 MHz的高速外部晶体(HSE)、16 MHz的高速内部RC振荡器(HSI)或多速内部RC振荡器(MSI);辅助时钟源可选择32.768 kHz的低速外部晶体(LSE)或37 kHz的低速内部RC(LSI);RTC时钟源可选择LSI、LSE或HSE;USB时钟源由48 MHz的时钟提供。

3.6 低功耗实时时钟和备份寄存器

实时时钟(RTC)和5个备份寄存器在所有模式(包括待机模式)下都能供电。RTC是一个独立的BCD定时器/计数器,具有日历功能、可编程闹钟、周期性唤醒、实时校正、参考时钟检测、数字校准、防篡改检测和时间戳等功能。

3.7 通用输入/输出(GPIOs)

每个GPIO引脚可通过软件配置为输出(推挽或开漏)、输入(带或不带上拉或下拉)或外设备用功能。大多数GPIO引脚与数字或模拟备用功能共享,并可通过专用备用功能寄存器单独重映射。所有GPIOs都具有高电流能力,输出速度可调节。

3.8 存储器

  • SRAM:20 Kbytes的嵌入式SRAM可在CPU时钟速度下以0等待状态进行读写操作。
  • 非易失性存储器:分为三个阵列,包括64、128或192 Kbytes的嵌入式Flash程序存储器、6 Kbytes的数据EEPROM和包含32个用户和工厂选项字节以及8 Kbytes系统存储器的信息块。Flash程序和数据EEPROM分为两个存储体,允许在一个存储体中写入数据的同时从另一个存储体运行代码或读取数据。
  • 防火墙:保护部分代码/数据不被受保护区域外执行的代码访问。
  • ECC功能:整个非易失性存储器嵌入了错误校正码(ECC)功能。

3.9 启动模式

启动时,通过BOOT0引脚和nBOOT1选项位选择三种启动选项:从Flash存储器启动、从系统存储器启动或从嵌入式RAM启动。

3.10 直接内存访问(DMA)

灵活的7通道通用DMA能够管理内存到内存、外设到内存和内存到外设的传输,支持循环缓冲区管理,避免了控制器到达缓冲区末尾时产生中断。

3.11 模数转换器(ADC)

内置一个12位(通过硬件过采样可扩展到16位)的模数转换器,具有多达16个外部通道和3个内部通道(温度传感器、电压参考)。ADC可在单触发或扫描模式下执行转换,频率独立于CPU频率,具有低功耗和自动关机功能,支持硬件过采样和模拟看门狗功能,可由DMA控制器服务。

3.12 温度传感器

温度传感器产生与温度线性变化的电压,内部连接到ADC_IN18输入通道。每个设备都经过ST的工厂校准,校准数据存储在系统存储器区域。

3.13 数模转换器(DAC)

两个12位缓冲DAC可将数字信号转换为模拟电压信号输出,支持多种功能,如数据保持寄存器、数据对齐、同步更新、噪声波和三角波生成、双DAC通道独立或同时转换、DMA能力、外部触发转换和输入参考电压等。

3.14 超低功耗比较器和参考电压

嵌入两个比较器,共享相同的电流偏置和参考电压。参考电压可以是内部或外部的,一个比较器具有超低功耗,另一个比较器具有轨到轨输入、快速或慢速模式。两个比较器都可以从停止模式唤醒设备,并可组合成窗口比较器。

3.15 触摸感应控制器(TSC)

提供了一种简单的解决方案,可在任何应用中添加电容感应功能,提供多达24个电容感应通道,分布在8个模拟I/O组中。

3.16 定时器和看门狗

  • 通用定时器:包括TIM2、TIM3、TIM21和TIM22,基于16位自动重载向上/向下计数器,具有不同的通道数和功能。
  • 低功耗定时器(LPTIM):具有独立时钟,在停止模式下也能运行,可从停止模式唤醒设备。
  • 基本定时器(TIM6、TIM7):可作为通用16位时基。
  • SysTick定时器:可作为操作系统的定时器或标准向下计数器。
  • 独立看门狗(IWDG):基于12位向下计数器和8位预分频器,由独立的37 kHz内部RC时钟驱动,可在停止和待机模式下运行。
  • 窗口看门狗(WWDG):基于7位向下计数器,可设置为自由运行,具有早期警告中断功能。

3.17 通信接口

  • I²C总线:多达三个I²C接口可在多主或从模式下运行,支持标准模式(Sm,高达100 kbit/s)、快速模式(Fm,高达400 kbit/s)和快速模式加(Fm+,高达1 Mbit/s),具有可编程的模拟和数字噪声滤波器,部分接口还支持SMBus 2.0和PMBus 1.1。
  • 通用同步/异步收发器(USART):四个USART接口能够以高达4 Mbit/s的速度通信,提供硬件流控制、多处理器通信模式、主同步通信和单总线半双工通信模式,部分接口还支持智能卡通信、IrDA SIR ENDEC、LIN主/从能力和自动波特率检测。
  • 低功耗通用异步收发器(LPUART):支持异步串行通信,具有最低功耗,支持半双工单总线通信和调制解调器操作,可从停止模式唤醒系统。
  • 串行外设接口(SPI)/内部集成声音(I²S):多达两个SPI接口可在主从模式下以高达16 Mbits/s的速度通信,支持硬件CRC生成/验证;一个标准I²S接口可在主或从模式下运行,支持16/32位分辨率的输入或输出通道。
  • 通用串行总线(USB):嵌入一个全速USB设备外设,符合USB 2.0规范,支持USB FS信号、嵌入式DP上拉和电池充电检测,具有软件可配置的端点设置和暂停/恢复支持。

3.18 时钟恢复系统(CRS)

可自动调整内部48 MHz振荡器,以保证其在整个设备工作范围内的最佳精度。

3.19 循环冗余校验(CRC)计算单元

用于使用可配置的生成多项式值和大小获取CRC码,可用于验证数据传输或存储的完整性。

3.20 串行线调试端口(SW - DP)

提供Arm SW - DP接口,允许串行线调试工具连接到MCU。

四、引脚描述

文档详细介绍了不同封装类型(如LQFP100、UFBGA100、LQFP64等)的引脚定义和备用功能,为硬件设计提供了重要的参考。

五、内存映射

内存映射的详细信息可参考产品系列参考手册,包括所有外设的边界地址。

六、电气特性

6.1 参数条件

包括最小和最大值、典型值、典型曲线、负载电容、引脚输入电压、电源供应方案和电流消耗测量等方面的参数。

6.2 绝对最大额定值

规定了设备的绝对最大额定值,超过这些值可能会对设备造成永久性损坏。

6.3 工作条件

包括一般工作条件、嵌入式复位和电源控制块特性、嵌入式内部参考电压、电源电流特性、低功耗模式唤醒时间、外部时钟源特性、内部时钟源特性、PLL特性、内存特性、EMC特性、电气灵敏度特性、I/O电流注入特性、I/O端口特性、NRST引脚特性、温度传感器特性、比较器特性、定时器特性和通信接口特性等。

七、封装信息

提供了不同封装类型(如LQFP100、UFBGA100、LQFP64等)的机械数据、推荐的PCB设计规则和设备标记示例,方便工程师进行硬件设计和组装。

八、订购信息

介绍了订购时的相关信息,包括设备系列、产品类型、设备子系列、引脚数量、Flash存储器大小、封装、温度范围、选项和包装等。

九、总结

STM32L072xx系列MCU以其超低功耗、高性能、丰富的外设和灵活的封装选项,为电子工程师提供了一个强大的解决方案。无论是在工业、医疗、消费电子还是其他领域,都能满足不同应用的需求。在设计过程中,工程师们可以根据具体的应用场景和需求,合理选择低功耗模式、时钟源、外设等,以实现最佳的性能和功耗平衡。同时,注意电气特性和封装信息,确保硬件设计的可靠性和稳定性。你在使用STM32L072xx进行设计时,遇到过哪些挑战呢?又是如何解决的呢?欢迎在评论区分享你的经验。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分