Pengukuran Kecepatan DAC Internal ESP32

Pengukuran Kecepatan DAC Internal ESP32

Pengukuran Kecepatan DAC Internal ESP32

Pengukuran V1

pada pengukuran ini menggunakan fungsi library dacWrite()

Kode sebagai berikut

#define DAC1 25

void setup() {
  Serial.begin(115200);
}

void loop() {
  while (1) {
    dacWrite(DAC1, 0);
    dacWrite(DAC1, 4095);
  }
}

Berikut ini hasil pengukuran output analog dari DAC dengan osiloskop

Pengukuran V2

Pada pengukuran ini menggunakan fungsi dac_output_enable() dan dac_output_voltage(). Pada fungsi dacWrite, fungsi dac_output_enable() selalu dipanggil sehingga cukup menghabiskan waktu.

// https://github.com/espressif/arduino-esp32/discussions/7889
// https://dronebotworkshop.com/esp32-dac/
// https://deepbluembedded.com/esp32-dac-audio-arduino-examples/
// https://circuitdigest.com/microcontroller-projects/esp32-timers-and-timer-interrupts

#include <driver/dac.h>

int value = 0;

void setup() {
  dac_output_enable(DAC_CHANNEL_1);
}
void loop() {
  for(;;){
    dac_output_voltage(DAC_CHANNEL_1, 0);
    dac_output_voltage(DAC_CHANNEL_1, 255);
  }
}

Pengukuran output analog dengan osiloskop

Kesimpulan

  • Frekuensi DAC adalah 27,068 kHz dengan fungsi dacWrite()
  • Frekuensi DAC adalah 168,932 kHz dengan fungsi dac_output_voltage()

Referensi

Tinggalkan Balasan

Situs ini menggunakan Akismet untuk mengurangi spam. Pelajari bagaimana data komentar Anda diproses.