Kazalo:

Digitalni termometer z Arduino in DS18B20: 7 korakov
Digitalni termometer z Arduino in DS18B20: 7 korakov

Video: Digitalni termometer z Arduino in DS18B20: 7 korakov

Video: Digitalni termometer z Arduino in DS18B20: 7 korakov
Video: Подключим к Arduino Датчик температуры DS18B20 2024, Julij
Anonim
Digitalni termometer z Arduino in DS18B20
Digitalni termometer z Arduino in DS18B20
Digitalni termometer z Arduino in DS18B20
Digitalni termometer z Arduino in DS18B20

Preprosto ustvarite digitalni termometer, ki vam lahko na LCD zaslonu pove trenutno temperaturo prostora. To je projekt za začetnike. Aparati, ki jih potrebujete: 1. Arduino UNO R3 2. Temperaturni senzor DS18B20. 3. LCD zaslon 16X2. 4. Priključitev žic. 5. Projektni odbor. Zdaj pa naredimo digitalni termometer ….. To je Atmega168 pinout za arduino. To preskočite, če želite narediti ta termometer s svojim arduinom.

1. korak: Arduino naredite na deski

Naredite Arduino na deski
Naredite Arduino na deski

Ustvarjanje arduina na omari je zelo enostavno. Spodaj je opisan postopek ožičenja korak za korakom: 1. Pin 7 -> +5V 2. Pin8 -> GND 3. Pin9 -> kristal -> 22pF kondenzator -> GND 4. Pin10-> kristal -> 22pF kondenzator -> GND 5. pin 22 -> GND 6. Pin21 & Pin20 -> +5V 7. Pin1-> 10K registrator na GND +Pritisnite gumb na +5V Zdaj ste pripravljeni ……………..

2. korak: Priključitev LCD -ja

Priključitev LCD -ja
Priključitev LCD -ja

3. korak: Priključitev temperaturnega senzorja DS18B20

Priključitev temperaturnega senzorja DS18B20
Priključitev temperaturnega senzorja DS18B20

4. korak: Priprava vezja

Priprava vezja
Priprava vezja

Povežite LCD z atmego ali arduino v skladu s privzetim primerom LCD v arduino IDE. Zdaj povežite vodilo DATA DS1307 z DIGITALNO PIN 7 (Atmega pin 13)

5. korak: KODA Arduino

#include #include #include int DS18S20_Pin = 7; // Signalni zatič DS18S20 na digitalnem 7 LCD -ja rahulmitra LiquidCrystal (12, 11, 5, 4, 3, 2); // Temperaturni čip v/i OneWire ds (DS18S20_Pin); // na digitalnem pin 7 z rahulmitra void setup (void) {Serial.begin (9600); lcd.begin (16, 2); // Natisnite sporočilo na LCD. lcd.print ("Rahul Mitra"); } void loop (void) {float temperature = getTemp (); Serial.println (temperatura); lcd.setCursor (0, 1); lcd.print ("Temp:"); lcd.tisk (temperatura); lcd.print (" *C"); zamuda (100); // samo tukaj, da upočasnimo izhod, tako da je lažje brati} float getTemp () {// vrne temperaturo iz enega DS18S20 v bajtnih podatkih DEG Celzija [12]; dodatek bajtov [8]; če (! ds.search (addr)) {// ni več senzorjev v verigi, ponastavite iskanje ds.reset_search (); vračilo -1000; } if (OneWire:: crc8 (addr, 7)! = addr [7]) {Serial.println ("CRC ni veljaven!"); vračilo -1000; } if (addr [0]! = 0x10 && addr [0]! = 0x28) {Serial.print ("Naprava ni prepoznana"); vračilo -1000; } ds.reset (); ds.select (addr); ds.write (0x44, 1); // začetek pretvorbe z vklopljenim parazitom na zadnjem bajtu = ds.reset (); ds.select (addr); ds.write (0xBE); // beremo Scratchpad za (int i = 0; i <9; i ++) {// potrebujemo 9 bajtnih podatkov = ds.read (); } ds.reset_search (); bajt MSB = podatki [1]; bajt LSB = podatki [0]; float tempRead = ((MSB << 8) | LSB); // z uporabo dveh komplimentov float TemperatureSum = tempRead /16; povratna temperaturaSum; }

6. korak: Končno ste končali

Končno ste storili
Končno ste storili
Končno ste storili
Končno ste storili

7. korak: Glejte V ŽIVO

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

Priporočena: