Подключение MCP4725 к Arduino
Особую популярность приобрели подобные устройства в современных системах автоматического управления и конструирования девайсов по калибровке датчиков. Они достаточно бюджетны и функциональны, не требуют внешнего опорного напряжения, имеют интегрированную энергонезависимую память (EEPROM), легки в сборке. Прежде чем рассмотреть последний пункт, обозначим базовые параметры модуля:
- напряжение питания: 2.7 — 5.5V;
- мощность: 0.06 (минимальная), тип. 210 мкА, 400 мкА (максимальная);
- рабочий ток: <0,2 мА;
- разрешение: 12-разрядное;
- тип интерфейса: I2C;
- диапазон рабочих температур: -40 °C — +125 °C;
- 2 режима выключения питания (нормальный ∕ выключенный);
- габаритные размеры: 15х15 мм;
- вес: 13-14 г.
Теперь рассмотрим подключение MCP4725 к Arduino. Можно использовать такой вариант:
В нем мы задействовали такие аппаратные компоненты как: плата расширения Ардуино Uno, модуль ЦАП, соединительные провода, USB-кабель для подключения к ноутбуку ∕ компьютеру.
Для проверки работоспособности и первоначального тестирования устройства, пропишем несложный программный код, т.е. скетч:
#include <Wire.h>
#include <Adafruit_MCP4725.h>
#include <LiquidCrystal.h>
#define MCP4725In A1
Adafruit_MCP4725 MCP4725;
LiquidCrystal lcd(8, 9, 4, 5, 6, 7);
void setup()
{
delay(1000);
lcd.begin(16,2);
MCP4725.begin(0x60);
// Считывание - требуемое значение
lcd.setCursor(0,0);
lcd.print("REQD: ");
// Считывание - наблюдаемое значение
lcd.setCursor(0,1);
lcd.print("OBSD: ");
}
void loop()
{
uint32_t MCP4725_value;
int adcInput = 0;
float voltageIn = 0;
float MCP4725_reading;
for (MCP4725_value = 0; MCP4725_value < 4096; MCP4725_value = MCP4725_value + 128)
{
delay(1000);
MCP4725_reading = (5.0/4096.0) * MCP4725_value;
MCP4725.setVoltage(MCP4725_value, false);
adcInput = analogRead(MCP4725In);
voltageIn = (adcInput * 5.0 )/ 1024.0;
lcd.setCursor(7,0);
lcd.print(MCP4725_reading,3);
lcd.setCursor(7,1);
lcd.print(voltageIn,3);
}
}
Наверняка вы заметили, что в описанной выше прошивке использовались сразу несколько специализированных библиотек: Wire (для управления интерфейсом), Adafruit_MCP4725 (для считывания значений), LiquidCrystal (для вывода информации на дисплей). Их нужно скачать и инсталлировать в среду IDE (папка libraries).https://github.com/adafruit/Adafruit_MCP4725На этом пока всё. Изучайте Arduino, собирайте интересные проекты и развивайтесь в свое удовольствие!
В данном материале хотим рассмотреть подключение HC-SR501 к Ардуино, а также основные моменты, связанные с базовыми характеристиками и особенностями...
Наш новый информационный обзор посвящен подключению AD9833 к Ардуино. Мы постараемся рассмотреть базовые особенности устройства, его преимущества и схему...
В этой статье обсуждаем подключение датчика температуры DS18B20 к Arduino. О подобных устройствах мы говорили мало, но это не означает, что их редко...
DRV8825 - один из самых популярных контроллеров биполярного шагового двигателя. Сегодня мы рассмотрим его базовые параметры и познакомимся со схемой...
Сегодня мы с вами рассмотрим универсальный синтезатор частоты на Ардуино и Si5351A. Чем он так хорош (среди своих аналогов) и как подключается к программной...