精华内容
下载资源
问答
  • adc采集端口的电压,基础练习适合新手观看,各个文件单独分开易于移植
  • 【From Zero To Hero】专栏开刊词STM32服务号上线有两个月了,非常感谢大家的关注。我们在为大家提供产品资讯、技术内容以外,还想通过这个窗口为初级工程师解读普适性的技术要点,以帮助大家更快更好地了解产品、...

    【From Zero To Hero】专栏开刊词

    STM32服务号上线有两个月了,非常感谢大家的关注。我们在为大家提供产品资讯、技术内容以外,还想通过这个窗口为初级工程师解读普适性的技术要点,以帮助大家更快更好地了解产品、实现设计。

    专栏特邀工程师采写,以用户的角度解读STM32。那么,初级工程师如何实现From Zero To Hero?我们将从以下三个维度助你提升自己的设计能力。

    • STM32学习笔记:来自工程师的学习点滴,帮你绕过初学者的坑;
    • STM32实际案例:讲解简单项目案例,让你有点实操手感;
    • STM32综合项目:以小型项目设计来推演技术方案,学一些工程师设计思维。

    今天是第一篇分享,《STM32学习笔记》之电源管理及低功耗设计要点

    一款好的电子产品,都需要认真考虑电源管理的问题,电池供电的产品更应该注意低功耗的实现。

    STM32电源介绍

    每一块STM32芯片中都有一个电源控制器(PWR),不同系列的STM32有相似,也有差异。

    1.电压
    绝大部分STM32的电压要求介于 1.8 V 到 3.6 V 之间,嵌入式线性调压器用于提供内部 1.2 V 数字电源。

    2.类型

    STM32的电源通常分为三类:数字电源、模拟电源、备份电源。

    数字电源:VDD也是其主电源,主要用于数字部分;

    模拟电源:VDDA用于模拟部分的电源,比如ADC,这样可以单独滤波并屏蔽 PCB 上的噪声。

    备份电源:VBAT用于备份区域的电源,比如RTC、备份SRAM等,一旦主电源断开,VBAT可以为这些区域提供电源。

    44300408b2d2f39ae650711771957d2b.png
    ▲ STM32F4备份域

    3.调压器多数STM32都有电源调节器(有些型号没有),为备份域和待机电路以外的所有数字电路供电,调压器输出电压约为 1.2 V。

    运行模式:调压器为 1.2 V 域(内核、存储器和数字外设)提供全功率。停止模式:调压器为 1.2 V 域提供低功率,保留寄存器和内部 SRAM 中的内容。待机模式:调压器掉电。除待机电路和备份域外,寄存器和 SRAM 的内容都将丢失。

    STM32的低功耗模式

    STM32的工作模式通常可分为4类运行模式、睡眠模式、停止模式、待机模式。根据STM32类型不同,可将工作模式进一步划分。比如STM32L低功耗系列,睡眠模式可进一步划分为:普通睡眠模式和低功耗睡眠模式。

    • 以STM32F4为例:
    • 运行模式:默认进入该模式;
    • 睡眠模式:内核停止,外设保持运行
    • 停止模式:所有时钟都停止
    • 待机模式:1.2 V 域断电

    acea77f5ab8d417823b2f5ba801818b0.png
    ▲ STM32睡眠/停止/待机模式图解

    STM32低功耗设计要点

    STM32低功耗通常会结合项目实际情况,以及应用场景来进行针对性设计。以下面几个案例来进行说明。

    案例一:有工程师提到:STM32F103 进入STOP 模式后无法通过串口唤醒

    分析原因:这位工程师对低功耗唤醒机制理解有误:STM32进入 STOP 模式后不能直接通过 UART 等中断外设唤醒, 只能通过 EXTI 外部中断方式唤醒。

    解决办法:我们可以在 MCU 进入 STOP 前将 RX 脚设为 EXTI 模式,并使能对应的中断来实现。

    案例二:有工程师提到:STM32F051进入低功耗之后,实际功耗远大于理想功耗。分析原因:造成问题的原因可能是工程师通过直接调用“停止模式”,进入低功耗,但部分IO外部有上拉电阻,进入低功耗之前未做调整,导致功耗偏大。

    解决办法:进入低功耗之前,对使用和未使用IO状态进行调整。比如有外部上拉,可配置成模拟输入等。

    案例三:有工程师提到:通过按键唤醒STM32F103,串口不能正常工作?分析原因:经分析发现,开发者进入的低功耗模式为待机模式,唤醒之后,未初始化串口外设,导致串口不能正常工作。在待机模式下,所有外设都关闭,意味着所有外设配置都为默认值。解决办法:唤醒STM32之后,重新初始化串口(以及所有使用的)外设。

    关注微信公众号“STM32”了解更多内容

    2eb51496ed3e1ce06eb3d4ad41c10498.gif
    展开全文
  • (2)本资源使用stm32自带的ADC采集外部输入的正弦信号(外加信号需要偏置,因为32自带ADC采集0~3.3V)。 (3)采用stm32官方DSP库的FFT算法处理数据(64,256,1024点处理) (4)计算正弦波失真度。 (5) 采样频率...
  • stm8s实现ADC采集电压,且对电压进行等级划分
  • 通过串口调试助手设定电压值(十六进制),用ADC采集显示在串口助手上
  • 此时通过使用STM32的内部参考电压功能(Embedded internal reference voltage),可以准确的测量ADC管脚对应的电压值,精度 0.01v左右,可以满足大部分应用场景。 详情参考Blog: ...
  • MCU:STM32F103ZET6 功能:通过ADC采集数据 显示在LCD液晶屏上 并通过串口发送 说明:基于例程进行修改 到手可用
  • STM32ADC采集程序

    2018-09-06 10:15:07
    DAC输出一个控制电压值,ADC采集反馈值,再通过串口发送出去
  • 基于STM32F103的 ADC内部单路电压采集C代码,采用中断方式,精度可达1mV以内,使用串口接收数据,采集的数据不断发往串口,打开串口调试助手接收和保存数据。
  • STM32 ADC 采集输入电压

    千次阅读 2021-02-04 10:27:42
    1、电路 2.计算电压adc使用12bit,(配置代码省略) 分压计算:VIN_ADC = R13/(R13+R17) VIN(输入电压) = (3.0*BAT_ADC/4096)*13.3

    1、电路

    2.计算电压,adc使用12bit,(配置代码省略)

    分压计算:VIN_ADC = R13/(R13+R17)

    VIN(输入电压) = (3.0*BAT_ADC/4096)*13.3

    展开全文
  • STM32F0xx_ADC采集电压配置详细过程 验证通过
  • STM32 ADC采集和DAC输出

    2015-07-10 22:34:43
    STM32 ADC采集通过DAC直接输出,采集频率最大700hz可完全不失真,700到4k,打点不完全,4k以上开始失真
  • stm32F407ADC电压采集串口输出,采用均值滤波对采集的ad值进行处理...
  • 单片机会读到什么值?如何利用单片机的ADC模块(或者独立的ADC芯片)得到接入ADC管脚上的实际电压值?这个问题,是第一次接触ADC时候,...我先告诉你答案:STM32读到的ADC值,是从0到4095,当你把ADC引脚接了GND,读到...

    单片机会读到什么值?

    如何利用单片机的ADC模块(或者独立的ADC芯片)得到接入ADC管脚上的实际电压值?

    这个问题,是第一次接触ADC时候,大家都会遇到的问题。

    单片机会读到什么值?需要看一个特性,就是几位的ADC,在手册上就会给出,例如,STM32的ADC是12位的。另外,还有8位,10位,16位,24位等。

    我先告诉你答案:STM32读到的ADC值,是从0到4095,当你把ADC引脚接了GND,读到的就是0,当你把ADC引脚接了VDD,读到的就是4095。

    接下来告诉你为什么:前面提到,STM32的ADC是12位的,我们知道,8位的值是从0~255;16位的值,是从0~65535。这两个位的最大值,是我们最为熟悉的。

    (怎么算出来的?这问题就又降低到另一个层面了,这里我们说的几位的值,每个位只能是0或者1,比如2位的值,可以表示为00 01 10 11四种不同的值,这是以2进制表示的,转换成十进制就是0 1 2 3,所以得出结论,2位的值可以表示从0~3。同理,3位的值,可以表示十进制的0~9,你可以展开计算一下。4位的值,可以表示0~16,5位的值,可以表示从0~31,同理,你可以得出任意位的值可以表示的范围。)

    所以,12位的值,可以表示从0~4095,这就是先在感性上,认识了为什么12位的ADC的值,是从0~4095.

    读到的值怎么换算成实际的电压值

    前面提到了,我们输入GND,读到的值是0,输入VDD,得到的值是4095,那么,当你读到2035的时候,你知道输入电压多少V吗?这个问题,归根接地,就到了数学XY坐标,已知两点坐标值(0,0)(3.3,4095),给出任意X坐标值,求Y值的问题了吧?简单不简单?

    f4dc3a8eeb3f035aded2e2a4e16731a6.png

    参考电压是什么

    讨论这个问题之前,你先拿万用表量一下你的VDDA的实际电压是多大?是不是标准的3.300V?应该不是吧?或许是2.296V,或许是3.312V。然后你把VDD连接到ADC引脚之后,得到的是4095,也就是,实际上,当你读出4095这个数据的时候,实际的电压值不是你想象中的3.300V。有些初学者,觉得几毫伏的电压差无所谓,但实际应用中,几毫伏就可能代表很大的实际工况,例如,在一个量程为50克的电子称上。

    所以,这时候,芯片厂商就想了一个办法,给ADC模块中引入参考电压,由非常标准的参考电压芯片来接入参考电压引脚。标准的电压芯片,我们一般叫做参考电压芯片,或者叫做基准电压芯片。例如REF3133(输出3.300V) REF3025(输出2.500V)等等。

    注意:STM32 的100脚以上(含100脚)有参考电压引脚。在没有参考电压引脚的单片机上,可以把基准电压芯片接入VDDA,但是VDDA和VDD的电压差不能超过0.3V,例如,VDD是3.3V的话,可以给VDDA接入一个3.3V的参考电压芯片或者3.0V的参考电压芯片,但是不能接入2.5V的参考电压芯片,后果就是芯片不能工作。

    ADC引脚的输入电压范围是多大

    一般情况下,ADC引脚的输入电压,是从0~VDD,如果有REF引脚,一般是0~Vref,也有0~2Vref的情况。

    如果被测的电压大于ADC的输入电压,例如,要用STM32测量0~5V的电压的话,可以在输入ADC引脚之前,加入电阻分压和放大器电路。

    展开全文
  • STM32F103RBT6 通过ADC通道(PA6)采集电压并通过串行端口发送采集到的数据出来
  • STM32f103 ADC 电压转换 采集电压

    千次阅读 2019-12-12 11:21:54
    首先明确一个概念,嵌入式或者说单片机里进行ADC(数模)转化,所采集的数据一般是电流或电压,但绝大多数我们采集的...STM32F103电压采集范围0~3.3V,最终是需要计算转化得到实际值。 电路电压经过ADC转换后为一个...
    1. 首先明确一个概念,嵌入式或者说单片机里进行ADC(数模)转化,所采集的数据一般是电流或电压,但绝大多数我们采集的只是电压值。
      其实电子电路的取样电路存在电流取样和电压取样,如果想要直接采集电流,需要在采集端串联电阻,然后采集电阻两端电压,而且电流传感器采样范围也就几十毫安,一般需要放大器。
    2. STM32F103电压采集范围0~3.3V,最终是需要计算转化得到实际值。
      电路电压经过ADC转换后为一个12Bit的数字,要想看到实际的采集电压值,需要这么计算:
      (1)ADC是12bit,采集范围0~3.3V,也就是2^12(4096)对应3.3
      (2)(2^12)/3.3=X/Y X为12bit转换后数值,Y为实际电压。
    展开全文
  • stm32学习笔记---ADC电压采集

    万次阅读 多人点赞 2018-09-12 22:03:05
    1. ①电压输入范围 ADC 输入范围为:VREF- ≤ VIN ≤ VREF+。由 VREF-、VREF+ 、VDDA 、...ADC 的输入电压范围为:0~3.3V。 如果我们想让输入的电压范围变宽,去到可以测试负电压或者更高的正电压,我们可 以在外...
  • R9 STM32ADC电压采集

    万次阅读 多人点赞 2017-08-02 15:34:24
    STM32ADC电压采集简介STM32f103 系列有 3 个 ADC,精度为 12 位,每个 ADC 最多有 16 个外部通道。其中 ADC1 和 ADC2 都有 16个外部通道,ADC3根据 CPU 引脚的不同通道数也不同,一般都有 8 个外部通道。目录...
  • STM32F103_ADC电压采集

    千次阅读 2021-07-12 16:39:32
    ADC寄存器 1 、STM32 ADC 简介 STM32ADC 是 12 位逐次逼近型的模拟数字转换器。 它有 18 个通道,可测量 16 个...STM32F103 系列最少都拥有 2 个 ADC,我们选择的 STM32F103ZET 包含有 3 个 ADCSTM32ADC
  • stm32_adc采集电压通过485发送给PC
  • STM32-ADC采样

    2018-03-27 11:08:09
    通过单片机STM32电压、电流信号进行采样,也可以通过USART串口与上位机进行通信,把采样的信号在串口助手显示出来。
  • STM32采样电压

    2019-11-01 21:03:22
    趁着实习的时候写了一个测电压值得程序,我用的是最小系统板,MCU是stm32f103rct6,这个是照着正点原子的教程自己改的,因为他的太复杂了,我就把简化到只有采样电压值得功能,自己测试是通过串口打印显示了出来,如...
  • 基于STM32F030的ADC电压采集程序,通过推算系数与实际比较,充分开发stm32功能开发了最大程度减小误差的程序。
  • 基于STM32F030的ADC电压采集程序,通过推算系数与实际比较,充分开发stm32功能开发了最大程度减小误差的程序,最新技术采集
  • STM32L452RET* ADC初始化+外部电压采集+温度传感器(已转换) LL库配置
  • 该文档源自网上转载,介绍了如何提高stm32F系列常用芯片 ADC的采样精度。
  • STM32实现双通道ADC采集电压电流值

    千次阅读 2019-07-30 14:28:00
    本次的实验是通过配置DMA来获取ADC采集到的数据的。 软件实现如下:  adc.c文件 #include "adc.h" #define ADC1_DR_Address ((u32)0x40012400+0x4c) //定义ADC1地址 volatile uint16_t ...
  • STM32的片内ADC采集8路电压,可以打印输出到串口调试助手上
  • 在移植原子STM32L431的ADC实验...当误差降低后,因为VREF接的是3.3V,所以当ADC采集电压低于3.3V时,基本保持在3.3V. 鉴于此,使用了芯片内部的参考电压VREFINT。 根据上述代码,可以读取到3.3V以下的电压。 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,643
精华内容 1,057
关键字:

stm32adc采集电压范围