Оглавление:

Цифровой термометр с Arduino и DS18B20: 7 шагов
Цифровой термометр с Arduino и DS18B20: 7 шагов

Видео: Цифровой термометр с Arduino и DS18B20: 7 шагов

Видео: Цифровой термометр с Arduino и DS18B20: 7 шагов
Видео: Датчик температуры DS18B20: Обзор, подключение к Arduino и пример скетча 2024, Июль
Anonim
Цифровой термометр с Arduino и DS18B20
Цифровой термометр с Arduino и DS18B20
Цифровой термометр с Arduino и DS18B20
Цифровой термометр с Arduino и DS18B20

Просто создайте цифровой термометр, который покажет вам текущую температуру в помещении на ЖК-экране. Это проект для начинающих. Аппарат, который вам понадобится: 1. Arduino UNO R3 2. Датчик температуры DS18B20. 3. ЖК-дисплей 16X2. 4. Соединительные провода. 5. Доска проекта. Теперь давайте сделаем цифровой термометр … Это распиновка Atmega168 для Arduino. Просто пропустите это, если вы хотите сделать этот термометр с помощью Arduino.

Шаг 1. Сделайте Arduino на макетной плате

Сделайте Arduino на макетной плате
Сделайте Arduino на макетной плате

Создать ардуино на бордо очень просто. Теперь пошаговая процедура подключения приведена ниже: 1. Контакт 7 -> + 5 В 2. Контакт 8 -> GND 3. Контакт 9 -> Кристалл -> конденсатор 22 пФ -> Земля 4. Контакт 10-> Кристалл -> конденсатор 22 пФ -> Земля 5. контакт 22 -> GND 6. Pin21 и Pin20 -> + 5V 7. Pin1-> регистр 10K на GND + нажмите кнопку на + 5V Теперь вы готовы ……………..

Шаг 2: Подключение ЖК-дисплея

Подключение LCD
Подключение LCD

Шаг 3: Подключение датчика температуры DS18B20

Подключение датчика температуры DS18B20
Подключение датчика температуры DS18B20

Шаг 4: Подготовка схемы

Подготовка схемы
Подготовка схемы

Подключите ЖК-дисплей к atmega или arduino в соответствии с примером ЖК-дисплея по умолчанию в среде разработки arduino. Теперь подключите шину DATA DS1307 к ЦИФРОВОМУ ПИН 7 (ПИН 13 Atmega).

Шаг 5: КОД Arduino

# включить # включить # включить int DS18S20_Pin = 7; // Сигнальный вывод DS18S20 на цифровом 7 от rahulmitra LiquidCrystal lcd (12, 11, 5, 4, 3, 2); // Температура ввода-вывода микросхемы OneWire ds (DS18S20_Pin); // на цифровом выводе 7 с помощью rahulmitra void setup (void) {Serial.begin (9600); lcd.begin (16, 2); // Выводим сообщение на ЖК-дисплей. lcd.print («Рахул Митра»); } void loop (void) {температура поплавка = getTemp (); Serial.println (температура); lcd.setCursor (0, 1); lcd.print ("Температура:"); lcd.print (температура); lcd.print ("* C"); задержка (100); // только здесь, чтобы замедлить вывод, чтобы его было легче читать} float getTemp () {// возвращает температуру с одного DS18S20 в DEG Celsius byte data [12]; адрес байта [8]; if (! ds.search (addr)) {// больше нет датчиков в цепочке, сбросить поиск ds.reset_search (); return -1000; } if (OneWire:: crc8 (addr, 7)! = addr [7]) {Serial.println («CRC недействителен!»); return -1000; } if (addr [0]! = 0x10 && addr [0]! = 0x28) {Serial.print («Устройство не распознано»); return -1000; } ds.reset (); ds.select (адрес); ds.write (0x44, 1); // запуск преобразования с включенным паразитным питанием в конце байта present = ds.reset (); ds.select (адрес); ds.write (0xBE); // Считываем блокнот для (int i = 0; i <9; i ++) {// нам нужно 9 байтов data = ds.read (); } ds.reset_search (); байт MSB = данные [1]; байт LSB = данные [0]; float tempRead = ((MSB << 8) | LSB); // использование двух дополнений float TemperatureSum = tempRead / 16; return TemperatureSum; }

Шаг 6: наконец-то все готово

Наконец-то вы сделали
Наконец-то вы сделали
Наконец-то вы сделали
Наконец-то вы сделали

Шаг 7. Смотрите в прямом эфире

www.youtube.com/watch?v=7718FODdtio&list=UUY916I6z4Y3QQhzjHsIhR8w

Рекомендуемые: