Contexte
Je souhaitais utiliser ce DAC pour envoyer à un manomètre une tension continue variable, et ce depuis l'arduino, dans mon projet de lecture de sondes automobile. J'ai utilisé le modèle YL 40 qui a été désastreux, je ne suis rien arrivé à en tirer (voir ici) et me suis donc tourné vers le MCP4725, plus simple mais très efficace !
Présentation
Ce DAC 12 bits de dimensions réduites (15x15mm) fonctionne sur bus I2C. Voici son schéma d’interfaçage avec un Arduino :

VCC : alimentation de 3 à 5V
GND : masse
SDA : sur la broche I2C Data (Pin A4 sur Arduino Uno/Nano, Pin 20 sur un Mega et Pin Digital 1 sur un Leonardo)
SCL : sur la broche I2C Clock (Pin A5 sur Arduino Uno/Nano, Pin 21 sur un Mega et Pin Digital 3 sur Leonardo)
OUT : tension de sortie (c'est la broche qui nous intéresse en lecture)
En bref, on lui envoie une valeur entre 0 et 4095 via le bus I2C, et il l'échelonne entre 0 et la tension d'entrée sur sa broche de sortie (OUT). Par exemple si on lui envoie la valeur 2000 et que VCC est à 5V, il va sortir 2.44V (proportionnalité avec un bête produit en croix).
Il n'y a pas (ou très peu) de déperdition entre l'entrée et la sortie, si vous l'alimentez en 5V (sur VCC) vous aurez à très peu de choses près 5V maximum en sortie sur VOUT (et non pas 4 et quelques comme avec le YL-40).
Code source
Pour le tester, j'utilise la librairie Adafruit MCP4725. Pour connaître l'adresse I2C il vous faut au préalable lancer le scanner I2C. L'adresse trouvée est reportée dans le code ci-dessous (0x62, dans mon cas !).
#include
Adafruit_MCP4725 dac;
void setup(void) {
dac.begin(0x62);
}
void loop(void) {
uint32_t dac_value;
for (dac_value = 4095; dac_value >= 0; dac_value = dac_value - 10)
{
dac.setVoltage(dac_value, false);
delay(100);
}
}
Se procurer les composants
Vidéo
Dans cette courte vidéo, je fais varier la tension envoyée au manomètre sur sa broche de mesure, qu'il convertit en température (il s'agit d'un manomètre de température de liquide de refroidissement, gradué entre 20 et 150°C). Désolé pour la piètre qualité de la vidéo, mais pas réellement besoin de plus pour comprendre le principe ^^
Bonjour, je me permets de vous contacter pour obtenir des conseils si possible 😅.
Savez vous si il est possible d’utiliser ce convertisseur (ou un convertisseur...) pour servir d’adaptateur entre un téléphone et une enceinte ?
(Et cela dégrade t il le signal ?)
Bonjour Quentin, hélas je n'ai pas les compétences pour vous répondre sur ce point. Mon usage du convertisseur étant beaucoup plus "basique".