
Оглавление:
2025 Автор: John Day | [email protected]. Последнее изменение: 2025-01-23 15:05

Долгое время я искал высотомер и температуру с помощью одного датчика и отображал их на OLED-экране на основе SPI. Поскольку я не смог найти ничего точного, подумал, что создам свой собственный, используя библиотеку U8glib. На YouTube есть одно руководство, но я очень ненавижу видеоуроки, я предпочитаю тексты с простыми инструкциями и без коммерческих ссылок.
Шаг 1. Первые дела в первую очередь
Перед тем, как приступить к этому проекту, я настоятельно рекомендую вам пройти обучение по SSD1306 / OLED для I2C или SPI (в зависимости от того, что вы хотите использовать). Это гарантирует, что вы знаете, как подключить / подключить дисплей, а также его работоспособность. Изучите учебник по adafruit и / или учебник по примерам u8glib. Здесь мы будем использовать u8glib, поэтому он рекомендуется для опытных пользователей.
Шаг 2: необходимое оборудование

1. Arduino UNO или Nano или аналогичный.
2. Датчик атмосферного давления BMP085 или BMP180.
3. SSD1306 I2C или шина SPI (настраивается в эскизе).
4. Перемычки и макетная или веро-плата для соединений.
Шаг 3. Библиотеки IDE Arduino для компиляции
1. Wire.h
2. Adafruit_BMP085.h (также будет работать с BMP180)
3. U8glib.h
Шаг 4: Подключения
Все подключения одинаковы как для I2C, так и для SPI OLED-дисплея. Только подключение к дисплею будет другим.
1. BMP для Arduino:
VCC> 3,3 В
GND> Земля
SCL> A5 / SCL
ПДД> А4 / ПДД
SCK = 12, MOSI = 11, CS = 10, A0 = 9, сброс = 13
2. SPI OLED для Arduino
VDD> 5 В
GND> Земля
SCK / D0> D12 (цифровой 12)
SDA / D1 / Mosi> D11
CS / Chip Select> D10
A0 / DC> D9
RES / сброс> D13
(Если на вашем SPI OLED нет контакта сброса, просто удалите контакт сброса и сброса с экрана эскиза, выберите параметры)
3. I2C OLED
Так же, как проводка BMP, они используют те же порты и тип шины.
Шаг 5. Загрузка эскиза
Довольно просто. Просто скачайте zip-файл и откройте его в Arduino IDE. Все настроено в скетче. Пользователи SPI OLED могут просто загрузить эскиз без какого-либо редактирования, и он будет работать. Для пользователей I2C OLED просто раскомментируйте свое отображаемое имя / параметр в параметре «Выбор отображения» эскиза, закомментируйте и закройте модель / параметр отображения SPI, чтобы отключить SPI OLED.
Параметр отображения SPI:
// U8GLIB_SSD1306_128X64 u8g (12, 11, 10, 9, 13); // SW SPI Com: SCK = 12, MOSI = 11, CS = 10, A0 = 9, Reset = 13
Параметр дисплея I2C:
// U8GLIB_SSD1306_128X64 u8g (U8G_I2C_OPT_NO_ACK); // Дисплей, который не отправляет AC
Чтобы включить параметр, просто удалите знак // в начале, чтобы не комментировать его. Убедитесь, что выбран / не прокомментирован только один дисплей.
Подсказки:
1. Датчики BMP чувствительны к ветру, жаре и свету. Обязательно накройте его, наилучшие результаты достигаются, если прикрепить пену с надлежащей вентиляцией. Такие вещи, как утиная лента, тоже подойдут, но не будут точными.
2. BMP обычно использует 3,3 В, если производитель не говорит иначе. OLED может работать от 3,3 В до 5,5 В (рекомендуется 4-5 В)
3. Настоятельно рекомендуется сначала установить все на макетной плате.
4. Если вы новичок в OLED, попробуйте сначала простые вещи, такие как текст и фиктивные буферы, чтобы убедиться, что дисплей ur работает, а ваши соединения точны.
Рекомендуемые:
Самолетный высотомер RC (совместим с телеметрией Spektrum): 7 шагов

Высотомер с дистанционным управлением (совместим со Spektrum Telemetry): я сделал этот высотомер, чтобы пилот мог знать, что он находится ниже предела в 400 футов на самолетах с дистанционным управлением в США. Мой друг был обеспокоен, так как не мог с уверенностью сказать, что он всегда находится ниже 400 футов, и хотел получить дополнительную уверенность в том, что датчик будет
Высотомер (высотомер) на основе атмосферного давления: 7 шагов (с изображениями)

Альтиметр (высотомер) на основе атмосферного давления: [Edit]; См. Версию 2 в шаге 6 с вводом базовой высоты вручную. Это описание конструкции высотомера (высотомера) на базе Arduino Nano и датчика атмосферного давления Bosch BMP180. Конструкция проста, но измерения
ЖК-дисплей I2C / IIC - Использование ЖК-дисплея SPI для ЖК-дисплея I2C Использование модуля SPI-IIC с Arduino: 5 шагов

ЖК-дисплей I2C / IIC | Используйте ЖК-дисплей SPI для ЖК-дисплея I2C Использование модуля SPI-IIC с Arduino: Привет, ребята, так как обычный ЖК-дисплей SPI 1602 имеет слишком много проводов для подключения, поэтому его очень сложно связать с Arduino, но на рынке доступен один модуль, который может преобразовать дисплей SPI в дисплей IIC, поэтому вам нужно подключить только 4 провода
Светодиодный компас и высотомер: 7 шагов (с изображениями)

Светодиодный компас и высотомер: объекты со светодиодами меня всегда восхищали. Поэтому этот проект объединяет популярный цифровой датчик компаса HMC5883L с 48 светодиодами. Поместив светодиоды по кругу, вы увидите, в каком направлении вы движетесь. Каждые 7,5 градусов будет др
Предварительный * SPI на Pi: обмен данными с 3-осевым акселерометром SPI с использованием Raspberry Pi: 10 шагов

Предварительный * SPI на Pi: Связь с 3-осевым акселерометром SPI с использованием Raspberry Pi: Пошаговое руководство по настройке Raspbian и взаимодействию с устройством SPI с использованием библиотеки SPI bcm2835 (НЕ битый!) очень предварительный … Мне нужно добавить более качественные фотографии физического подключения и проработать некоторый неудобный код