Obsah:

Digitální teploměr s Arduino a DS18B20: 7 kroků
Digitální teploměr s Arduino a DS18B20: 7 kroků

Video: Digitální teploměr s Arduino a DS18B20: 7 kroků

Video: Digitální teploměr s Arduino a DS18B20: 7 kroků
Video: How to Make a Temperature Gauge with Arduino and DS18B20 Sensor 🤯😍 2024, Listopad
Anonim
Digitální teploměr s Arduino a DS18B20
Digitální teploměr s Arduino a DS18B20
Digitální teploměr s Arduino a DS18B20
Digitální teploměr s Arduino a DS18B20

Jednoduše vytvořte digitální teploměr, který vám na LCD obrazovce sdělí aktuální pokojovou teplotu. Jedná se o projekt pro začátečníky. Potřebné zařízení: 1. Arduino UNO R3 2. Teplotní senzor DS18B20. 3. LCD displej 16X2. 4. Propojovací vodiče. 5. Deska projektu. Nyní si vyrobme digitální teploměr ….. Toto je pinout Atmega168 pro arduino. Přeskočte to, pokud chcete tento teploměr vyrobit s arduino.

Krok 1: Vytvořte Arduino na prkénku

Vytvořte Arduino na prkénku
Vytvořte Arduino na prkénku

Vytvoření arduina na prkně je velmi snadné. Nyní je postup zapojení krok za krokem uveden níže: 1. Pin 7 -> +5V 2. Pin8 -> GND 3. Pin9 -> Crystal -> 22pF kondenzátor -> GND 4. Pin10-> Crystal -> 22pF kondenzátor -> GND 5. pin 22 -> GND 6. Pin21 & Pin20 -> +5V 7. Pin1-> 10K registrátor na GND +Tlačítko na +5V Nyní jste připraveni ……………..

Krok 2: Připojení LCD

Připojení LCD
Připojení LCD

Krok 3: Připojení teplotního senzoru DS18B20

Připojení teplotního senzoru DS18B20
Připojení teplotního senzoru DS18B20

Krok 4: Příprava obvodu

Příprava obvodu
Příprava obvodu

Propojte LCD s atmega nebo arduino podle výchozího příkladu LCD na arduino IDE. Nyní připojte DS1307 DATA sběrnici k DIGITÁLNÍMU PIN 7 (Atmega pin 13)

Krok 5: Arduino CODE

#include #include #include int DS18S20_Pin = 7; // Signální pin DS18S20 na digitálním 7 od rahulmitra LiquidCrystal lcd (12, 11, 5, 4, 3, 2); // Teplotní čip i/o OneWire ds (DS18S20_Pin); // na digitálním pinu 7 od rahulmitra void setup (void) {Serial.begin (9600); lcd.begin (16, 2); // Vytiskne zprávu na LCD. lcd.print („Rahul Mitra“); } void loop (void) {float temperature = getTemp (); Serial.println (teplota); lcd.setCursor (0, 1); lcd.print ("Teplota:"); lcd.print (teplota); lcd.print (" *C"); zpoždění (100); // právě zde ke zpomalení výstupu, aby bylo snáze čitelné} float getTemp () {// vrací teplotu z jednoho DS18S20 v bajtových datech Celsius [12]; byte addr [8]; if (! ds.search (addr)) {// žádné další senzory v řetězci, reset hledání ds.reset_search (); návrat -1000; } if (OneWire:: crc8 (addr, 7)! = addr [7]) {Serial.println ("CRC není platné!"); návrat -1000; } if (addr [0]! = 0x10 && addr [0]! = 0x28) {Serial.print ("Zařízení není rozpoznáno"); návrat -1000; } ds.reset (); ds.select (addr); ds.write (0x44, 1); // zahájení převodu se zapnutým parazitem na konci byte = ds.reset (); ds.select (addr); ds.write (0xBE); // Přečíst Scratchpad pro (int i = 0; i <9; i ++) {// potřebujeme 9 bajtů dat = ds.read (); } ds.reset_search (); bajt MSB = data [1]; byte LSB = data [0]; float tempRead = ((MSB << 8) | LSB); // pomocí dvou kompliment float TemperatureSum = tempRead /16; návrat TeplotaSum; }

Krok 6: Konečně máte hotovo

Konečně máte hotovo
Konečně máte hotovo
Konečně máte hotovo
Konečně máte hotovo

Krok 7: Viz LIVE

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

Doporučuje: