基于STM32的简易数字电压表
基于STM32和ICL7135的数字电压表设计

基于STM32和ICL7135的数字电压表设计数字电压表是一种测量电压大小的仪器,它可以将测量到的电压值用数字显示出来。
在本设计中,我们将使用STM32微控制器和ICL7135电压测量芯片来构建一个基于数字电压表。
整个系统的设计需要以下几个主要部分:电压测量电路、模拟到数字转换电路(ADC)、微控制器电路和显示电路。
我们需要设计电压测量电路。
在这个电路中,我们引入了一个ICL7135电压测量芯片。
ICL7135是一款高精度、低功耗的电压测量芯片。
它通过输入电压的变化来改变其输出的频率,从而将电压测量转换为频率测量。
在这个设计中,我们将使用ICL7135来测量电压并将其转换为模拟信号。
接下来,我们需要设计模拟到数字转换电路(ADC)。
ADC可以将ICL7135输出的模拟信号转换为数字信号。
在这个设计中,我们将使用STM32微控制器内部的ADC模块来完成这个转换。
我们需要设计显示电路。
在这个电路中,我们将使用数码管来显示测量到的电压值。
数码管上的每个数字由多个LED组成,通过控制每个LED的开关,可以显示任意数字。
在整个设计过程中,我们需要考虑到的一些关键问题包括:电源供应、输入电阻、参考电压等。
电源供应是保证整个系统正常工作的关键因素,我们需要选择合适的电源来提供所需的电压和电流。
输入电阻是影响电压测量精度的重要因素,我们需要选择合适的电阻值来保证测量结果的准确性。
参考电压是ADC转换的基准电压,我们需要选择合适的参考电压来保证转换的准确性。
基于STM32和ICL7135的数字电压表设计包括电压测量电路、模拟到数字转换电路、微控制器电路和显示电路。
通过合理地设计和选择各个部分的元件和参数,我们可以实现一个高精度、稳定的数字电压表。
我们还需要关注电源供应、输入电阻、参考电压等关键问题,以保证整个系统正常工作和测量精确性。
基于单片机的简易数字电压表设计

课程设计报告题目:基于单片机的简易数字电压表设计学生姓名:学生学号:系别:专业届别:指导教师:基于单片机的简易数字电压表设计1、绪论智能仪器是仪器仪表的一种,近年来计算机技术及微电子器件在工程技术中应用十分广泛,在此基础上发展起来的智能仪表无论是在测量的准确性、灵敏度、可靠性、自动化程度、运用功能方面还是在解决测量技术与控制技术问题的深度及广度方面都有了很大的发展,以一种崭新的面貌展示在人们的面前。
数字电压表是在此基础上发展起来,并被广泛的应用。
数字电压表(Digital Voltmeter)简称DVM,它是智能仪器中最常见的,是采用数字化测量技术,把连续的模拟量(直流输入电压)转换成不连续、离散的数字形式并加以显示的仪表。
目前,由各种单片A/D 转换器构成的数字电压表,已被广泛用于电子及电工测量、工业自动化仪表、自动测试系统等领域,显示出强大的生命力。
与此同时,由DVM扩展而成的各种通用及专用数字仪器仪表,也把电量及非电量测量技术提高到崭新水平数字电压表的特点:显示清晰直观,读数准确;传统的模拟式仪表必须借助于指针和刻度盘进行读数,在读数过程中不可避免地会引入人为的测量误差(例如视差),并且容易造成视觉疲劳。
数字电压表则采用先进的数显技术,使测量结果一目了然,只要仪表不发生跳数现象,测量结果就是惟一的,不仅保证读数的客观性与准确性,还符合人们的读数习惯,能缩短读数和记录的时间。
2.工具与开发平台2.1 开发软件Keil C51 uVision2Keil uVISION2 是众多单片机应用开发软件中优秀的软件之一,它支持众多不同公司的MCS-51 架构的芯片,它集编辑,编译,仿真等于一体,同时还支持、PLM、汇编和C语言的程序设计,界面友好,易学易用,在调试程序,软件仿真方面也有很强大的功能。
Keil C51集成开发环境主要由菜单栏、工具栏、源文件编辑窗口、工程窗口和输出窗口五部分组成。
工具栏为一组快捷工具图标,主要包括基本文件工具栏、建造工具栏和调试工具栏,基本文件工具栏包括新建、打开、拷贝、粘贴等基本操作。
基于STM32和ICL7135的数字电压表设计

基于STM32和ICL7135的数字电压表设计本文主要介绍了一种基于STM32和ICL7135的数字电压表设计。
该电压表可以测量0-30V电压范围,精度为0.1V,并且具有过压保护功能。
该设计采用STM32作为控制器和ICL7135作为ADC芯片,通过精准采样和处理电压信号来实现精确的测量。
设计硬件部分本设计主要采用以下硬件组成:1. STM32F103C8T6开发板:作为控制器,用于采集电压信号,处理数据,并对显示模块进行控制。
2. ICL7135芯片:作为ADC芯片,用于精确采集电压信号。
3. 电感式电压分压器:用于将高压输入信号分压为低压信号,以保证ICL7135芯片测量范围内的测量精度。
4. 三位数码管:用于显示电压值。
5. 按钮开关:用于控制设备开关机和重新设置操作。
6. 其他外围元件:例如电池和连接线等。
1. 电路原理电路原理如图1所示。
当高压信号进入电感式电压分压器后,被分压为低压信号。
ICL7135芯片通过精确采样,将电压信号转换为数字信号。
然后STM32控制器通过SPI接口读取数字信号,对其进行处理并将其转换为可供显示的数码管信号。
最后,数码管显示电压值。
2. 程序原理程序原理如下:(1) 初始化控制器和ADC芯片:设置STM32控制器相关端口和ICL7135芯片的相关参数,以确保准确测量电压值。
(2) 读取电压值:通过ICL7135芯片采样高压信号,然后通过精密计算获得真实电压值。
(3) 处理电压值:将电压值转换为数码管可显示的值,即通过处理模块将压力数据整合至四个字节,然后通过SPI接口将数据写入至三位数码管。
(4) 显示电压值:通过数码管将电压值以数字形式显示出来。
该电路的布局可以根据实际情况进行调整,但是需要注意以下几点:(1) STM32控制器的电路板应尽量简单。
(2) 电感式电压分压器应接近输入信号的位置,以保证信号精度。
(3) 数码管和按键应便于操作。
(4) 线路布局应合理,电磁干扰应尽量避免。
基于STM32和ICL7135的数字电压表设计

基于STM32和ICL7135的数字电压表设计一、引言数字电压表是电子技术领域中常见的测量仪器,用于测量电路中的电压值。
随着科技的不断发展,数字电压表逐渐取代了传统的模拟电压表,成为实验室和工程师必备的测量工具。
基于STM32和ICL7135的数字电压表设计,具有精准的测量能力、可编程性强、数据处理速度快等优点,被广泛应用于各种领域。
二、STM32介绍STM32是STMicroelectronics公司推出的一系列基于ARM Cortex-M内核的32位单片机,广泛应用于工业控制、通信、汽车电子等领域。
STM32系列单片机具有丰富的外设、低功耗、高性能等特点,适合用于数字电压表的设计中。
三、ICL7135介绍ICL7135是美国Intersil公司生产的一款精密数字A/D转换器,具有16位精度、4½位显示能力、3.5位/秒的转换速率等特点。
ICL7135广泛应用于仪器仪表、电能表、工业控制等领域,是设计数字电压表的理想芯片之一。
1. 系统框图基于STM32和ICL7135的数字电压表主要由STM32单片机、ICL7135芯片、显示模块、按键模块等组成,系统框图如下图所示。
```(插入系统框图)```2. 系统设计(1)STM32与ICL7135的连接将ICL7135的数字输出端与STM32的GPIO口连接,用于传输A/D转换后的数据;将ICL7135的模拟输入端与待测电压相连接,用于进行电压测量;将ICL7135的控制端与STM32的GPIO口连接,用于控制ICL7135的工作模式。
通过这样的连接方式,实现了STM32与ICL7135的数据交换和控制。
(2)数字显示模块设计数字显示模块采用LED数码管进行显示,由驱动芯片控制LED数码管的显示。
通过STM32的GPIO口与LED驱动芯片连接,实现对LED数码管的驱动和控制。
(3)按键输入模块设计按键输入模块用于设置测量范围、校准电压表、切换工作模式等操作。
基于单片机的简易数字电压表设计

基于单片机的简易数字电压表设计随着电子技术的迅猛发展,数字电压表在实验室、工业和日常生活中的应用越来越广泛。
本文将详细介绍基于单片机的简易数字电压表的设计过程,包括系统设计思路、硬件选型、软件实现以及调试过程。
设计一个简易数字电压表的目标是实现对直流电压的实时测量,并将其以数字形式显示。
该系统的核心是单片机,它负责数据采集、处理及结果显示。
选用单片机的原因在于其体积小、成本低、易于编程等优点。
在硬件设计方面,系统主要由输入电路、单片机、显示模块和电源模块组成。
输入电路的作用是将待测电压信号转化为单片机可处理的电信号。
一般采用分压电路,通过电阻分压的方法,将高电压降低至单片机的可接受范围。
还需考虑输入电压的范围,以确保测量精度和系统安全。
选用的单片机需具备一定的模拟输入功能,以便对电压进行采样。
常用的单片机型号有51系列、AVR系列及STM32系列等,其中STM32系列因其较高的性能和丰富的外设而受到广泛关注。
在设计中,应根据具体需求选择合适的单片机,并进行必要的引脚配置。
显示模块的选择是系统设计的重要环节,常用的有液晶显示屏(LCD)和七段数码管。
液晶显示屏具有显示内容丰富、可视角度广等优势,但其功耗相对较高。
而七段数码管则以其简洁明了的特性广泛应用于数字电压表中。
在本设计中,建议使用LCD显示模块,以便于显示多位数值及相关信息。
电源模块的设计需确保系统的稳定运行。
一般采用稳压电源,为单片机及其他外设提供稳定的电压供应。
需考虑电源的功耗及散热问题,确保系统在长期工作中不会出现故障。
数据处理模块是整个系统的核心,其主要任务是将采集到的模拟电压信号转换为相应的数字值。
可采用模数转换(ADC)技术,将模拟信号转换为数字信号,并进行必要的线性化处理。
处理过程中,应考虑量化误差及噪声对测量结果的影响。
数据显示模块负责将处理后的电压值通过LCD显示出来。
在这一过程中,需要对显示内容进行格式化,以确保信息的清晰易读。
STM32应用——电压表

1、目的(1)了解EK-STM32F仿真学习套件中各部分模块的功能结构。
(2)学习运用IAR Systems EW ARM集成开发环境进行软件编程调试,并能够把程序通过USB下载到仿真学习开发板的内嵌仿真器模块,运行程序,完成相应的功能。
(3)了解学习开发板的编程结构,能够自己动手编写实现一定功能的程序,并测试。
(4)培养对软、硬件的学习兴趣,并为后续相关的课程打一定的基础。
2、内容和要求(1)内容利用EK-STM32F学习开发板实现A/D信号采样。
(2)要求①将一模拟电压信号输入到A/D转换器的任一通道。
②A/D转换器将输入的模拟电压值转换成数字量。
③根据学习开发板所用A/D转换器的类型,将转换成的数字量通过一定的算法转换成相应的电压值。
④将转换成电压值通过学习开发板上的LCD显示屏进行显示,要求显示两位小数。
3.过程(如实际程序开发、电子制作,详细说明有关原理、开发过程、调试过程、结果)(1)实现A/D采样的硬件框图(2)实际电路连接引脚图①图1所示为模拟直流电压的采样电路,通过调节可变电阻VR1即可改变端口ANALOG的直流电压值,电压值的变化范围为0 – 3.4V。
图1②图2所示是MCU引脚图的部分截图,从图中可见采样得到模拟直流电压通过GPIOC.0端口输入到A/D转换器的第十通道。
图2③图3,图4所示分别是MCU与LCD数码管选通控制引脚(COM)和数码管段(SEG)的控制连接情况。
图3图4④图5所示是LCD的引脚图(4)具体编程过程主要的程序在main.c文件中进行编写,mian.c文件需要包含stm32f10x_lib.h头文件,stm32f10x_lib.h中包含所有外围模块的头文件,这是唯一需要在用户应用程序中引用的文件,它作为库的接口;另外还需包含lcd.h头文件,因为功能的实现需要LCD显示,需要对LCD进行编程。
Main主函数体中的具体程序编写:①RCC_Configuration();此函数实现系统时钟的初始化,为功能实现所需各模块提供需要的时钟频率,使各模块能正常工作。
基于STM32和ICL7135的数字电压表设计

基于STM32和ICL7135的数字电压表设计简述数字电压表是一种检测电压大小的仪器,常用于电子产品的测试和维修。
本文将介绍一种基于STM32和ICL7135的数字电压表的设计,该电路具有精度高、稳定性好等优点,能够满足各种应用场合的需要。
主要原理STM32 是一种高性能的单片机,具有 32 位的处理能力和多个片内外设,可用于各种嵌入式系统。
ICL7135 是一种高精度的模数转换器,能够将模拟信号转换为数字信号。
本电路采用 STM32 作为主控制器,通过 ICL7135 芯片实现电压的模数转换。
电路设计1. STM32 控制电路本电路采用 STM32F103C8T6 作为主控制器,其主要特点如下:(1)内置 64kb 闪存,20kb SRAM。
(2)集成了多个片内外设,如 A/D 转换器、串口、定时器等。
(3)工作电压范围广,可支持 2.0V~3.6V 电压。
(4)具有 32 位的处理能力,能够处理大量的数据。
(5)易于编程,支持多种编程语言和软件开发环境。
2. ICL7135 模数转换电路3. 电源电路本电路采用 LM7805 作为电源稳压芯片,将输入电压稳定在 5V 左右,供给 STM32 和 ICL7135 等芯片使用。
4. 显示屏电路本电路采用带背光的 16x2 字符型液晶显示屏,能够显示电压值、电压单位等信息。
显示屏的控制电路采用 74HC595 芯片,通过串口与 STM32 进行通信,实现数据的输入和输出。
电路测试进行电路测试之前,需要进行相应的电路布局和焊接,确保电路连接正确、无短路和失焊等问题。
测试时,需要将电压表的输入端连接到待测试的电路上,然后通过 STM32 控制程序实现电压测量和显示。
本电路的测试结果表明,在合适的电压输入下,能够实现高精度的数字电压测量和显示,其误差范围在0.1%以内,具有较好的稳定性和可靠性。
同时,该电路还具有多种保护功能,如过流保护、过压保护等,能够保障使用安全。
基于STM32的数字电压表的设计.

华南理工大学广州学院题目:基于STM32的数字电压表的设计姓名:学号:系别:班级:指导老师:完成时间:一、设计目的1. 培养综合运用所学知识、独立分析和解决实际问题的能力,培养创新意识和创新能力,并获得科学研究的基础训练。
2. 掌握AD转换的基础知识,学习基于DMA专递方式的ADC采集软件的编制及控制流程。
3. 通过软硬件设计实现数字电压表的功能。
二、设计内容1、将一模拟电压信号输入到A/D转换器的任一通道。
2、A/D转换器将输入的模拟电压值转换成数字量。
3、根据学习开发板所用A/D转换器的类型,将转换成的数字量通过一定的算法转换成相应的电压值。
4、将转换成电压值通过学习开发板上的LCD显示屏进行显示,要求显示一位小数。
三、设计原理1、A/D变换原理◆采样:间隔一定时间对信号进行采样,用信号序列来代替原来时间上连续的信号。
均匀采样:可完整地恢复原始信号,其中,T为采样时间间隔,fs表示采样频率,fm表示原始信号最大频率。
◆量化:把采集到的数值送到量化器编码成数字形式,每个样值代表一次采样所获得的信号的瞬时幅度。
A/D转换器一般为标量均匀量化。
(量化还可分为:标量量化、矢量量化)量化误差(与舍入方式相关):1LSB或1/2LSB◆编码:A/D模拟/数字转换器一般采用二进制编码,A/D变换后的结果到此可以表示为一个以0、1二进制形式表示的比特流,单位时间内可以传输的二进制比特速率就是A/D之后的码速率,数值上等于采样频率与量化比特数值之乘积。
二进制编码:量化与字长的关系。
3、ADC的A/D转换方式2、ADCSTM32163STM32果准确度下降。
4、STM32将ADC的转换分为2个通道组:规则通道组和注入通道组。
规则通道相当于运行的程序,而注入通道就相当于中断。
在程序正常执行的时候,中断是可以打断程序正常执行的。
同这个类似,注入通道的转换可以打断规则通道的转换,在注入通道被转换完成之后,规则通道才得以继续转换。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《嵌入式系统》课程设计报告题目: 基于STM32的简易数字电压表专业:网络工程 班级:网络工程12(1) :卢东亚 指导教师:康 成绩:计 算 机 学 院2015年 5 月 22日2014-2015学年 第二学期目录1. 设计容及要求 (1)1.1. 设计容 (1)1.2. 设计要求 (1)2. 概要设计 (2)2.1. 硬件电路 (2)2.2. 实验板中的连线图 (2)2.3. STM32介绍 (3)2.4. 主要函数说明 (8)3. 设计过程或程序代码 (10)3.1. 设计过程 (10)3.2. 程序代码 (12)4. 设计结果与分析 (16)参考文献 (17)1.设计容及要求1.1.设计容本文以ARM系列的STM32芯片为核心设计了一个简易数字电压表。
简易数字电压表采用模数转换思想来实现,通过硬件电路和软件程序相结合,可输出自定义测量电压,通过调节模数转换电位器使在一定围可任意改变。
输出的电压格式和精度的改变通过软件控制,输出电压的大小的改变通过硬件实现。
介绍了的生成原理、硬件电路和软件部分的设计原理。
该简易数字电压表具有体积小、价格低、性能稳定、功能齐全的优点。
1、将一模拟电压信号输入到A/D转换器的任一通道。
2、A/D转换器将输入的模拟电压值转换成数字量。
3、根据学习开发板所用A/D转换器的类型,将转换成的数字量通过一定的算法转换成相应的电压值。
4、将转换成电压值通过学习开发板上的LCD显示屏进行显示,要求显示一位小数。
1.2.设计要求利用STM32F103部A/D及2.8寸TFT液晶屏,设计完成一个数字电压表。
要求:数字电压表可测量0-5V输入电压,电压值通过液晶屏显示。
工作原理及设计思路:简易数字电压表的设计由A/D转换.数据处理及显示控制等组成。
利用STM32F103部A/D转换器将模拟电压转换成数字量,经STM32F103计算将数字量转换成对应的电压值,并通过液晶屏输出。
数字电压表的基本组成部分是A/D变换器+电子计数器。
通常,被测直流电压经A/D转换器变为与之成正比的闸门时间,在此闸门时间计数,用数字显示被测电压值。
可见A/D变换器是DVM的核心部件。
本课设上采用的是单片A/D转换器(含模拟电路与数字电路)集成在一片芯片上,配以LCD或LED数字器件后能显示A/D转换结果的集成电路。
它们均属于大规模的集成电路,能以最简的方式构成DVM。
在此采用ICL7106A/D转换器。
但由于STM32F103部集成了A/D转换器,所以不需要外围的A/D转换器,这就体现了STM32得集成特性。
2.概要设计2.1.硬件电路设计的核心STM32嵌入式处理器的硬件电路如图1所示图1 STM32嵌入式处理器的硬件电路2.2.实验板中的连线图连线图如图2所示。
图2 硬件连接图。
2.3.STM32介绍STM32F103xx增强型系列使用高性能的ARM Cortex-M3 32位的RISC核,工作频率为72MHz,置高速存储器(高达128K字节的闪存和20K字节的SRAM),丰富的增强I/O端口和联接到两条APB总线的外设。
所有型号的器件都包含2个12位的ADC、3个通用16位定时器和一个PWM定时器,还包含标准和先进的通信接口:多达2个I2C和SPI、3个USART、一个USB和一个CAN。
STM32F103xx增强型系列工作于-40°C至+105°C的温度围,供电电压2.0V至3.6V,一系列的省电模式保证低功耗应用的要求。
完整的STM32F103xx增强型系列产品包括从36脚至100脚的五种不同封装形式;根据不同的封装形式,器件中的外设配置不尽相同。
下面给出了该系列产品中所有外设的基本介绍。
这些丰富的外设配置,使得STM32F103xx增强型微控制器适合于多种应用场合:●电机驱动和应用控制●医疗和手持设备● PC外设和GPS平台●工业应用:可编程控制器、变频器、打印机和扫描仪●警报系统,视频对讲,和暖气通风空调系统ARM®的Cortex™-M3核心并嵌闪存和SRAM ARM的Cortex-M3处理器是最新一代的嵌入式ARM处理器,它为实现MCU的需要提供了低成本的平台、缩减的管脚数目、降低的系统功耗,同时提供卓越的计算性能和先进的中断系统响应。
ARM 的Cortex-M3是32位的RISC处理器,提供额外的代码效率,在通常8和16位系统的存储空间上得到了ARM核心的高性能。
STM32F103xx增强型系列拥有置的ARM核心,因此它与所有的ARM工具和软件兼容。
图一是该系列产品的功能框图。
置闪存存储器●高达128K字节的置闪存存储器,用于存放程序和数据。
置SRAM 多达20K字节的置SRAM,CPU能以0等待周期访问(读/写)。
嵌套的向量式中断控制器(NVIC) STM32F103xx增强型置嵌套的向量式中断控制器,能够处理多达43个可屏蔽中断通道(不包括16个 Cortex-M3的中断线)和16个优先级。
●紧耦合的NVIC能够达到低延迟的中断响应处理●中断向量入口地址直接进入核心●紧耦合的NVIC接口●允许中断的早期处理●处理晚到的较高优先级中断●支持中断尾部功能●自动保存处理器状态●中断返回时自动恢复,无需额外指令开销该模块以最小的中断延迟提供灵活的中断管理功能。
外部中断/事件控制器(EXTI) 外部中断/事件控制器包含19个边沿检测器,用于产生中断/事件请求。
每个中断线都可以独立地配置它的触发事件(上升沿或下降沿或双边沿),能够单独地被屏蔽;有一个挂起寄存器维持所有中断请求的状态。
EXTI可以检测到脉冲宽度小于部APB2的时钟周期。
多达80个通用I/O 口连接到16个外部中断线。
时钟和启动系统时钟的选择是在启动时进行,复位时部8MHz的RC振荡器被选为默认的CPU时钟,随后可以选择外部的、具失效监控的4~16MHz时钟;当外部时钟失效时,它将被隔离,同时会产生相应的中断。
同样,在需要时可以采取对PLL时钟完全的中断管理(如当一个外接的振荡器失效时)。
具有多个预分频器用于配置AHB的频率、高速APB(APB2)和低速APB(APB1)区域。
AHB和高速APB 的最高频率是72MHz,低速APB的最高频率为36MHz。
自举模式在启动时,自举管脚被用于选择三种自举模式中的一种:●从用户闪存自举●从系统存储器自举●从SRAM自举自举加载器存放于系统存储器中,可以通过USART对闪存重新编程。
供电方案● VDD = 2.0至3.6V:VDD管脚提供I/O管脚和部调压器的供电。
● VSSA,VDDA = 2.0至3.6V:为ADC、复位模块、RC振荡器和PLL的模拟部分提供供电。
使用 ADC时,VDD不得小于2.4V。
● VBAT = 1.8至3.6V:当(通过电源开关)关闭VDD时,为RTC、外部32kHz振荡器和后备寄存器供电。
供电监控器本产品部集成了上电复位(POR)/掉电复位(PDR)电路,该电路始终处于工作状态,保证系统在供电超过2V时工作;当VDD低于设定的阀值(VPOR/PDR)时,置器件于复位状态,而不必使用外部复位电路。
器件中还有一个可编程电压监测器(PVD),它监视VDD供电并与阀值VPVD比较,当VDD低于或高于阀值VPVD时将产生中断,中断处理程序可以发出警告信息或将微控制器转入安全模式。
需要通过程序开启PVD。
电压调压器调压器有三个操作模式:主模式(MR)、低功耗模式(LPR)和关断模式●主模式(MR)用于正常的运行操作●低功耗模式(LPR)用于CPU的停机模式●关断模式用于CPU的待机模式:调压器的输出为高阻状态,核电路的供电切断,调压器处于零消耗状态(但寄存器和SRAM的容将丢失) 该调压器在复位后始终处于工作状态,在待机模式下关闭处于高阻输出。
低功耗模式 STM32F103xx增强型支持三种低功耗模式,可以在要求低功耗、短启动时间和多种唤醒事件之间达到最佳的平衡。
●睡眠模式在睡眠模式,只有CPU停止,所有外设处于工作状态并可在发生中断/事件时唤醒CPU。
●停机模式在保持SRAM和寄存器容不丢失的情况下,停机模式可以达到最低的电能消耗。
在停机模式下,停止所有部1.8V部分的供电,PLL、HSI和HSE 的RC振荡器被关闭,调压器可以被置于普通模式或低功耗模式。
可以通过任一配置成EXTI的信号把微控制器从停机模式中唤醒,EXTI信号可以是16个外部I/O 口之一、PVD的输出、RTC闹钟或USB的唤醒信号。
●待机模式在待机模式下可以达到最低的电能消耗。
部的电压调压器被关闭,因此所有部1.8V部分的供电被切断;PLL、HSI和HSE的RC振荡器也被关闭;进入待机模式后,SRAM和寄存器的容将消失,但后备寄存器的容仍然保留,待机电路仍工作。
从待机模式退出的条件是:NRST上的外部复位信号、IWDG复位、WKUP管脚上的一个上升边沿或RTC的闹钟到时。
注:在进入停机或待机模式时, RTC 、 IWDG 和对应的时钟不会被停止。
DMA 灵活的7路通用DMA可以管理存储器到存储器、设备到存储器和存储器到设备的数据传输;DMA控制器支持环形缓冲区的管理,避免了控制器传输到达缓冲区结尾时所产生的中断。
每个通道都有专门的硬件DMA请求逻辑,同时可以由软件触发每个通道;传输的长度、传输的源地址和目标地址都可以通过软件单独设置。
DMA可以用于主要的外设:SPI、I2C、USART、通用和高级定时器TIMx 和ADC。
RTC(实时时钟)和后备寄存器 RTC和后备寄存器通过一个开关供电,在VDD有效时该开关选择VDD供电,否则由VBAT管脚供电。
后备寄存器(10个16位的寄存器)可以用于在VDD消失时保存数据。
实时时钟具有一组连续运行的计数器,可以通过适当的软件提供日历时钟功能,还具有闹钟中断和阶段性中断功能。
RTC的驱动时钟可以是一个使用外部晶体的32.768kHz的振荡器、部低功耗RC 振荡器或高速的外部时钟经128分频。
部低功耗RC振荡器的典型频率为32kHz。
为补偿天然晶体的偏差,RTC的校准是通过输出一个512Hz的信号进行。
RTC具有一个32位的可编程计数器,使用比较寄存器可以产生闹钟信号。
有一个20位的预分频器用于时基时钟,默认情况下时钟为32.768kHz 时它将产生一个1秒长的时间基准。
独立的看门狗独立的看门狗是基于一个12位的递减计数器和一个8位的预分频器,它由一个独立的32kHz的部 RC振荡器提供时钟,应为这个RC振荡器独立于主时钟,所以它可运行于停机和待机模式。
它可以被当成看门狗用于在发生问题时复位整个系统,或作为一个自由定时器为应用程序提供超时管理。
通过选择字节可以配置成是软件看门狗或硬件看门狗。