I2S et le syst\xE8me audio
Pour pouvoir jouer des fichiers audio nous avons besoins d'
- un fichier audio que nous attendons en format wav non comprim\xE9
- un syst\xE8me de fichier pour stocker le fichier audio. Ceci est fourni par MicroPython et peut se situer dans son flash interne ou sur une carte SD.
- un DAC 16 bits rapide pour convertir les donn\xE9es audio dans une forme analogique qui peut \xEAtre consomm\xE9 par un hautparleur ou une oreillette.
- En cas d\x92hautparleur on a besoin d'un amplificateur audio pour produire la puissance de signal n\xE9cessaire.
- un pilote qui impl\xE9mente le protocole I2S, invent\xE9 par Philips \xE0 la fin des ann\xE9es 1980, qui est utilis\xE9 pour transf\xE9rer les donn\xE9es audio au DAC.
Notre kit contient un module I2S, bas\xE9 sur le chip PCM5102, compatible avec le bus I2C et qui fourni le DAC n\xE9cessaire \xE0 la conversion de donn\xE9es audio digitales en signal utilisable par l'hautparleur.
Les connexions :
| ESP32 |
PMC5102 |
Comments |
| GND |
SCK |
SCK=0:use internal PLL as clock master |
| D0: GPIO 26 |
BCK |
|
| D2: GPIO 21 |
DIN |
|
| D1: GPIO 22 |
LRCLK |
|
| GND |
GND |
|
| 5V |
Vin |
|
| ESP32 |
PCM5102 |
Comments |
| GND |
FLT |
Normal latency |
| GND |
DEMP |
De-emphasis off |
| |
XSMT connected to A3V3 |
Mute is off |
| GND |
FMT |
Fomat is I2S |
| |
A3V3 |
|
Ces tableaux sont valables pour la connexion du PCM5102 vers la carte CPU du syst\xE8me WeMos D1 mini. D'autres pins GPIO peuvent \xEAtre utilis\xE9 dans le cas du kit Freenove.
Le pilote I2S et ses exemples
Mike Teachman a \xE9crit un pilote tr\xE8s sophistiqu\xE9 qui a \xE9t\xE9 inclus dans la version 1.16 de MicroPython. Sa description se trouve dans la documentation MicroPython dans le
chapitre I2S.
Mike met aussi \xE0 disposition une
s\xE9rie d'exemples avec de fichiers audio en format wav. Avec ces exemples on peut jouer de la musique stock\xE9e dans le flash de l'ESP32 ou sur une carte SD.
Il est seulement n\xE9cessaire d'adapter les pins GPIO utilis\xE9 pour le bus I2S.
Avec
audacity on peut facilement convertir des fichiers audio de formats divers en un fichier wav avec un taux d'\xE9chantillonnage voulu. Changer le "Project rate" (en bas \xE0 gauche dans la fen\xEAtre
audacity) et exporter en format wav.
-- %USERSIG{UliRaich - 2021-07-06}%