MPU6050 — 6-осевой акселерометр и гироскоп (IMU)

GY-521 (MPU6050) ITG

MPU6050 — это 6-осевой инерциальный датчик (IMU, Inertial Measurement Unit) производства InvenSense, объединяющий в одном корпусе 3-осевой МЭМС-гироскоп и 3-осевой МЭМС-акселерометр. Отличительная особенность чипа — встроенный DMP (Digital Motion Processor), аппаратный блок, способный самостоятельно выполнять сенсорное слияние (sensor fusion) и выдавать готовые кватернионы ориентации, снижая нагрузку на микроконтроллер. Чаще всего встречается в виде готового модуля … Читать далее

Электронные часы на Arduino: модуль DS3231 и двухцветный OLED-экран

Модуль часов DS3231 с батарейкой CR2032 и двухцветный OLED-экран на макетной плате показывают дату, время и температуру

Сегодня сделаем настоящие электронные часы. Они показывают день недели, дату и время, мигают двоеточием, а заодно измеряют температуру. И самое главное: время не слетает, даже если Arduino выключить на несколько лет. Как это возможно, сейчас расскажу. Для этого нам понадобится модуль DS3231. Это «часы реального времени» (по-английски RTC, Real Time Clock): маленькая плата с микросхемой, … Читать далее

Четырёхканальный вольтметр на Arduino: АЦП ADS1115 и двухцветный OLED-экран

Крупный план OLED-экрана и модуля ADS1115: вверху жёлтая строка ADS1115 +-6.1V, ниже таблица 2 на 2 с напряжениями A0 3,284 В, A1 1,614 В, A2 0,659 В и A3 4,835 В

Сегодня соберём точный вольтметр на четыре входа. Он может одновременно измерять напряжение на четырёх разных источниках: на батарейке, на выходе датчика, на потенциометре, на выводе платы. И показывает все четыре числа на экране с точностью до тысячных долей вольта. Для этого нам понадобится микросхема ADS1115. Это «аналого-цифровой преобразователь» (АЦП): устройство, которое превращает напряжение в число. … Читать далее

OLED-дисплей SSD1306 128×64 (I²C)

Синий OLED-дисплей SSD1306 128x64 с четырьмя выводами GND, VDD, SCK, SDA на чёрной плате; на экране тестовая картинка с индикаторами сигнала, батареи и эквалайзером

SSD1306 — это контроллер монохромных OLED-дисплеев производства Solomon Systech, а под этим же названием на рынке распространены готовые модули 128×64 (и 128×32) точек с интерфейсом I2C. OLED-экраны не требуют подсветки (каждый пиксель светится самостоятельно), за счёт чего обладают высоким контрастом, широким углом обзора и малым энергопотреблением при отображении преимущественно тёмных изображений. Технические характеристики Распиновка модуля … Читать далее

Барометр, высотомер и люксметр на Arduino: датчики BMP280 и TSL2561 и двухцветный OLED-экран

Датчик давления BMP280, датчик освещённости TSL2561 и двухцветный OLED-экран на макетной плате; на экране режим AIR 1/2: температура 23,8 °C, давление 756 мм рт. ст., высота 39 м

Сегодня соберём компактную станцию, которая измеряет температуру, атмосферное давление, высоту над уровнем моря и освещённость. Сюда же можно приделать подставку и носить с собой: отличный «барометр-высотомер». Здесь мы возьмём «младшего брата» датчика BME280 — BMP280 (без датчика влажности, зато дешевле) — и датчик света TSL2561. Мы узнаем: Опыт в электронике не нужен. Всё объясняю с … Читать далее

Термометр и гигрометр на Arduino: датчик DHT12 и OLED-экран по двум проводам

Датчик DHT12 и OLED-экран

Сегодня соберём маленький «домашний метеоприбор»: он измеряет температуру и влажность воздуха и показывает их на крошечном экране. Такой же прибор можно собрать и на датчике DHT22. Здесь мы возьмём его младшего брата DHT12 и узнаем, чем он интересен. Главная фишка DHT12 в том, что он умеет общаться по шине I2C, как и наш экран. А … Читать далее

DS18B20 — цифровой датчик температуры с интерфейсом 1-Wire

dallas DS18B20

DS18B20 — цифровой датчик температуры производства Maxim Integrated, первоначально разработанный Dallas Semiconductor. Сейчас продукт входит в каталог Analog Devices. Датчик использует протокол 1-Wire, позволяющий обмениваться данными через одну сигнальную линию и землю. В отличие от аналоговых датчиков, например LM35 или терморезисторов, DS18B20 выполняет преобразование температуры внутри микросхемы и передаёт цифровое значение в градусах Цельсия. Для … Читать далее

Урок 2. Последовательный порт UART в Maixduino/K210

Урок 2. Последовательный порт UART в Maixduino (K210) - Подключение

На плате Maixduino есть 3 последовательных порта (UART): «/dev/uart1», «/dev/uart2» и «/dev/uart3».  Первый порт («/dev/uart1») используется FreeRTOS как порт для отладки и прошивки. По этому не рекомендуется использовать, а два других порта можно использовать для обмена данными с внешними устройствами. В этом уроке настроим последовательный порт (UART), напишем пример программы и будем передавать данные между Maixduino … Читать далее

Урок 1. Кнопка, светодиод. Функции управления вводом/выводом. Первая программа

Maixduino - оборудование

В этом уроке напишем первую программу, научимся считывать значение цифровых входов и устанавливать состояние выходов. Реализуем управление такими простыми элементами, как кнопка и светодиод на платформе Maixduino. Что нужно знать Существует 3 фреймворка для разработки приложений для процессора К210: Standalone SDK для Kendryte K210; Kendryte FreeRTOS SDK — Этот SDK предназначен для Kendryte K210, который … Читать далее

PlatformIO и Visual Studio Code для программирования Arduino, ESP32, Maixduino и не только

PlatformIO и Visual Studio Code для программирования Arduino, ESP32, Maixduino и не только

В этой статье приведены пошаговые инструкции по установке и настройке расширения PlatformIO в Visual Studio Code для дальнейшего программирования Arduino, ESP32, ESP8266, Maixduino, Raspberry Pi и не только. Visual Studio Code Visual Studio Code — редактор исходного кода (IDE, Integrated Development Environment), основанный на Electron и разработанный Microsoft для Windows, Linux и macOS. Позиционируется как «лёгкий» … Читать далее