Метеостанция на датчике BMP180, дисплее LCD-1602, и контроллере Arduino nano
Метеостанция на датчике BMP180, дисплее LCD-1602, и контроллере Arduino nano
Показывает температуру и давление
Обратка LCD 1602 с шиной I2C |
Метеостанция на BMP180 и LCD-1602 на Arduino nano |
Модуль питания ардуино 3.3 и 5 вольт |
Датчик BMP180 |
Требуется
Железо
- Блок питания 9v. Впрочем, подойдет как и другой источник питания от 7-12 вольт через штекер с плюсом внутри, так и питание от 5 вольт.
- Макетная плата
- Модуль питания для ардуино 3.3 вольта + 5 вольт
- Перемычки
- Датчик BMP180 (BMP085)(gy-68)
- Ардуино Нано
- Дисплей 1602 с шиной I2C
Софт
- Устанавливаем среду Arluino IDE (Устанавливаем программу Arduino IDE)
- Скачиваем библиотеки (zip)
- Для дисплея с I2C (дополнительная плата сзади дисплея для подключения к ардуино по 2 проводам)
- Для датчика BMP180
Действия
Запускаем Arduino IDE - Скетч - Подключить библиотеку - добавить ZIP библиотеку - добавляем скачанные библиотеки.
Грузим в окно вот этот код:
#include <LiquidCrystal_I2C.h>
#include <Wire.h>
#include <BMP085.h>
LiquidCrystal_I2C lcd(0x27, 16, 2); // присваиваем имя lcd для дисплея 16х2
BMP085 dps = BMP085();
long Temperature = 0, Pressure = 0;
void setup(void) {
Serial.begin(9600); // инициализация последовательного порта
Wire.begin(); // инициализация шины I2C
delay(1000);
dps.init();
lcd.begin(); // инициализация LCD дисплея
lcd.backlight(); // включение подсветки дисплея
}
void loop(void) {
dps.getPressure(&Pressure);
dps.getTemperature(&Temperature);
Serial.print("Pressure(mm Hg):");
Serial.print(Pressure/133.3); //Выводим давление в мм.рт ст
Serial.print("Temp:");
Serial.println(Temperature*0.1-3.6); // Температуру в градусах Цельсия
delay(2000);
lcd.setCursor(0,0); // устанавливаем курсор на 0 символ первой строки
lcd.print("Davlenie: ");
lcd.print(Pressure/133.3);
lcd.setCursor(0,1); // устанавливаем курсор на начало второй строки
lcd.print("Temperat: ");
lcd.println(Temperature*0.1-3.6); // Температуру в градусах Цельсия
}
Комментарии
Отправить комментарий