Convertitore digitale-analogico MCP4725.
Il blocco (Figura 1) viene utilizzato per controllare il microcircuito convertitore digitale-analogico (DAC) MCP4725.

Figura 1
MCP4725 è un DAC a 12 bit di Microchip che può essere collegato ai controller tramite I2C. Un convertitore digitale-analogico (DAC) consente di emettere un segnale analogico con un microcontrollore. Fondamentalmente fa l'opposto di un convertitore analogico-digitale, consentendo di misurare una tensione analogica e convertirla in un numero digitale. MCP4725 ha una singola uscita analogica.
Esistono diversi metodi per convertire un valore digitale in una tensione analogica. MCP4725 è un DAC a stringa resistivo. Contiene una stringa di 4096 resistori identici che formano un enorme partitore di tensione. Il partitore di tensione genera permanentemente tutte le 4096 possibili tensioni di uscita. Con una tensione di alimentazione di 5 V è quindi possibile selezionare tensioni di uscita comprese tra 0 V e 4,9988 V in passi di 0,0012 V. Nel programma Arduino, la tensione di uscita è rappresentata utilizzando un numero intero compreso tra 0 e 4095.
Modulo DAC MCP4725 (Figura 2).

Figura 2
Pinout MCP4725.
- OUT - Tensione di uscita analogica
- VCC - Tensione di alimentazione
- GND - pin comune
- SDA - I2C Serial Data
- SCL - I2C Serial Clock
Caratteristiche.
- Risoluzione a 12 bit (0,0012V a 5V)
- Interfaccia I2C
- Tensione di alimentazione 2,7 - 5,5 V
- Senza carico in uscita, MCP4725 assorbirà più di 400μA dalla sorgente. La corrente operativa è di circa 210μA.
- Memoria non volatile integrata (EEPROM)
Applicazioni.
- Calibrazione del sensore
- Servocontrollo a circuito chiuso
- Strumentazione portatile a bassa potenza
- Periferiche per PC
- Sistemi di acquisizione dati
Impostazione dell'indirizzo del microcircuito.
È possibile verificare l'indirizzo corrente del microcircuito utilizzando lo strumento "Scanning the bus I2C".
Il blocco viene configurato tramite l'editor di blocchi (Figura 3).

Figura 3
Nelle impostazioni del blocco, è necessario selezionare un DAC esistente o crearne uno nuovo. Per creare un nuovo DAC, premere il pulsante con il segno "+". Questo aprirà la finestra per la creazione di un nuovo DAC. In questa finestra è necessario specificare un nome per il DAC, selezionare l'indirizzo ad esso corrispondente e, se necessario, scrivere un commento.
Selezionando la casella di controllo "The write enable input" nell'editor dei blocchi verrà visualizzato l'input "En". Il valore verrà trasferito dal input "Value" al microcircuito solo se al input "En" è presente un livello logico alto. Il valore al input "Value" può avere valori da 0 a 4095. Se il valore è inferiore a 0, verrà inviato al microcircuito il valore 0. Se il valore è maggiore di 4095, verrà inviato il valore 4095. Quando la casella di controllo "Save in EEPROM DAC" è selezionata, l'ultima attività verrà salvata nella EEPROM del microcircuito e ripristinata dopo l'interruzione e il ripristino dell'alimentazione del DAC.
Connessione del microcircuito MCP4725 al controller (Figura 4).

Figura 4
File FLProg.