Παραγγελία έως τις 14:00 τις εργάσιμες = αποστολή την ίδια ημέρα 30 ημέρες δικαίωμα υπαναχώρησης Εγγύηση 1 έτους
← Πίσω στην επισκόπηση

Διάγραμμα σύνδεσης και παράδειγμα κώδικα

Έτσι συνδέεις το WCMCU-5102 module stereo DAC ψηφιακός σε αναλογικό μετατροπέας σε ένα Arduino UNO ή ESP32, με ένα παράδειγμα sketch που μπορείς να ανεβάσεις αμέσως.

Δοκιμή ελέγχου υλικού DAC PCM5102A WCMCU-5102

Αυτό το παράδειγμα δείχνει πώς να τροφοδοτήσετε και να ρυθμίσετε τη μονάδα DAC PCM5102A με ένα Arduino Uno. Το sketch ορίζει τις ακίδες διαμόρφωσης υλικού (mute, format, system clock, de-emphasis και filter) και εμφανίζει την κατάσταση της μονάδας στο Serial Monitor. Σημειώστε ότι η αναλογική έξοδος ήχου είναι line-level και πρέπει να συνδεθεί σε headphones ή σε έναν ενισχυτή, ποτέ απευθείας σε ένα speaker.

Διάγραμμα σύνδεσης: WCMCU-5102 module stereo DAC ψηφιακός σε αναλογικό μετατροπέας σε ένα Arduino UNO
Διάγραμμα σύνδεσης · Κάνε κλικ για μεγέθυνση
Πίνακας σύνδεσης: WCMCU-5102 module stereo DAC ψηφιακός σε αναλογικό μετατροπέας σε ένα Arduino UNO
Πίνακας σύνδεσης · Κάνε κλικ για μεγέθυνση
WCMCU_5102_PCM5102A_DAC_Hardware_Control.ino · μεταγλωττισμένο και δοκιμασμένο
/*
 * ==================================================================
 *  Generated by Codey.online  —  https://www.codey.online
 * ==================================================================
 *  Project   : WCMCU-5102 PCM5102A DAC Hardware Control Test
 *  Board     : Arduino UNO (arduino:avr:uno)
 *  Parts     : WCMCU-5102 module
 *  Libraries : none (built-in)
 *
 *  Codey Online is an AI-powered browser IDE for Arduino and ESP32.
 *  Describe your project and Codey writes the code, draws the wiring
 *  diagram and uploads it to your board, straight from the browser.
 *  This code is free to use, modify and share, without warranty.
 * ==================================================================
 */

// WCMCU-5102 (PCM5102A) DAC Module Control Example
// Configures hardware control pins and toggles the unmute (XMT) signal.

const int PIN_XMT = 9;  // High = Unmute, Low = Soft mute
const int PIN_FMT = 8;  // Low = I2S format
const int PIN_SCL = 7;  // Low = Internal SCK generation
const int PIN_DMP = 6;  // Low = De-emphasis off
const int PIN_FLT = 5;  // Low = Normal latency filter

void setup() {
  Serial.begin(115200);
  while (!Serial);

  pinMode(PIN_XMT, OUTPUT);
  pinMode(PIN_FMT, OUTPUT);
  pinMode(PIN_SCL, OUTPUT);
  pinMode(PIN_DMP, OUTPUT);
  pinMode(PIN_FLT, OUTPUT);

  // Configure default PCM5102A operating modes
  digitalWrite(PIN_FMT, LOW);  // Set standard I2S format
  digitalWrite(PIN_SCL, LOW);  // Generate system clock internally
  digitalWrite(PIN_DMP, LOW);  // Disable de-emphasis filter
  digitalWrite(PIN_FLT, LOW);  // Normal latency filter
  digitalWrite(PIN_XMT, HIGH); // Unmute DAC output

  Serial.println(F("WCMCU-5102 DAC Initialized"));
  Serial.println(F("Configuration: I2S format, internal SCK, unmute active."));
  Serial.println(F("Note: Connect line outputs (L/R) to an amplifier or headphones."));
}

void loop() {
  // Periodic status display
  Serial.println(F("PCM5102A module active and unmuted."));
  delay(2000);
}

Wiring diagram and example code generated by Codey.online — https://www.codey.online

ESP32 PCM5102A I2S Audio DAC Γεννήτρια Τόνου

Αυτό το project συνδέει το ESP32 με έναν stereo DAC PCM5102A μέσω της ψηφιακής διεπαφής ήχου I2S για να δημιουργήσει έναν κρυστάλλινο δοκιμαστικό τόνο 440 Hz. Συνδέστε τυπικά ακουστικά 3.5mm ή έναν ενισχυτή line-level στο audio jack για να ακούσετε τη στερεοφωνική έξοδο. Το sketch συνθέτει ένα καθαρό ημιτονοειδές κύμα 16-bit με sample rate 44.1 kHz χρησιμοποιώντας το hardware I2S peripheral.

Διάγραμμα σύνδεσης: WCMCU-5102 module stereo DAC ψηφιακός σε αναλογικό μετατροπέας σε ένα ESP32 DevKit V1
Διάγραμμα σύνδεσης · Κάνε κλικ για μεγέθυνση
Πίνακας σύνδεσης: WCMCU-5102 module stereo DAC ψηφιακός σε αναλογικό μετατροπέας σε ένα ESP32 DevKit V1
Πίνακας σύνδεσης · Κάνε κλικ για μεγέθυνση
ESP32_PCM5102A_I2S_Audio_DAC_Tone_Genera.ino · μεταγλωττισμένο και δοκιμασμένο
/*
 * ==================================================================
 *  Generated by Codey.online  —  https://www.codey.online
 * ==================================================================
 *  Project   : ESP32 PCM5102A I2S Audio DAC Tone Generator
 *  Board     : ESP32 DEVKIT V1 (esp32:esp32:esp32doit-devkit-v1)
 *  Parts     : WCMCU-5102 module
 *  Libraries : none (built-in)
 *
 *  Codey Online is an AI-powered browser IDE for Arduino and ESP32.
 *  Describe your project and Codey writes the code, draws the wiring
 *  diagram and uploads it to your board, straight from the browser.
 *  This code is free to use, modify and share, without warranty.
 * ==================================================================
 */

#include <Arduino.h>
#include "driver/i2s.h"
#include <math.h>

#define I2S_BCK_PIN   26
#define I2S_LRCK_PIN  25
#define I2S_DATA_PIN  22

const int SAMPLE_RATE = 44100;
const int TABLE_SIZE  = 128;
int16_t sineTable[TABLE_SIZE];

void setup() {
  Serial.begin(115200);
  Serial.println("ESP32 PCM5102A Audio Test");

  // Generate one period of a sine wave in a lookup table
  for (int i = 0; i < TABLE_SIZE; i++) {
    sineTable[i] = (int16_t)(sin(2.0 * PI * i / TABLE_SIZE) * 10000);
  }

  // Configure I2S peripheral
  i2s_config_t i2s_config = {
    .mode = (i2s_mode_t)(I2S_MODE_MASTER | I2S_MODE_TX),
    .sample_rate = SAMPLE_RATE,
    .bits_per_sample = I2S_BITS_PER_SAMPLE_16BIT,
    .channel_format = I2S_CHANNEL_FMT_RIGHT_LEFT,
    .communication_format = I2S_COMM_FORMAT_STAND_I2S,
    .intr_alloc_flags = ESP_INTR_FLAG_LEVEL1,
    .dma_buf_count = 8,
    .dma_buf_len = 64,
    .use_apll = false,
    .tx_desc_auto_clear = true
  };

  i2s_pin_config_t pin_config = {
    .bck_io_num = I2S_BCK_PIN,
    .ws_io_num = I2S_LRCK_PIN,
    .data_out_num = I2S_DATA_PIN,
    .data_in_num = I2S_PIN_NO_CHANGE
  };

  i2s_driver_install(I2S_NUM_0, &i2s_config, 0, NULL);
  i2s_set_pin(I2S_NUM_0, &pin_config);

  Serial.println("Playing continuous 440 Hz stereo tone...");
}

void loop() {
  size_t bytesWritten = 0;
  // Stream stereo samples (left and right channels)
  for (int i = 0; i < TABLE_SIZE; i++) {
    int16_t stereoSample[2] = { sineTable[i], sineTable[i] };
    i2s_write(I2S_NUM_0, stereoSample, sizeof(stereoSample), &bytesWritten, portMAX_DELAY);
  }
}

Wiring diagram and example code generated by Codey.online — https://www.codey.online

Πρόσφατα προβεβλημένα

Θερμοαγώγιμη πάστα 1gr 0.25ml γκρι σε σύριγγα

Θερμοαγώγιμη πάστα 1gr 0.25ml γκρι σε σύριγγα

€ 4,30
Κουμπί για ποτενσιόμετρο Λευκό 15mm 17mm

Κουμπί για ποτενσιόμετρο Λευκό 15mm 17mm

€ 0,40
5mm Super Flux Piranha 4pin LED - Μπλε

5mm Super Flux Piranha 4pin LED - Μπλε

€ 0,60
Κεραμικός πυκνωτής - 103 - 100V - 0.01uF / 10nF / 10.000pF

Κεραμικός πυκνωτής - 103 - 100V - 0.01uF / 10nF / 10.000pF

€ 0,40
Σύρμα περιέλιξης Χαλκού Ø0.2mm - 178m - 97 ohm

Σύρμα περιέλιξης Χαλκού Ø0.2mm - 178m - 97 ohm

€ 9,70
Προβολή
Μονάδα φαναριού 5V LED για Arduino

Μονάδα φαναριού 5V LED για Arduino

€ 1,89