Μετάβαση στο κύριο περιεχόμενο

Αυτόνομο Θερμόμετρο TMP36 και I2C LCD

 

Αυτόνομο Θερμόμετρο  TMP36 και I2C LCD


θέλετε να εμφανίσετε τις ενδείξεις θερμοκρασίας σε πραγματικό χρόνο και να εμφανίσετε μια ειδοποίηση όταν η θερμοκρασία είναι εκτός του καθορισμένου εύρους. Τότε μάλλον θα χρειαστείτε μια οθόνη LCD 16×2 χαρακτήρων αντί για σειριακή οθόνη.

Σε αυτό το παράδειγμα, θα συνδέσουμε την οθόνη LCD I2C στο Arduino μαζί με το TMP36.

Η σύνδεση της οθόνης LCD I2C είναι αρκετά εύκολη όπως μπορείτε να δείτε στο παρακάτω διάγραμμα καλωδίωσης.

Το παρακάτω διάγραμμα σάς δείχνει πώς να καλωδιώσετε τα πάντα.



// Include the LiquidCrystal_I2C library

#include <LiquidCrystal_I2C.h>


// Create a new instance of the LiquidCrystal_I2C class

LiquidCrystal_I2C lcd(0x3F, 16, 2);


// Define a custom degree character

byte Degree[] = {

  B00111,

  B00101,

  B00111,

  B00000,

  B00000,

  B00000,

  B00000,

  B00000

};


// Define the analog pin, the TMP36's Vout pin is connected to

#define sensorPin A0


void setup() {

  // Start the LCD and turn on the backlight

  lcd.init();

  lcd.backlight();


  // Create a custom character

  lcd.createChar(0, Degree);

}


void loop() {

  // Get the voltage reading from the TMP36

  int reading = analogRead(sensorPin);


  // Convert that reading into voltage

  // Replace 5.0 with 3.3, if you are using a 3.3V Arduino

  float voltage = reading * (5.0 / 1024.0);


  // Convert the voltage into the temperature in Celsius

  float temperatureC = (voltage - 0.5) * 100;


  // Print the temperature on the LCD;

  lcd.setCursor(0, 0);

  lcd.print("Temperature:");

  lcd.setCursor(0, 1);

  lcd.print(temperatureC, 1);

  lcd.write(0); // print the custom degree character

  lcd.print("C ");

  

  // Print the temperature in Fahrenheit

  float temperatureF = (temperatureC * 9.0 / 5.0) + 32.0;

  lcd.print(temperatureF, 1);

  lcd.write(0); // print the custom degree character

  lcd.print("F ");


  delay(1000); // wait a second between readings

}

Θα πρέπει να δείτε την ακόλουθη έξοδο στην οθόνη LCD:























Σχόλια

Δημοφιλείς αναρτήσεις από αυτό το ιστολόγιο

Σερβοκινητήρας

  Βασικός έλεγχος σερβομηχανισμού Θα μάθουμε πώς να ελέγχετε έναν τυπικό σερβοκινητήρα, να πηγαίνει εμπρός και πίσω κατά 180 μοίρες, χρησιμοποιώντας ένα «βρόχο for()». Αυτό γίνεται με τη βοήθεια της βιβλιοθήκης Servo, η οποία είναι προεγκατεστημένη βιβλιοθήκη στο Arduino IDE (τόσο εκτός σύνδεσης όσο και σε ηλεκτρονική έκδοση). . Αυτό γίνεται με τη βοήθεια της βιβλιοθήκης  Servo     , η οποία είναι προεγκατεστημένη βιβλιοθήκη στο Arduino IDE (τόσο εκτός σύνδεσης όσο και σε ηλεκτρονική έκδοση).      Χρειαζόμαστε τα παρακάτω:     Arduino IDE Arduino UNO  Σερβοκινητήρας 4,8V - 6V  Καλώδια βραχυκυκλωτήρα. Τυπικοί σερβοκινητήρες Οι τυπικοί σερβοκινητήρες είναι ενεργοποιητές που επιτρέπουν τον ακριβή έλεγχο της θέσης (γωνία). Χαρακτηριστικό  είναι ότι η γωνία του κινητήρα είναι 0 - 180 μοίρες. Με άλλα λόγια, μπορεί να κάνει το μισό μιας περιστροφής. Ένας τυπικός σερβοκινητήρας, όπως και άλλοι κινητήρες, είναι ουσιαστικά απλώς ένας...

Αντιστάσεις pull up, pull down

  Αντιστάσεις pull up (Pull up resistors) Οι αντιστάσεις pull up  είναι πολύ συνηθισμένες όταν χρησιμοποιούνται μικροελεγκτές (MCU) ή οποιαδήποτε συσκευή ψηφιακής λογικής. Θα εξηγήσουμε πότε και πού να χρησιμοποιήσετε αντιστάσεις pull up και, στη συνέχεια, θα κάνουμε έναν απλό υπολογισμό για να δείξουμε γιατί είναι σημαντικά τα pull-ups. Τι είναι μια αντίσταση  Pull up Ας υποθέσουμε ότι έχετε ένα MCU με ένα pin διαμορφωμένο ως είσοδο. Εάν δεν υπάρχει τίποτα συνδεδεμένο με τον ακροδέκτη και το πρόγραμμά σας διαβάζει την κατάσταση του ακροδέκτη, θα είναι ψηλά (τραβηγμένο στο VCC) ή χαμηλό (τραβηγμένο στη γείωση);  Αυτό το φαινόμενο αναφέρεται ως  αιωρούμενο  (floating). Για να αποφευχθεί αυτή η άγνωστη κατάσταση, μια αντίσταση pull-up ή pull-down θα διασφαλίσει ότι η ακίδα βρίσκεται είτε σε υψηλή είτε σε χαμηλή κατάσταση, ενώ χρησιμοποιεί επίσης χαμηλή ποσότητα ρεύματος. Για απλότητα, θα εστιάσουμε στα pull-ups καθώς είναι πιο συνηθισμένα από τα pull-down. Λε...

Πώς να χρησιμοποιήσετε ένα Breadboard

  Πώς να χρησιμοποιήσετε ένα Breadboard Το breadboard έχει εσωτερικές συνδέσεις μεταξύ των οπών του. Μερικές κάθετες συνδέσεις και μερικές οριζόντιες συνδέσεις. Κανονικά, χρησιμοποιείτε τις κολώνες στα πλάγια για να συνδέσετε το τροφοδοτικό σας. Και χρησιμοποιείτε τις σειρές στη μέση για να συνδέσετε τα στοιχεία σας. Στήλες Τροφοδοτικού Είναι σύνηθες να χρησιμοποιείτε τις στήλες στα αριστερά και δεξιά για τη σύνδεση του τροφοδοτικού. Αυτές οι στήλες συνδέονται κάθετα. Έτσι, εάν συνδέσετε 5 βολτ στην επάνω οπή μιας από τις πλευρικές κολώνες, θα έχετε 5 βολτ σε όλες τις οπές αυτής της στήλης. Χρησιμοποιήστε τις στήλες που επισημαίνονται με κόκκινη γραμμή για το συν και τη στήλη με μπλε γραμμή για το μείον. Τέλος φόρμας Σημείωση: Μερικές μεγαλύτερες πλάκες   breadboard χωρίζονται στα δύο έτσι ώστε το πάνω μισό να αποσυνδεθεί από το κάτω μισό. Αυτό υποδεικνύεται από τις κατακόρυφες μπλε και κόκκινες γραμμές που χωρίζονται στα δύο.   Περιοχή Συστατικού Σ...