学习目的及目标

· 学习ESP32 的ADC功能的配置

· 掌握两路ADC采样程序

ESP32的ADC简介(原文)

ESP32 集成了 2 个 12 位逐次逼近模数转换器 (SARADC),由 5 个专用转换器控制器管理.支持 18 个通道(模拟使能引脚)的测量. ADC 还可测量 vdd33 等内部信号.其中一些引脚可用于设计 1 个可编程增益放大器,用于测量微弱模拟信号.SAR ADC 使用的 5 个控制器均为专用控制器,其中 2 个支持高性能多通道扫描、2 个经过优化可支持 Deep-sleep 模式下的低功耗运行,另外 1 个专门用于 PWDET/ PKDET (功率检测和峰值监测).

ADC 驱动程序API支持 ADC1(8个通道,连接到GPIO 32~39)和ADC2(10个通道,连接到 GPIO 0,2,4,12~15和25~27). 但是,使用 ADC2 的应用程序存在一些限制:

仅当 Wi-Fi 驱动程序未启动时,应用程序才能使用 ADC2,因为具有更高优先级的 Wi-Fi 驱动程序也使用 ADC.

某些 ADC2 引脚用作捆扎引脚(GPIO 0,2,15),因此无法自由使用. 例如,官方开发套件:

ESP32 Core Board V2 / ESP32 DevKitC:由于外部自动编程电路,无法使用 GPIO 0.

ESP-WROVER-KIT V3:由于外部连接用于不同目的,因此无法使用 GPIO 0,2,4 和 15.

主要特性

· 采用 2 个 SAR ADC,可支持同时采样与转换

· 采用 5 个专用 ADC 控制器,可支持不同应用场景(比如,高性能、低功耗,或功率检测和峰值检测)

· 支持 18 个模拟输入管脚

· 1 个内部电压 vdd33 通道、2 个 pa_pkdet 通道(部分控制器支持)

· 可配置 12 位、11 位、10 位、9 位多种分辨率

· 支持 DMA(1 个控制器支持)

· 支持多通道扫描模式(2 个控制器支持)

· 支持 Deep-sleep 模式运行(1 个控制器支持)

· 支持 ULP 协处理器控制(2 个控制器支持)

IO映射

软件设计

代码逻辑

ESP32的ADC接口介绍

· 配置ADC1分辨率函数:adc1_config_width();

· 设置ADC1衰减函数:adc1_config_channel_atten();

· 获取ADC1值函数:adc1_get_raw();

· 获取霍尔的ADC值函数:hall_sensor_read();

更多更详细接口请参考官方指南。

采集ADC源码编写

ADC配置。

定时采集ADC的两个通道,采集霍尔状态。

效果展示

ADC总结

· ADC相对简单,直接看源码。

· 源码地址:https://github.com/xiaolongba/wireless-tech

开源地址:https://github.com/HX-IoT/

esp32原理图设计_第十一章 ESP32的PWM全彩LED灯显示相关推荐

  1. ESP32从零开始系列之玩转RGB全彩LED

    ESP32从零开始系列, 适合没有基础的各位工程师, 愿作为钥匙替各位打开ESP32开发的大门. ESP32从零开始系列之玩转RGB全彩LED 一.导入项目到Eclipse 二.源码分析 三.瞎改 四 ...

  2. 基于FPGA的大屏幕全彩LED扫描控制器设计

    关键字:FPGA 大屏幕 LED 1 引言 作为大型平板显示设备的一种,LED 显示屏以其使用寿命长.维护费用低.功耗低等特点在显示领域占有重要的位置.特别在近年,带有红.绿.蓝三基色以及灰度显示效果 ...

  3. java语言仅支持单重继承_java语言程序设计基础篇习题_复习题_第十一章

    java语言程序设计基础篇习题_复习题_第十一章 11.1 下面说法是真是假?一个子类是父类的子集. 11.2 使用什么关键字来定义一个子类 11.3 什么是单一继承?什么是多重继承?java支持多重 ...

  4. java程序设计基础_陈国君版第五版_第十一章例题

    java程序设计基础_陈国君版第五版_第十一章习题 class MyThread extends Thread { private String who;public MyThread(String ...

  5. java程序设计基础_陈国君版第五版_第十一章习题

    java程序设计基础_陈国君版第五版_第十一章习题 /*** 题目:假设某家银行可接受顾客的汇款,每进行一次汇款,便可计算出汇款的总额.现有两名顾客,每人分三次,每次一百元将钱汇入.试编程来模拟顾客的 ...

  6. led显示屏背景墙设计_全彩LED显示屏比例设计因素都有哪些?

    从以往至今的例子来看,全彩LED屏是目前市场主流显示器材元件,很多LED显示屏制造商在前期设计时对全彩LED显示屏尺寸设计一直是个无概念的设计状态. 全彩LED屏幕尺寸正常来说都是根据三个因素构成来进 ...

  7. 单片机软件常用设计分享(二)驱动设计之LED灯显示设计

    单片机软件常用设计分享(二)驱动设计之LED灯显示设计 前言 <驱动设计–LED灯显示驱动> 一.LED灯工作方式 1.常亮 2.常灭 3.闪烁 4.间歇性闪烁 二.LED灯驱动数据结构 ...

  8. 高项_第十一章项目风险管理

    第十一章 项目风险管理 项目风险管理概述 (了解) 项目风险既包括对项目目标的威胁,也包括促进项目目标的机会. 风险的属性: ( 1 )风险的随机性:风险事件的发生及其后果都具有偶然性. ( 2 )风 ...

  9. 系统架构师学习笔记_第十一章(上)_连载

    第十一章  信息安全技术 11.1  信息安全关键技术 11.1.1  加密和解密 有意的计算机犯罪 和 无意的数据破坏 被动攻击:非法地从传输信道上截取信息,或从存储载体上 偷窃.复制 信息. 主动 ...

最新文章

  1. kafka 、 zookeeper 集群(一)
  2. 谈谈java的BlockingQueue
  3. mysql忘记数据库密码
  4. mootools脚本框架下载
  5. JZOJ 5443. 【NOIP2017提高A组冲刺11.2】字典序
  6. boost::all_clustering_coefficients用法的测试程序
  7. vue 安装指定版本swiper_Vue中的runtime-only和runtime-compiler
  8. wechat code miniprogram 没有找到可以构建的 NPM 包
  9. 【转】CMMI环境下,该如何实施Agile?
  10. 每日一题(C语言基础篇)2
  11. android工程改包名及多工程设置
  12. 电池供电的电容麦_电容麦一定需要幻象电源吗 幻象电源的作用是什么
  13. 如何使用js判断视频是否可以成功访问
  14. 微信小程序demo测试实践
  15. 从0开始,html5零基础入门教程,快来看看!
  16. 出口退税的操作明细流程
  17. 个性和共性,对共性的封装。新的语言是如何诞生的
  18. 【电子学会】2020年12月图形化一级 -- 海底世界
  19. 10个最好的免费PS图象处理软件方案
  20. 转发器、网桥、路由器和网关的区别如下:

热门文章

  1. webbench源码解析
  2. [知识图谱实战篇] 六.HTML+D3实现点击节点显示相关属性及属性值
  3. HarmonyOS之深入解析NFC的功能和使用
  4. iOS之实现图片的压缩、解压缩、模糊、置灰、马赛克、黑白化、调色等处理
  5. Check failed: weights_.Size() == num_row_ (38997 vs. 383852) : Size of weights must equal to number.
  6. 316. Remove Duplicate Letters 去除重复字母
  7. 数据库开发——MySQL——数据类型——非数值类型
  8. Linux基础 —— 操作系统简介
  9. 【STM32】GPIO相关函数和类型
  10. 【Linux】Linux中正则表达式