Cuprins:

ESP32: Știți ce este DAC ?: 7 pași
ESP32: Știți ce este DAC ?: 7 pași

Video: ESP32: Știți ce este DAC ?: 7 pași

Video: ESP32: Știți ce este DAC ?: 7 pași
Video: ESP32 vs Arduino vs 555 De ce este apa udă? Copy-paste nu îți pune pâinea pe masă! 2024, Iulie
Anonim
Image
Image
ESP32: Știți ce este DAC?
ESP32: Știți ce este DAC?

Astăzi, vom vorbi despre două probleme. Primul este DAC (Convertor digital-analog). Consider că este important, deoarece prin intermediul acestuia, de exemplu, realizăm o ieșire audio în ESP32. A doua problemă pe care o vom aborda astăzi este osciloscopul. Apoi vom compila un cod DAC de bază în ESP32 și vom vizualiza cu osciloscop semnalele analogice ale formelor de undă generate de un microcontroler.

Adunarea de astăzi este simplă, atât de mult încât nu am înregistrat o demonstrație. Este suficient de ușor de înțeles doar cu imaginea plasată aici. Practic, avem un ESP32 care, printr-un program, va genera mai multe tipuri de forme de undă.

Folosim GPIO25 ca ieșire și GND ca referință.

Pasul 1: Resurse utilizate

Resurse utilizate
Resurse utilizate

• ESP32

• Osciloscop

• Protoboard (opțional)

• Jersee

Pasul 2: Pin folosit

Pin folosit
Pin folosit

În acest exemplu, vom folosi GPIO 25, care corespunde DAC_1.

Un alt exemplu care poate fi utilizat este GPIO 26, care corespunde DAC_2.

Pasul 3: Cod ESP32 - Wave Matrix

Cod ESP32 - Wave Matrix
Cod ESP32 - Wave Matrix
Cod ESP32 - Wave Matrix
Cod ESP32 - Wave Matrix
Cod ESP32 - Wave Matrix
Cod ESP32 - Wave Matrix

Avem un cod sursă care va genera patru tipuri de forme de undă.

În primul rând, asamblăm o matrice bidimensională.

Aici, specific forma undelor sinusoidale și triunghiulare.

În unde ale imaginilor, afișez forma dintelui ferăstrăului și a pătratului.

În ceea ce privește codul sursă, nu este necesară nicio acțiune în Setup. În Buclă, determin poziția matricei corespunzătoare tipului de undă și folosesc un exemplu de undă pătrată. Scriem datele stocate în matrice pe pinul 25. Verificăm dacă „i” se află în ultima coloană a matricei. Dacă da, „i” este resetat și ne întoarcem la început.

Vreau să clarific că acest DAC din interiorul ESP32 al STM32, adică al cipurilor, în general, are o capacitate mică. Sunt pentru o utilizare mai generică. Pentru a genera unde de înaltă frecvență, există chiar cipul DAC, oferit de Texas sau Analog Devices, de exemplu.

void setup () {//Serial.begin(115200); } // TESTE SEM POSICIONAMENTO (MAIOR FREQUENCIA) / * void loop () {dacWrite (25, 0xff); // 25 sau 26 dacWrite (25, 0x00); // 25 sau 26 // delayMicroseconds (10); } * / // TESTE COM POSICIONAMENTO (MENOR FREQUENCIA) void loop () {octet wave_type = 0; // Sine // byte wave_type = 1; // Triunghi // octet tip_undă = 2; // Sawtooth // octet wave_type = 3; // Square dacWrite (25, WaveFormTable [wave_type] ); // 25 ou 26 i ++; if (i> = Num_Samples) i = 0; }

Cod de referință:

Pasul 4: Generator profesional

Generator profesional
Generator profesional

Aduc aici un exemplu de generator profesionist, tocmai pentru a vă face o idee despre costul acestui echipament. Ar putea fi folosit, de exemplu, pentru a simula o sursă și a genera un crash. Am putea injecta un zgomot electric într-un microcontroler STM, analizând cât de mult zgomotul ar perturba cipul. Acest model are și o funcție automată de a genera zgomot electric.

Pasul 5: Osciloscop Hantek DSO 4102C 100mhz cu generator de funcții arbitrare

Osciloscop Hantek DSO 4102C 100mhz cu generator de funcții arbitrare
Osciloscop Hantek DSO 4102C 100mhz cu generator de funcții arbitrare
Osciloscop Hantek DSO 4102C 100mhz cu generator de funcții arbitrare
Osciloscop Hantek DSO 4102C 100mhz cu generator de funcții arbitrare

Acesta este un sfat privind opțiunile de echipare mai ieftine. Costă în jur de 245 USD pe Aliexpress. Îmi place, deoarece are un generator de funcții, ca să nu mai vorbim că facilitează localizarea erorilor în circuit.

Pasul 6: Valuri obținute cu osciloscopul:

Valuri obținute cu osciloscopul
Valuri obținute cu osciloscopul
Valuri obținute cu osciloscopul
Valuri obținute cu osciloscopul
Valuri obținute cu osciloscopul
Valuri obținute cu osciloscopul
Valuri obținute cu osciloscopul
Valuri obținute cu osciloscopul

Mai întâi captăm unde în formă sinusoidală, triunghiulară, dinte de ferăstrău și, în final, pătrat.

Pasul 7: Descărcați fișierele:

PDF

EU NU

Recomandat: