ESP-IDF中有类似STM32中的FIFO定义的源文件吗?如果要在ESP-IDF中使用一个FIFO作为缓冲区,该如何使用?

P-G LJX
Posts: 3
Joined: Fri Jul 21, 2023 3:42 am

ESP-IDF中有类似STM32中的FIFO定义的源文件吗?如果要在ESP-IDF中使用一个FIFO作为缓冲区,该如何使用?

Postby P-G LJX » Fri Jul 21, 2023 3:48 am

ESP-IDF中有类似STM32中的FIFO定义的源文件吗?如果要在ESP-IDF中使用一个FIFO作为缓冲区,该如何使用?

bidrohini
Posts: 202
Joined: Thu Oct 27, 2022 12:55 pm

Re: ESP-IDF中有类似STM32中的FIFO定义的源文件吗?如果要在ESP-IDF中使用一个FIFO作为缓冲区,该如何使用?

Postby bidrohini » Fri Jul 21, 2023 2:37 pm

在ESP-IDF v5.1(ESP32的官方开发框架)中,ADC(模数转换)的池子数据更新和清空涉及到ADC的缓冲区和相应的API调用。

更新ADC池子数据:
ESP32的ADC模块会将转换得到的模拟信号数据存储在一个缓冲区中,通常称为"ADC池子"。要更新ADC池子数据,您需要使用ADC API进行数据获取。

首先,您需要初始化ADC模块,并设置好所需的通道、分辨率等参数。这可以通过以下API进行:

Code: Select all

#include "esp_adc_cal.h"

esp_adc_cal_characteristics_t adc_chars;
adc1_config_width(ADC_WIDTH_BIT_12); // 设置分辨率为12位
adc1_config_channel_atten(ADC1_CHANNEL_0, ADC_ATTEN_DB_0); // 设置通道和增益(衰减)等级
esp_adc_cal_get_characteristics(V_REF, ADC_WIDTH_BIT_12, ADC_ATTEN_DB_0, &adc_chars); // 计算ADC校准值

P-G LJX
Posts: 3
Joined: Fri Jul 21, 2023 3:42 am

Re: ESP-IDF中有类似STM32中的FIFO定义的源文件吗?如果要在ESP-IDF中使用一个FIFO作为缓冲区,该如何使用?

Postby P-G LJX » Sat Jul 22, 2023 4:30 am

我并非用到ADC,而是想从蓝牙接收数据,接收数据后存到一个FIFO中,然后再将FIFO中的数据存到SD卡或者通过串口发送出去,因为蓝牙需要接收到的数据比较大,而且会一直接收持续时间较长,因此想要创建一个FIFO来作为缓冲区,因此想请问下ESP-IDF中是否有类似FIFO的缓冲区?

Who is online

Users browsing this forum: No registered users and 82 guests