Πίνακας περιεχομένων:

Digitalηφιακό θερμόμετρο με Arduino & DS18B20: 7 βήματα
Digitalηφιακό θερμόμετρο με Arduino & DS18B20: 7 βήματα

Βίντεο: Digitalηφιακό θερμόμετρο με Arduino & DS18B20: 7 βήματα

Βίντεο: Digitalηφιακό θερμόμετρο με Arduino & DS18B20: 7 βήματα
Βίντεο: Ρολόι Ξυπνητήρι LED Καθρέφτης Digitalηφιακό Ρολόι Επιτραπέζιο Αναβολή Wake Up Light Ηλεκτρονικό 2024, Νοέμβριος
Anonim
Digitalηφιακό θερμόμετρο με Arduino & DS18B20
Digitalηφιακό θερμόμετρο με Arduino & DS18B20
Digitalηφιακό θερμόμετρο με Arduino & DS18B20
Digitalηφιακό θερμόμετρο με Arduino & DS18B20

Απλά δημιουργήστε ένα ψηφιακό θερμόμετρο με το οποίο μπορεί να σας πει την τρέχουσα θερμοκρασία δωματίου σε μια οθόνη LCD. Αυτό είναι ένα έργο για αρχάριους. Συσκευές που χρειάζεστε: 1. Arduino UNO R3 2. Αισθητήρας θερμοκρασίας DS18B20. 3. Οθόνη LCD 16X2. 4. Σύνδεση καλωδίων. 5. Πίνακας έργου. Τώρα ας φτιάξουμε ψηφιακό θερμόμετρο….. Αυτό είναι ένα pinte Atmega168 για το arduino. Απλώς παραλείψτε αυτό αν θέλετε να φτιάξετε αυτό το θερμόμετρο με το arduino σας.

Βήμα 1: Φτιάξτε Arduino στο Breadboard

Φτιάξτε Arduino στο Breadboard
Φτιάξτε Arduino στο Breadboard

Η δημιουργία arduino σε ζαχαροπλαστείο είναι πολύ εύκολη. Τώρα βήμα προς βήμα η διαδικασία καλωδίωσης δίνεται παρακάτω: 1. Pin 7 -> +5V 2. Pin8 -> GND 3. Pin9 -> Crystal -> 22pF πυκνωτής -> GND 4. Pin10-> Crystal -> 22pF πυκνωτής -> GND 5. pin 22 -> GND 6. Pin21 & Pin20 -> +5V 7. Pin1-> 10K καταχωρητής στο GND +Κουμπί πίεσης έως +5V Τώρα είστε έτοιμοι ……………..

Βήμα 2: Σύνδεση LCD

Σύνδεση LCD
Σύνδεση LCD

Βήμα 3: Σύνδεση αισθητήρα θερμοκρασίας DS18B20

Σύνδεση αισθητήρα θερμοκρασίας DS18B20
Σύνδεση αισθητήρα θερμοκρασίας DS18B20

Βήμα 4: Προετοιμασία του κυκλώματος

Προετοιμασία του κυκλώματος
Προετοιμασία του κυκλώματος

Συνδέστε την οθόνη LCD με το atmega ή το arduino σύμφωνα με το προεπιλεγμένο παράδειγμα LCD στο arduino IDE. Τώρα συνδέστε το δίαυλο DS1307 DATA στο DIGITAL PIN 7 (Atmega pin 13)

Βήμα 5: Κωδικός Arduino

#include #include #include int DS18S20_Pin = 7; // Πείρος σήματος DS18S20 σε ψηφιακή 7 από rahulmitra LiquidCrystal LCD (12, 11, 5, 4, 3, 2). // Τσιπ θερμοκρασίας i/o OneWire ds (DS18S20_Pin); // στον ψηφιακό pin 7 από rahulmitra void setup (void) {Serial.begin (9600); lcd. αρχή (16, 2); // Εκτυπώστε ένα μήνυμα στην οθόνη LCD. lcd.print ("Rahul Mitra"); } void loop (void) {float temperature = getTemp (); Serial.println (θερμοκρασία); lcd.setCursor (0, 1); lcd.print ("Temp:"); lcd.print (θερμοκρασία) lcd.print (" *C"); καθυστέρηση (100)? // απλά εδώ για να επιβραδύνει την έξοδο, ώστε να είναι ευκολότερο να διαβάσετε} float getTemp () {// επιστρέφει τη θερμοκρασία από ένα DS18S20 σε δεδομένα byte DEG Κελσίου [12]; byte addr [8]; εάν (! ds.search (addr)) {// δεν υπάρχουν άλλοι αισθητήρες στην αλυσίδα, επαναφέρετε την αναζήτηση ds.reset_search (); επιστροφή -1000? } if (OneWire:: crc8 (addr, 7)! = addr [7]) {Serial.println ("Το CRC δεν είναι έγκυρο!"); επιστροφή -1000? } if (addr [0]! = 0x10 && addr [0]! = 0x28) {Serial.print ("Η συσκευή δεν αναγνωρίζεται"); επιστροφή -1000? } ds.reset (); ds.select (addr); ds.write (0x44, 1); // έναρξη μετατροπής, με ενεργοποιημένο το παράσιτο στο τέλος byte παρόν = ds.reset (); ds.select (addr); ds.write (0xBE); // Διαβάστε το Scratchpad για (int i = 0; i <9; i ++) {// χρειαζόμαστε δεδομένα 9 byte = ds.read (); } ds.reset_search (); byte MSB = δεδομένα [1]; byte LSB = δεδομένα [0]; float tempRead = ((MSB << 8) | LSB); // χρησιμοποιώντας το float compliment float TemperatureSum = tempRead /16; επιστροφή TemperatureSum; }

Βήμα 6: Επιτέλους τα έχετε κάνει

Επιτέλους Τα Έκανες
Επιτέλους Τα Έκανες
Επιτέλους Τα Έκανες
Επιτέλους Τα Έκανες

Βήμα 7: Δείτε LIVE

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

Συνιστάται: