Talaan ng mga Nilalaman:

Digital Thermometer Na May Arduino & DS18B20: 7 Mga Hakbang
Digital Thermometer Na May Arduino & DS18B20: 7 Mga Hakbang

Video: Digital Thermometer Na May Arduino & DS18B20: 7 Mga Hakbang

Video: Digital Thermometer Na May Arduino & DS18B20: 7 Mga Hakbang
Video: FLProg10: датчик температуры DS18B20 | ESP32 NodeMCU | Визуальное программирование для Arduino 2024, Hulyo
Anonim
Digital Thermometer Sa Arduino at DS18B20
Digital Thermometer Sa Arduino at DS18B20
Digital Thermometer Sa Arduino at DS18B20
Digital Thermometer Sa Arduino at DS18B20

Lumikha lamang ng isang digital thermometer na maaaring sabihin sa iyo ang kasalukuyang temperatura ng kuwarto sa isang LCD screen. Ito ay isang proyekto ng nagsisimula. Patakaran na kailangan mo: 1. Arduino UNO R3 2. DS18B20 temperatura sensor. 3. 16X2 LCD display. 4. Pagkonekta ng mga wire. 5. Board ng proyekto. Hinahayaan na ngayong gumawa ng digital thermometer….. Ito ay isang Atmega168 pinout para sa arduino. Laktawan lang ito kung sasabihin mo upang gawin ang thermometer na ito kasama ang iyong arduino.

Hakbang 1: Gumawa ng Arduino sa Breadboard

Gawin ang Arduino sa Breadboard
Gawin ang Arduino sa Breadboard

Napakadali ng paglikha ng arduino sa isang breaboard. Ngayon sunud-sunod na pamamaraan ng mga kable ay ibinibigay sa ibaba: 1. Pin 7 -> + 5V 2. Pin8 -> GND 3. Pin9 -> Crystal -> 22pF capacitor -> GND 4. Pin10-> Crystal -> 22pF capacitor -> GND 5. pin 22 -> GND 6. Pin21 & Pin20 -> + 5V 7. Pin1-> 10K registor sa GND + Push button sa + 5V Ngayon handa ka na ……………..

Hakbang 2: Pagkonekta sa LCD

Kumokonekta sa LCD
Kumokonekta sa LCD

Hakbang 3: Pagkonekta sa DS18B20 Temperature Sensor

Pagkonekta sa DS18B20 Temperature Sensor
Pagkonekta sa DS18B20 Temperature Sensor

Hakbang 4: Paghahanda ng Circuit

Paghahanda ng Circuit
Paghahanda ng Circuit

Ikonekta ang LCD sa atmega o arduino ayon sa default na halimbawa ng LCD sa arduino IDE. Ikonekta ngayon ang DS1307 DATA bus sa DIGITAL PIN 7 (Atmega pin 13)

Hakbang 5: Arduino CODE

#include #include #include int DS18S20_Pin = 7; // DS18S20 Signal pin sa digital 7 ni rahulmitra LiquidCrystal lcd (12, 11, 5, 4, 3, 2); // Temperature chip i / o OneWire ds (DS18S20_Pin); // sa digital pin 7 ni rahulmitra void setup (void) {Serial.begin (9600); lcd.begin (16, 2); // I-print ang isang mensahe sa LCD. lcd.print ("Rahul Mitra"); } void loop (void) {float temperatura = getTemp (); Serial.println (temperatura); lcd.setCursor (0, 1); lcd.print ("Temp:"); lcd.print (temperatura); lcd.print ("* C"); pagkaantala (100); // dito lang upang mabagal ang output kaya mas madaling basahin ang} float getTemp () {// ibabalik ang temperatura mula sa isang DS18S20 sa DEG Celsius byte data [12]; byte addr [8]; kung (! ds.search (addr)) {// wala nang mga sensor sa chain, i-reset ang paghahanap ds.reset_search (); ibalik -1000; } kung (OneWire:: crc8 (addr, 7)! = addr [7]) {Serial.println ("Hindi wasto ang CRC!"); ibalik -1000; } kung (addr [0]! = 0x10 && addr [0]! = 0x28) {Serial.print ("Hindi kinikilala ang aparato"); ibalik -1000; } ds.reset (); ds.select (addr); ds.write (0x44, 1); // start conversion, na may lakas na parasito sa dulo byte present = ds.reset (); ds.select (addr); ds.write (0xBE); // Basahin ang Scratchpad para sa (int i = 0; i <9; i ++) {// kailangan namin ng 9 bytes data = ds.read (); } ds.reset_search (); byte MSB = data [1]; byte LSB = data [0]; float tempRead = ((MSB << 8) | LSB); // gamit ang papuri ng dalawa float TemperatureSum = tempRead / 16; ibalik ang TemperaturaSum; }

Hakbang 6: Sa wakas Nagawa Mo na

Sa wakas Tapos Na
Sa wakas Tapos Na
Sa wakas Tapos Na
Sa wakas Tapos Na

Hakbang 7: Tingnan ang LIVE

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

Inirerekumendang: