Sisukord:

Digitaalne termomeeter koos Arduino ja DS18B20 -ga: 7 sammu
Digitaalne termomeeter koos Arduino ja DS18B20 -ga: 7 sammu

Video: Digitaalne termomeeter koos Arduino ja DS18B20 -ga: 7 sammu

Video: Digitaalne termomeeter koos Arduino ja DS18B20 -ga: 7 sammu
Video: Digitaalne termomeeter välisaatjaga valge 2024, Juuli
Anonim
Digitaalne termomeeter koos Arduino ja DS18B20 -ga
Digitaalne termomeeter koos Arduino ja DS18B20 -ga
Digitaalne termomeeter koos Arduino ja DS18B20 -ga
Digitaalne termomeeter koos Arduino ja DS18B20 -ga

Lihtsalt looge digitaalne termomeeter, mille abil saate LCD -ekraanil öelda praeguse toatemperatuuri. See on algajate projekt. Vajalikud seadmed: 1. Arduino UNO R3 2. DS18B20 temperatuuriandur. 3. 16X2 LCD ekraan. 4. Juhtmete ühendamine. 5. Projekti juhatus. Nüüd teeme digitaalse termomeetri….. See on Atmega168 pistikupesad arduino jaoks. Lihtsalt jätke see vahele, kui näete seda termomeetrit koos arduinoga.

Samm: tehke Arduino leivaplaadile

Tehke leivalaual Arduino
Tehke leivalaual Arduino

Arduino loomine breaboardil on väga lihtne. Nüüd on samm -sammult juhtmestik allpool toodud: 1. Pin 7 -> +5V 2. Pin8 -> GND 3. Pin9 -> Crystal -> 22pF kondensaator -> GND 4. Pin10-> Crystal -> 22pF kondensaator -> GND 5. tihvt 22 -> GND 6. Pin21 ja Pin20 -> +5V 7. Pin1-> 10K GND registreerija +Vajutage nuppu +5V -le Nüüd olete valmis ……………..

Samm: LCD -ekraani ühendamine

LCD ühendamine
LCD ühendamine

Samm: ühendage temperatuuriandur DS18B20

DS18B20 temperatuurianduri ühendamine
DS18B20 temperatuurianduri ühendamine

Samm: vooluringi ettevalmistamine

Ringkonnakohtu ettevalmistamine
Ringkonnakohtu ettevalmistamine

Ühendage vedelkristallekraan atmega või arduinoga vastavalt arduino IDE vaikimisi näidisele. Nüüd ühendage DS1307 DATA siin DIGITAL PIN 7 -ga (Atmega pin 13)

Samm: Arduino KOOD

#include #include #include int DS18S20_Pin = 7; // DS18S20 Signal pin on digital 7 by rahulmitra LiquidCrystal lcd (12, 11, 5, 4, 3, 2); // Temperatuurikiip i/o OneWire ds (DS18S20_Pin); // digipistikul 7 by rahulmitra void setup (void) {Serial.begin (9600); lcd.algus (16, 2); // Printige teade LCD -ekraanile. lcd.print ("Rahul Mitra"); } void loop (void) {float temperatuur = getTemp (); Serial.println (temperatuur); lcd.setCursor (0, 1); lcd.print ("Temp:"); lcd.print (temperatuur); lcd.print (" *C"); viivitus (100); // just siin väljundi aeglustamiseks, et seda oleks lihtsam lugeda} float getTemp () {// tagastab ühe DS18S20 temperatuuri DEG Celsiuse baitides [12]; baitide lisaja [8]; if (! ds.search (addr)) {// ahelas pole enam andureid, lähtesta otsing ds.reset_search (); tagastus -1000; } if (OneWire:: crc8 (addr, 7)! = addr [7]) {Serial.println ("CRC ei kehti!"); tagastus -1000; } if (addr [0]! = 0x10 && addr [0]! = 0x28) {Serial.print ("Seadet ei tuvastata"); tagastus -1000; } ds.reset (); ds.select (addr); ds.write (0x44, 1); // alusta teisendamist, parasiitide sisselülitamine lõpus bait olemas = ds.reset (); ds.select (addr); ds.write (0xBE); // Lugege märkmikku (int i = 0; i <9; i ++) {// vajame 9 baiti andmeid = ds.read (); } ds.reset_search (); bait MSB = andmed [1]; bait LSB = andmed [0]; float tempRead = ((MSB << 8) | LSB); // kasutades kahe komplimendi ujukit TemperatureSum = tempRead /16; tagasipöördumine TemperatureSum; }

6. samm: lõpuks olete lõpetanud

Lõpuks olete teinud
Lõpuks olete teinud
Lõpuks olete teinud
Lõpuks olete teinud

7. samm: vaadake LIVE

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

Soovitan: