对于ADC采集

程序源码如下:

 /* ADC1 Example

    This example code is in the Public Domain (or CC0 licensed, at your option.)

    Unless required by applicable law or agreed to in writing, this
software is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
CONDITIONS OF ANY KIND, either express or implied.
*/
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include "freertos/FreeRTOS.h"
#include "freertos/task.h"
#include "freertos/queue.h"
#include "driver/gpio.h"
#include "driver/adc.h" #define ADC1_TEST_CHANNEL (4) void adc1task(void* arg)
{
// initialize ADC
adc1_config_width(ADC_WIDTH_12Bit);
adc1_config_channel_atten(ADC1_TEST_CHANNEL,ADC_ATTEN_11db);
while(){
printf("The adc1 value:%d\n",adc1_get_voltage(ADC1_TEST_CHANNEL));
vTaskDelay(/portTICK_PERIOD_MS);
}
} void app_main()
{
xTaskCreate(adc1task, "adc1task", *, NULL, , NULL);
}

  ESP32集成了两个12位SAR(“逐次逼近寄存器”)ADC(模数转换器),并支持18通道(模拟使能引脚)的测量。这些引脚中的一些可用于构建用于测量小型模拟信号的可编程增益放大器。

ADC驱动程序API目前仅支持ADC1(9个通道,连接到GPIO 32-39)。

  进行ADC读取需要以所需的精度和注意事项设置ADC,然后调用adc1_get_voltage()来读取通道。

本例程选用adc1task对adc进行初始化设置

    (1)adc1_config_width(),设定捕获宽度,其中ADC_WIDTH_12Bit表示捕获宽度位数,esp32有四种捕获宽度,分别为9bit,10bit,11bit和12bit。

    (2)adc1_config_channel_atten(),设定捕获通道,其中ADC1_TEST_CHANNEL为配置的通道,ADC_ATTEN_11db为设定衰减比(即满量程的电压,11db是满量程时电压为3.9V,其他衰减比看API手册)。
    (3)adc1_get_voltage()用来读取在单个通道上的ADC读数。
最后在主函数中对adctask进行调用即可。

程序源码如下;

   烧写程序后,将GPIO32连接到一个可以改变的电压输出口,打开minicom,观察电压输出值,调节电压,观察输出值变化。

硬件连接如下

minicom输出如下图所示

相关知识:AD转换相关函数API接口

关于esp32的ADC采集的更多相关文章

  1. 关于ADC采集

    对于ADC采集,想问的一些问题 1.如何初始化? 需要初始化 2.哪里可以看到是多少位采集? 3.8位ADC采集的误差是多少? 4.基准电压从哪里取?

  2. TMS320VC5509片内ADC采集

    1. ADC采集比较简单,内部的10位的ADC,AIN0-AIN3的输入,主要是用的CSL的库函数#include <csl_adc.h> ; Uint16 samplestoraage[ ...

  3. CC2530的ADC采集外部电压

    初窥ZIGBEE 要在zigbee的组网中加入烟雾传感器的模块,所以需要用到cc2530的ADC对传感器输出的模拟信号进行采样.下面是自己对实现用CC2530的ADC采集外部电压的程序过程. 以下是A ...

  4. ADC采集电流相关知识

    1.AD电流采样电路,是把电路中的电流用采样元件转换为电压信号,然后用ADC量化转换为相应的数字信号.需要你在被采集端串联一个采样电阻,然后采集采样电阻两端的电压,这样就可以把电流输出变换为电压输出. ...

  5. 关于右移和除法的关系 , ADC采集电量 ,ADC采集MIC(麦克风)

    //////////////////////////////////////////////////////////////////////////////////////////////////// ...

  6. STM32L15x——ADC采集DMA数据只第一次正确(已解决)

    前提:我用的芯片是STM32L系列,可能对其它STM32系列不完全适用,仅供参考! 一.问题描述 我在使用DMA方式读取单ADC单通道采集的数据时,发现只能正确的采集一次数据,后来的就一直与第一次的相 ...

  7. stm8 同时使用dac和adc 采集异常,电平异常

    这种现象在早期的 使用stm8l151的dac 和adc相互干扰很厉害.后来通过读手册发现  相邻三个引脚一般不建议同时使用dac和adc.也就是这两种功能,引脚分配至少隔离三个引脚.内部为了节省成本 ...

  8. STM32F103VET6 ADC采集64点做FFT变换

    http://www.stmcu.org/module/forum/thread-598459-1-11.html http://bbs.21ic.com/icview-589756-1-1.html ...

  9. STM32F405的内部ADC采集

    1. ADC的初始化部分基本一致,下面是引脚复用配置 void HAL_ADC_MspInit(ADC_HandleTypeDef *hadc) { GPIO_InitTypeDef GPIO_Ini ...

随机推荐

  1. 【Linux】【Jenkins】编译过程中遇到ERROR: Failed to parse POMs的解决方案

    自动化构建的时候报错,网搜查询说是maven的jenkinks配置问题导致的.修改系统工具配置的maven配置就可以了 Started by user XX Building in workspace ...

  2. java的环境配置

    java的安装 1,进入官网  https://www.oracle.com/index.html 2.Menu -> Downloads -> java ->  all Java ...

  3. InvocationHandler和Proxy(Class)的动态代理机制详解

    在学习Spring的时候,我们知道Spring主要有两大思想,一个是IoC,另一个就是AOP,对于IoC,依赖注入就不用多说了,而对于Spring的核心AOP来说,我们不但要知道怎么通过AOP来满足的 ...

  4. 网页编程工具:EditPlus

    字体:Consolas EditPlus,很土很简单很强大的网页编程工具 http://www.editplus.com/download.html  下载 http://www.cnblogs.co ...

  5. 如何解决python 图表中文显示乱码问题(matlplotlib 包)

    目前搜到的是,下载一个字体到程序路径,设置成默认字体.  https://blog.csdn.net/irene_loong/article/details/68955485 #图表显示中文设置 im ...

  6. yarn 报错 requested virtual cores < 0, or requested virtual cores > max configured, requestedVirtualCores=6, maxVirtualCores=4 原因

    INFO ApplicationMaster:54 - Final app status: FAILED, exitCode: 13, (reason: Uncaught exception: org ...

  7. Ubuntu 14.03 安装mysql

    Ubuntu下安装MySQL及开启远程访问 2017年02月07日 一.Ubuntu上安装MySQL非常简单只需要几条命令就可以完成. sudo apt-get install mysql-serve ...

  8. selenium 3.0变化

    Selenium3.0的变化 最大的变化应该是去掉了Selenium RC 了,这是必然的结果.Selenium RC 是Selenium1.0的产物,Selenium2.0以WebDriver为主, ...

  9. python,关于用户登录与注册问题

    tag=Truecount=1while tag: name = input('请输入用户名>>:').strip() password = input('请输入密码>>:') ...

  10. 深入理解Jvm 虚拟机

    参考: 内存模型:https://blog.csdn.net/qq_34280276/article/details/52783096 类加载原理:https://nomico271.github.i ...