Easy and Affordable Digital Signal Processing
The aim of this book is to teach the basic principles of Digital Signal Processing (DSP) and to introduce it from a practical point of view using the bare minimum of mathematics. Only the basic level of discrete-time systems theory is given, sufficient to implement DSP applications in real time. The practical implementations are described in real time using the highly popular ESP32 DevKitC microcontroller development board. With the low cost and extremely popular ESP32 microcontroller, you should be able to design elementary DSP projects with sampling frequencies within the audio range. All programming is done using the popular Arduino IDE in conjunction with the C language compiler.
After laying a solid foundation of DSP theory and pertinent discussions on the main DSP software tools on the market, the book presents the following audio-based sound and DSP projects:
Using an I²S-based digital microphone to capture audio sound
Using an I²S-based class-D audio amplifier and speaker
Playing MP3 music stored on an SD card through an I²S-based amplifier and speaker
Playing MP3 music files stored in ESP32 flash memory through an I²S-based amplifier and speaker
Mono and stereo Internet radio with I²S-based amplifiers and speakers
Text-to-speech output with an I²S-based amplifier and speaker
Using the volume control in I²S-based amplifier and speaker systems
A speaking event counter with an I²S-based amplifier and speaker
An adjustable sinewave generator with I²S-based amplifier and speaker
Using the Pmod I²S2 24-bit fast ADC/DAC module
Digital low-pass and band-pass real-time FIR filter design with external and internal A/D and D/A conversion
Digital low-pass and band-pass real-time IIR filter design with external and internal A/D and D/A conversion
Fast Fourier Transforms (FFT)
Le Elektor Audio DSP FX Processor combine un microcontrôleur ESP32 et un DSP Audio ADAU1701 d'Analog Devices. Outre un noyau DSP programmable par l'utilisateur, l'ADAU1701 intègre des convertisseurs analogique-numérique et numérique-analogique de haute qualité et dispose d'un port I²S. Cela le rend approprié comme interface audio de haute qualité pour l'ESP32.
Les programmes pour l'ESP32 peuvent être créés avec Arduino, Platform IO, CMake ou en utilisant Espressif IDF d'une autre manière. Les programmes pour les DSP audio ADAU7101 sont créés avec l'outil de programmation visuelle gratuit SigmaStudio en glissant et déposant des blocs d'algorithmes prédéfinis sur un canevas.
Applications
Sink audio Bluetooth/Wi-Fi (par ex. haut-parleur) et source
Pédale d'effet guitare (stomp box)
Synthétiseur musical
Générateur de sons/fonctions
Filtre cross-over programmable pour haut-parleurs
Processeur d'effets audio avancé (réverbération, chorus, pitch shifting, etc.)
Appareil audio connecté à Internet
Plate-forme d'expérimentation DSP
MIDI sans fil
Convertisseur MIDI vers CV
et bien d'autres...
Spécifications
Processeur audio numérique ADAU1701 28/56 bits, 50 MIPS prenant en charge des taux d'échantillonnage allant jusqu'à 192 kHz
Microcontrôleur double cœur ESP32 32 bits avec Wi-Fi 802.11b/g/n et Bluetooth 4.2 BR/EDR et BLE
2 entrées audio 24 bits (2 V RMS, 20 kΩ)
4 sorties audio 24 bits (0,9 V RMS, 600 Ω)
4x potentiomètres de contrôle
Entrée et sortie MIDI
Port d'extension I²C
Fonctionnement multimode
Alimentation : USB 5 V CC ou 7,5-12 V CC (prise cylindrique, broche centrale GND)
Consommation de courant (moyenne) : 200 mA
Inclus
1x Carte Audio DSP FX Processor (assemblée)
1x ESP32-PICO-KIT
2x Cavaliers
2x Connecteurs à 18 broches (female)
4x Potentiomètres de 10 Ko
Téléchargements
Documentation
GitHub
Version améliorée II avec fonction Bluetooth, plus grand capteur de batterie, un seul filtre passe-bande et plusieurs modes (HI-Z, LNA, 50 ohm)
L'ATS25 max-Decoder II est un récepteur radio portable pleine bande MW/LW/SW/Ham/FM basé sur l'émetteur-récepteur HF Si4732-A10 avec technologie DSP. Ce récepteur compact et léger offre plusieurs modes de décodage de signaux intégrés, notamment CW, RTTY, HELL, FT4 et FT8, ce qui en fait un appareil indispensable pour les radioamateurs.
Caractéristiques
Commande rotative ou interface utilisateur à écran tactile
Commutation automatique de l'entrée antenne (prise BNC)
Largeur de bande réglable de 500-6000 Hz en fonction de la modulation
Mesure en temps réel de la qualité de réception du signal et recherche automatique de stations radio sur la base des données reçues
Réglage de la fréquence SSB à 10 Hz minimum. Générateur BFO 1 Hz pour un accord précis dans les bandes radioamateurs
Décodage des informations RDS
Réception SSB
Entrée rapide des fréquences à l'aide de deux VFO à commutation rapide
Mémoire de station illimitée avec regroupement par plage de réception
Mode canal de la bande CB
Nombreuses options de réglage et de personnalisation
Décodage du code Morse pour les alphabets latin et cyrillique
Décodage des modes DIGI (RTTY, FELD-HELL, FT4, FT8)
Sauvegarde, stockage et envoi des données décodées vers un PC
Connectivité WiFi pour les mises à jour et les modes de décodage avancés
Logiciel de contrôle, actualisable, basé sur ESP32
Fourni avec une clé de licence préenregistrée
Spécifications
Écran : 2,4 pouces (net) couleur TFT avec tactile (320 x 240)
Matériau du boîtier : alliage d'aluminium
Batterie intégrée : 4000 mAh Lithium-ion (jusqu'à 6 heures de fonctionnement)
Bluetooth
Haut-parleur interne
Sortie casque (prise jack 3,5 mm)
VHF FM : 64-108 MHz avec RDS
MW : 520-1710 kHz
LW : 153-500 kHz
SW : 1730-30000 kHz
Version du micrologiciel : 4.17 Air
Alimentation : USB-C
Dimensions : 117 x 112 x 45 mm
Poids : 380 g
Inclus
1x ATS25 max-Decoder II récepteur
1x Antenne Wi-Fi
1x Antenne télescopique
1x Stylet
1x Câble de charge/données USB-C
1x Chiffon anti-poussière
1x Manuel
BeagleY-AI est un ordinateur monocarte quad-core 64 bits puissant, open source et peu coûteux, équipé d'un GPU, d'un DSP et d'accélérateurs de vision/apprentissage profond, conçu pour les développeurs et les makers.
Les utilisateurs peuvent profiter des images logicielles Debian Linux fournies par BeagleBoard.org, qui incluent un environnement de développement intégré. Cela permet l'exécution transparente des applications d'IA sur un coprocesseur 4 TOPS dédié, tout en gérant simultanément les tâches d'E/S en temps réel avec un microcontrôleur de 800 MHz.
BeagleY-AI est conçu pour répondre aux besoins des développeurs professionnels et des environnements éducatifs. Il est abordable, facile à utiliser et open source, éliminant ainsi les obstacles à l’innovation. Les développeurs peuvent explorer des leçons approfondies ou pousser les applications pratiques jusqu'à leurs limites sans restriction.
Spécifications
Processeur
TI AM67 avec Arm Cortex-A53 quadricœur 64 bits, GPU, DSP, et accélérateurs de vision/deep learning
RAM
4 Go LPDDR4
Wi-Fi
Module BeagleBoard BM3301 basé sur TI CC3301 (Wi-Fi 802.11ax)
Bluetooth
Bluetooth basse consommation 5.4 (BLE)
USB
• 4x USB-A 3.0 prenant en charge un fonctionnement simultané à 5 Gbit/s • 1x USB-C 2.0 compatible avec les périphériques USB 2.0
Ethernet
Gigabit Ethernet, avec prise en charge PoE+ (nécessite un HAT PoE+ séparé)
Caméra/Écran
1x caméra/émetteur-récepteur d'affichage MIPI à 4 voies, 1x caméra MIPI à 4 voies
Afficher la sortie
1x écran HDMI, 1x écran OLDI
Horloge en temps réel (RTC)
Prend en charge une pile bouton externe pour conserver le temps de panne de courant. Il n'est renseigné que sur les échantillons EVT.
Déboguer l'UART
1x UART de débogage à 3 broches
Alimentation
Alimentation CC 5 V/5 A via USB-C, avec prise en charge Power Delivery
Bouton d'alimentation
On/Off inclus
Interface PCIe
Interface PCI-Express Gen3 x1 pour périphériques rapides (nécessite un HAT M.2 séparé ou un autre adaptateur)
Connecteur d'extension
Connecteur à 40 broches
Connecteur de ventilateur
1 connecteur de ventilateur à 4 broches, prend en charge le contrôle de vitesse PWM et la mesure de la vitesse
Stockage
Emplacement pour carte microSD, avec prise en charge du mode SDR104 haut débit
Tag Connecter
1x JTAG, 1x Tag Connect pour la programmation PMIC NVM
Téléchargements
Pinout
Documentation
Quick start
Software
PÚCA DSP est une carte de développement ESP32 open source et compatible Arduino pour les applications audio et de traitement du signal numérique (DSP) avec des fonctionnalités de traitement audio étendues. Il fournit des entrées audio, des sorties audio, un réseau de microphones à faible bruit, une option de haut-parleur de test intégrée, une mémoire supplémentaire, une gestion de la charge de la batterie et une protection ESD, le tout sur un petit PCB compatible avec une maquette.
Synthétiseurs, installations, interface utilisateur vocale et plus encore
PÚCA DSP peut être utilisé pour une large gamme d'applications DSP, y compris, mais sans s'y limiter, celles dans les domaines de la musique, de l'art, de la technologie créative et de la technologie adaptative. Les exemples liés à la musique incluent la synthèse musicale numérique, l'enregistrement mobile, les haut-parleurs Bluetooth, les microphones directionnels sans fil au niveau de la ligne et la conception d'instruments de musique intelligents. Les exemples liés à l'art incluent les réseaux de capteurs acoustiques, les installations d'art sonore et les applications de radio Internet. Les exemples liés à la technologie créative et adaptative incluent la conception d'interfaces utilisateur vocales (VUI) et l'audio Web pour l'Internet des sons.
Conception compacte et intégrée
PÚCA DSP a été conçu pour la portabilité. Lorsqu'il est utilisé avec une batterie rechargeable externe de 3,7 V, il peut être déployé presque n'importe où ou intégré à presque n'importe quel appareil, instrument ou installation. Sa conception est le résultat de mois d'expérimentation avec diverses cartes de développement ESP32, cartes de dérivation DAC, cartes de dérivation ADC, cartes de dérivation microphone et cartes de dérivation de connecteur audio, et – malgré sa petite taille – il parvient à fournir toutes ces fonctionnalités en un seul. conseil. Et cela sans compromettre la qualité du signal.
Caractéristiques
Processeur et mémoire
Processeur Espressif ESP32 Pico D4
Double cœur 32 bits 80 MHz / 160 MHz / 240 MHz
4 Mo SPI Flash avec 8 Mo de PSRAM supplémentaire (édition originale)
Wi-Fi sans fil 2,4 GHz 802.11b/g/n
BluetoothBLE 4.2
Antenne 3D
l'audio
Codec audio stéréo Wolfson WM8978
Entrée ligne audio sur connecteur stéréo 3,5 mm
Audio Casque / Sortie Ligne sur connecteur stéréo 3,5 mm
Entrée ligne auxiliaire stéréo, sortie audio mono acheminée vers l'en-tête GPIO
2x micros MEMS Knowles SPM0687LR5H-1
Protection ESD sur toutes les entrées et sorties audio
Prise en charge des fréquences d'échantillonnage de 8, 11,025, 12, 16, 22,05, 24, 32, 44,1 et 48 kHz
Pilote de haut-parleur 1 W, acheminé vers l'en-tête GPIO
DAC SNR 98 dB, THD -84 dB (pondération « A » à 48 kHz)
ADC SNR 95 dB, THD -84 dB (pondération « A » à 48 kHz)
Impédance d'entrée ligne : 1 MOhm
Impédance de sortie ligne : 33 Ohms
Facteur de forme et connectivité
Compatible avec la planche à pain
70x24mm
11x broches GPIO réparties sur un en-tête au pas de 2,54 mm, avec accès aux deux canaux ESP32 ADC, JTAG et broches tactiles capacitives
USB 2.0 sur connecteur USB Type C
Pouvoir
Batterie rechargeable au lithium polymère 3,7/4,2 V, USB ou source d'alimentation externe 5 V CC
L'ESP32 et le codec audio peuvent être placés en modes faible consommation sous contrôle logiciel
Détection du niveau de tension de la batterie
Protection ESD sur le bus de données USB
Téléchargements
GitHub
Fiche de données
Gauche
Campagne de fourniture de masse (comprend une FAQ)
Présentation du matériel
Programmation du tableau
Le codec audio