M5stack DAC modul MCP4725

Pro M5stack jednotky lze zakoupit různé rozšiřovací moduly, kdy pro generování analogových signálů můžeme použít například tento DAC modul. Tento modul obsahuje obvod MCP4725, který umožňuje generovat signály o velikosti 0-3,3 Voltů a s rozlišením 12 bitů.

Pro jeho spojení s M5stack deskou stačí propojit 4 vodiče. Připojíme GND s GND, VCC s pinem 5V a datové piny s I2C sběrnicí. U M5stack modulu pak stačí použít GROVE konektor a jednoduše propojit modul se senzorem.

Ukázkový program najdete níže, přičemž jeho popis můžete najít na videu, které je připojeno na konci návodu. Je v něm uvedena ukázka generování napětí 0-3,3 Voltů a jeho měření multimetrem:

// M5 stack a jednotka DAC
// Digitálně-analogový převodník MCP4725
// navody.dratek.cz

// připojení potřebných knihoven
#include <Wire.h>
// nainstalujte Adafruit knihovnu
// přes Manažer knihoven
#include <Adafruit_MCP4725.h>
#include <M5Stack.h>
// nastavení adresy zařízení
#define DAC_ADDR 0x60
// vytvoření objektu dac z knihovny
Adafruit_MCP4725 dac;

void setup() {
  // zahájení komunikace s M5 stack jednotkou
  M5.begin();
  // zahájení komunikace s napájecím čipem M5stack
  M5.Power.begin();
  // nastavení velikosti a barvy textu
  M5.Lcd.setTextFont(4);
  M5.Lcd.setTextColor(TFT_WHITE, TFT_BLACK);
  // výpis informace na displej
  M5.Lcd.drawString("DAC MCP4725 Demo.", 25, 100, 4);
  // zahájení komunikace s DAC čipem
  dac.begin(DAC_ADDR);
  // nastavení výstupního napětí na 0V,
  // false nezapíše data do trvalé paměti,
  // hodnoty můžou být 0-4095
  dac.setVoltage(0, false);
}

void loop() {
  // změna napětí na výstupu na různé hodnoty
  dac.setVoltage(0,    false);
  delay(1000);
  dac.setVoltage(1024, false);
  delay(1000);
  dac.setVoltage(2048, false);
  delay(1000);
  dac.setVoltage(3072, false);
  delay(1000);
  dac.setVoltage(4095, false);
  delay(1000);
}

Sestřih ze streamu:

Celý záznam:

Na eshopu můžete tento M5stack modul zakoupit zde:
https://dratek.cz/arduino/20926-m5stack-esp32-grey-vyvojovy-kit-pro-iot.html
https://dratek.cz/arduino/20933-m5stack-dac-prevodnik-i2c.html

Další podobné články