ESP32入门六(读取引脚的模拟信号[1.9]:生成一个模拟信号)

在之前的章节中,我们测试了读取一个模拟信号,同时根据模拟信号的值以pwm的方式控制一个LED的亮度。在之前的文章中,我们已经介绍过pwm信号和模拟信号。我们已经测试了生成pwm信号,而在之后的章节中,pwm信号已经无法满足测试要求,所以,在这里插入一个小章节,介绍在引脚生成一个模拟信号。

在Arduino IDE标准库中,并不包括生成模拟信号的函数,所以,我们需要在开始包含一个头文件:

#include 

该头文件包括一个设置模拟值的函数:

dacWrite();

我们写一个测试来测试该函数生成的模拟值:

电路十分简单,只要将4号和25号引脚直接短接就可以了。

ESP32入门六(读取引脚的模拟信号[1.9]:生成一个模拟信号)_第1张图片

#include 
uint8_t dac_value = 0;                            //DAC值,2^8长度
void setup() {
  Serial.begin(115200);
}

void loop() {
  dac_value++;                              //DAC值累加
  dacWrite(25,dac_value);                   //25号引脚输出对应电压
  int adc_value = analogRead(4);            //4号引脚读取25号引脚输出的模拟值
  Serial.print(" | ");
  Serial.print("adc_value = ");
  Serial.println(adc_value);                      //串口输出当前输入的模拟值
  delay(100);
}

25号引脚会生成一个慢慢增加的模拟信号,而4号引脚会读取到该信号值。

ESP32入门六(读取引脚的模拟信号[1.9]:生成一个模拟信号)_第2张图片

我们在之后会用到该函数来生成一个模拟信号,可以更方便地测试ESP32的ADC功能。

你可能感兴趣的:(ESP32开发入门,单片机,嵌入式硬件,c++)