欧美性猛交xxxx免费看_牛牛在线视频国产免费_天堂草原电视剧在线观看免费_国产粉嫩高清在线观看_国产欧美日本亚洲精品一5区

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

ESP32學(xué)習(xí)筆記:ADC

CHANBAEK ? 來(lái)源:跳動(dòng)的字節(jié) ? 作者:曉宇 ? 2023-07-13 17:11 ? 次閱讀

今天我們來(lái)玩兒ADC。

概述

ESP32 芯片有2 個(gè) 12位的SAR(逐次逼近)ADC,最多可以讀取18個(gè)不同的模擬通道輸入,由5個(gè)專用轉(zhuǎn)換控制器管理,2個(gè)支持高性能多通道掃描,2個(gè)支持Deep-sleep低功耗模式下運(yùn)行,還有一個(gè)專門(mén)用于功率檢測(cè)和峰值監(jiān)測(cè)。

圖片

主要特性如下:

  • 采用 2 個(gè) SAR ADC,可支持同時(shí)采樣與轉(zhuǎn)換
  • 采用 5 個(gè)專用 ADC 控制器,可支持不同應(yīng)用場(chǎng)景(比如,高性能、低功耗,或功率檢測(cè)和峰值檢測(cè))
  • 支持 18 個(gè)模擬輸入管腳
  • 1個(gè)內(nèi)部電壓 vdd33 通道、 2 個(gè) pa_pkdet 通道(部分控制器支持)
  • 可配置 12 位、 11 位、 10 位、 9 位多種分辨率
  • 支持 DMA(1 個(gè)控制器支持)
  • 支持多通道掃描模式(2 個(gè)控制器支持)
  • 支持 Deep-sleep 模式運(yùn)行(1 個(gè)控制器支持)
  • 支持 ULP 協(xié)處理器控制(2 個(gè)控制器支持)

硬件

ADC1支持8個(gè)通道(GPIO32-GPIO39),ADC2支持10個(gè)通道(GPIO0、GPIO2、GPIO4、GPIO12-GPIO15、GPIO25-GPIO27),這里有兩點(diǎn)需要注意:

  • ADC2的一些引腳比如GPIO0、GPIO2、GPIO15為芯片的Strapping 管腳,使用的時(shí)候要特別注意
  • ADC2只能在WiFi功能未啟動(dòng)的情況下使用

圖片

ADC模擬輸入引腳可承受最高3.3V的電壓,如果需要測(cè)試更高的電壓,需要通過(guò)分壓之類的方式進(jìn)行降壓之后再進(jìn)行采集。

ESP32 ADC 對(duì)噪聲敏感,從而導(dǎo)致 ADC 讀數(shù)出現(xiàn)較大差異。為了盡量減少噪聲,可以在使用中的 ADC 輸入端連接一個(gè) 0.1uF 的電容,多重采樣也可用于進(jìn)一步減輕噪聲的影響。

軟件

關(guān)于ADC的一些概念,比如時(shí)鐘,分辨率,采樣周期,衰減,量程等大家自行了解,下面我們講一下基礎(chǔ)的使用:

模擬電壓讀取

ADC使用不需要初始化引腳了,直接使用下面的函數(shù)讀取引腳電壓,使用默認(rèn)的參數(shù)進(jìn)行配置,這個(gè)參數(shù)配置能滿足絕大部分的需求了。這里還有一點(diǎn)注意的是這里是阻塞的,直到采集結(jié)束。

analogRead(32);

分辨率設(shè)置

如上文中說(shuō)的,ESP32的ADC是12位的,我們讀取的范圍默認(rèn)是0-4095,如果想改也是可以的,通過(guò)下面你函數(shù)更改,一般用默認(rèn)就好了。

/*
* Sets the conversion resolution
* Default is 12bit (0 - 4095)
* Range is 9 - 12
* */
void analogSetWidth(uint8_t bits);

ADC時(shí)鐘

ADC根據(jù)選擇的分辨率在多個(gè)時(shí)鐘周期內(nèi)進(jìn)行轉(zhuǎn)換,時(shí)鐘速率越快,轉(zhuǎn)換過(guò)程就越快,通過(guò)更改時(shí)鐘分頻系數(shù)來(lái)控制頻率,分頻越大速率越慢,默認(rèn)就是1,最快的速率。

/*
* Set the divider for the ADC clock.
* Default is 1
* Range is 1 - 255
* */
void analogSetClockDiv(uint8_t clockDiv);

ADC參考電壓

ADC的參考電壓Vref,在不同的ESP型號(hào)可能是不一樣的,我們這里ESP32參考電壓為1.1V,一般用內(nèi)部的就可以,要求高的需要校準(zhǔn)一下,當(dāng)然,也可以設(shè)置外置的引腳當(dāng)做參考電壓。

/*
* Set pin to use for ADC calibration if the esp is not already calibrated (25, 26 or 27)
* */
void analogSetVRefPin(uint8_t pin);

ADC衰減倍數(shù)

對(duì)應(yīng)不同的電壓檢測(cè)范圍,我們可以設(shè)置引腳的衰減倍數(shù),默認(rèn)就是11db,實(shí)際檢測(cè)范圍為0-3.3V,下面兩個(gè)函數(shù),一個(gè)設(shè)置所有通道的,一個(gè)設(shè)置特定通道的。

/*
* Set the attenuation for all channels
* Default is 11db
* */
void analogSetAttenuation(adc_attenuation_t attenuation);
 
/*
* Set the attenuation for a particular pin
* Default is 11db
* */
void analogSetPinAttenuation(uint8_t pin, adc_attenuation_t attenuation);
/*
0dB --- 1.1V
2.5dB --- 1.5V
6dB --- 2.2V
11dB --- 3.9V(實(shí)際最大采集到3.3V電壓)
* */
static uint8_t __analogAttenuation = 3;//11db
typedef enum {
    ADC_0db,
    ADC_2_5db,
    ADC_6db,    
    ADC_11db
} adc_attenuation_t;

通過(guò)以上介紹一些可能用到的函數(shù),大家了解一下即可,大部分場(chǎng)合都用默認(rèn)的就行啦。

完整程序

#define ANALOG_PIN   32
int analog_value = 0;
void setup()
{
  Serial.begin(115200);
  Serial.println("ADC Demo!"); 
}
 
void loop()
{  
  analog_value = analogRead(ANALOG_PIN);
  Serial.println("ADC value on Pin(%d) is %d!",ANALOG_PIN,analog_value); 
  delay(1000);
}

我們直接在loop中讀取ADC的值,然后把結(jié)果通過(guò)串口打印出來(lái),ADC都使用的默認(rèn)參數(shù),沒(méi)有進(jìn)行配置。

打印結(jié)果

圖片

使用平均數(shù)字濾波器降噪

實(shí)際采集中,我們一般使用多次采集取平均值的辦法,這樣出來(lái)的結(jié)果可以避免一些錯(cuò)誤的噪聲影響準(zhǔn)確性,方法有多種,具體就是采集多次求平均值,或者去掉最大最小求平均值,大家可以試一下。

對(duì)于精度較高的場(chǎng)合,我們可以校準(zhǔn)ADC,這樣出來(lái)的結(jié)果就非常準(zhǔn)確,后面我們?cè)僬归_(kāi)實(shí)際細(xì)說(shuō)。

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 控制器
    +關(guān)注

    關(guān)注

    112

    文章

    16468

    瀏覽量

    179642
  • 濾波器
    +關(guān)注

    關(guān)注

    161

    文章

    7876

    瀏覽量

    179064
  • adc
    adc
    +關(guān)注

    關(guān)注

    99

    文章

    6537

    瀏覽量

    545888
  • GPIO
    +關(guān)注

    關(guān)注

    16

    文章

    1217

    瀏覽量

    52441
  • ESP32
    +關(guān)注

    關(guān)注

    18

    文章

    980

    瀏覽量

    17566
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    ESP32單片機(jī)學(xué)習(xí)筆記

    ESP32 單片機(jī)學(xué)習(xí)筆記 - 03 - MCPWM脈沖輸出/PCNT脈沖計(jì)數(shù)前言,繼續(xù)上一篇的內(nèi)容。因?yàn)樯弦黄獎(jiǎng)偤脤?shí)驗(yàn)了iic和spi,形成一對(duì)。接下來(lái)講pwm另起一篇。一、電機(jī)PWM輸出
    發(fā)表于 08-23 08:47

    ESP32ESP-IDF學(xué)習(xí)筆記

    ESP32ESP-IDF 學(xué)習(xí)筆記(六)【I2C數(shù)據(jù)總線(I2C)】文章目錄ESP32ESP
    發(fā)表于 02-22 07:30

    ESP32 開(kāi)發(fā)筆記(四)LVGL控件學(xué)習(xí) Window 窗口控件 X

    ESP32 開(kāi)發(fā)筆記(四)LVGL控件學(xué)習(xí) Window 窗口控件 X
    發(fā)表于 11-14 09:06 ?6次下載
    <b class='flag-5'>ESP32</b> 開(kāi)發(fā)<b class='flag-5'>筆記</b>(四)LVGL控件<b class='flag-5'>學(xué)習(xí)</b> Window 窗口控件 X

    [ESP32]學(xué)習(xí)筆記02

    [ESP32學(xué)習(xí)筆記02]使用ViusalStudio2017開(kāi)發(fā)ESP32、按鍵輸入檢測(cè)前言一、安裝Visual Studio 2017二、配置開(kāi)發(fā)環(huán)境1.安裝ViusalGDB2.
    發(fā)表于 12-03 17:36 ?23次下載
    [<b class='flag-5'>ESP32</b>]<b class='flag-5'>學(xué)習(xí)</b><b class='flag-5'>筆記</b>02

    [ESP32]學(xué)習(xí)筆記04

    Analog-to-Digital Converter(模數(shù)轉(zhuǎn)換器)的使用今天我們學(xué)習(xí)ESP32提供的ADC外設(shè)的使用,ESP32的每個(gè)ADC
    發(fā)表于 12-22 19:02 ?9次下載
    [<b class='flag-5'>ESP32</b>]<b class='flag-5'>學(xué)習(xí)</b><b class='flag-5'>筆記</b>04

    ESP32ESP-IDF 教學(xué)(八)—— 模數(shù)轉(zhuǎn)換器(ADC

    ESP32ESP-IDF 學(xué)習(xí)筆記(七)——模數(shù)轉(zhuǎn)換器(ADC)文章目錄ESP32
    發(fā)表于 12-22 19:08 ?38次下載
    <b class='flag-5'>ESP32</b> 之 <b class='flag-5'>ESP</b>-IDF 教學(xué)(八)—— 模數(shù)轉(zhuǎn)換器(<b class='flag-5'>ADC</b>)

    SPI主線協(xié)議——ESP32學(xué)習(xí)筆記

    目錄SPI主線協(xié)議——ESP32學(xué)習(xí)筆記零、前言一、什么是SPI?二、通信過(guò)程?三、極性和相位四、總結(jié)SPI主線協(xié)議——ESP32學(xué)習(xí)
    發(fā)表于 12-22 19:23 ?18次下載
    SPI主線協(xié)議——<b class='flag-5'>ESP32</b><b class='flag-5'>學(xué)習(xí)</b><b class='flag-5'>筆記</b>

    ESP32 單片機(jī)學(xué)習(xí)筆記 - 08 - WebSocket客戶端

    前言,終于要到網(wǎng)絡(luò)模型的最后一層,第四層,應(yīng)用層,http、websocket的實(shí)踐了。文章目錄ESP32 單片機(jī)學(xué)習(xí)筆記 - 08 - WebSocket客戶端一、應(yīng)用層協(xié)議 科普概念二、編程指南
    發(fā)表于 12-29 18:56 ?12次下載
    <b class='flag-5'>ESP32</b> 單片機(jī)<b class='flag-5'>學(xué)習(xí)</b><b class='flag-5'>筆記</b> - 08 - WebSocket客戶端

    ESP32 單片機(jī)學(xué)習(xí)筆記 - 04 - ADC和定時(shí)器

    ESP32 單片機(jī)學(xué)習(xí)筆記 - 04 - ADC和定時(shí)器一、模擬數(shù)字轉(zhuǎn)換器 ADC編程指南:Analog to Digital Conver
    發(fā)表于 01-17 13:18 ?11次下載
    <b class='flag-5'>ESP32</b> 單片機(jī)<b class='flag-5'>學(xué)習(xí)</b><b class='flag-5'>筆記</b> - 04 - <b class='flag-5'>ADC</b>和定時(shí)器

    ESP32芯片模組機(jī)器學(xué)習(xí)算法運(yùn)行的應(yīng)用

    強(qiáng)大的機(jī)器學(xué)習(xí)算法。 ESP32集天線開(kāi)關(guān)、射頻巴倫、功率放大器、低噪聲放大器、濾波器以及電源管理模塊于一體,占用較小的PCB空間,即可最大化滿足實(shí)際應(yīng)用多樣的功能需求。 使用EdgeImpulse在ESP32上運(yùn)行機(jī)器
    發(fā)表于 03-15 17:23 ?1302次閱讀

    ESP32上的深度強(qiáng)化學(xué)習(xí)

    電子發(fā)燒友網(wǎng)站提供《ESP32上的深度強(qiáng)化學(xué)習(xí).zip》資料免費(fèi)下載
    發(fā)表于 12-27 10:31 ?0次下載
    <b class='flag-5'>ESP32</b>上的深度強(qiáng)化<b class='flag-5'>學(xué)習(xí)</b>

    ESP32學(xué)習(xí)筆記:存儲(chǔ)分布和啟動(dòng)過(guò)程

    今天我們來(lái)說(shuō)說(shuō)ESP32 for Arduino存儲(chǔ)分布以及啟動(dòng)過(guò)程。
    的頭像 發(fā)表于 07-14 15:10 ?3358次閱讀
    <b class='flag-5'>ESP32</b><b class='flag-5'>學(xué)習(xí)</b><b class='flag-5'>筆記</b>:存儲(chǔ)分布和啟動(dòng)過(guò)程

    ESP32學(xué)習(xí)筆記:NVS分區(qū)永久保存數(shù)據(jù)

    今天我們來(lái)說(shuō)說(shuō)ESP32 for Arduino NVS分區(qū)永久保存數(shù)據(jù)。
    的頭像 發(fā)表于 07-15 16:14 ?1.1w次閱讀
    <b class='flag-5'>ESP32</b><b class='flag-5'>學(xué)習(xí)</b><b class='flag-5'>筆記</b>:NVS分區(qū)永久保存數(shù)據(jù)

    ESP32學(xué)習(xí)筆記:雙核

    今天我們來(lái)說(shuō)說(shuō)ESP32 for Arduino 的雙核。
    的頭像 發(fā)表于 07-15 16:16 ?5414次閱讀
    <b class='flag-5'>ESP32</b><b class='flag-5'>學(xué)習(xí)</b><b class='flag-5'>筆記</b>:雙核

    ESP32學(xué)習(xí)筆記:WiFi

    今天我們來(lái)說(shuō)說(shuō)ESP32 的WiFi。
    的頭像 發(fā)表于 07-15 16:20 ?4256次閱讀
    <b class='flag-5'>ESP32</b><b class='flag-5'>學(xué)習(xí)</b><b class='flag-5'>筆記</b>:WiFi