Πίνακας περιεχομένων:
2025 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2025-01-13 06:57
TMP100 Υψηλής ακρίβειας, χαμηλής ισχύος, Digitalηφιακή μονάδα αισθητήρα θερμοκρασίας I2C MINI. Το TMP100 είναι ιδανικό για εκτεταμένη μέτρηση θερμοκρασίας. Αυτή η συσκευή προσφέρει ακρίβεια ± 1 ° C χωρίς να απαιτείται βαθμονόμηση ή ρύθμιση εξωτερικού σήματος εξαρτήματος. Εδώ είναι η επίδειξη με τον Arduino Nano.
Βήμα 1: Αυτό που χρειάζεστε..
1. Arduino Nano
2. TMP100
3. Καλώδιο I²C
4. I²C Shield για Arduino Nano
Βήμα 2: Σύνδεση:
Πάρτε μια ασπίδα I2C για το Arduino Nano και σπρώξτε την απαλά πάνω από τις ακίδες του Nano.
Στη συνέχεια, συνδέστε το ένα άκρο του καλωδίου I2C στον αισθητήρα TMP100 και το άλλο άκρο στην ασπίδα I2C.
Οι συνδέσεις φαίνονται στην παραπάνω εικόνα.
Βήμα 3: Κωδικός:
Μπορείτε να κατεβάσετε τον κωδικό Arduino για το TMP100 από το αποθετήριο GitHub-Dcube Store
Εδώ είναι ο σύνδεσμος για το ίδιο:
github.com/DcubeTechVentures/TMP100..
Περιλαμβάνουμε τη βιβλιοθήκη Wire.h για τη διευκόλυνση της επικοινωνίας I2c του αισθητήρα με την πλακέτα Arduino.
Μπορείτε επίσης να αντιγράψετε τον κώδικα από εδώ, δίνεται ως εξής:
// Διανέμεται με άδεια ελεύθερης βούλησης.
// Χρησιμοποιήστε το με όποιον τρόπο θέλετε, κερδοφόρο ή δωρεάν, υπό την προϋπόθεση ότι ταιριάζει στις άδειες των σχετικών έργων του.
// TMP100
// Αυτός ο κώδικας έχει σχεδιαστεί για να λειτουργεί με το Mini Module TMP100_I2CS I2C που διατίθεται στο Dcube Store.
#περιλαμβάνω
// Η διεύθυνση TMP100 I2C είναι 0x4F (79)
#define Addr 0x4F
void setup ()
{
// Αρχικοποίηση επικοινωνίας I2C ως MASTER
Wire.begin ();
// Αρχικοποίηση σειριακής επικοινωνίας, ρυθμισμένος ρυθμός baud = 9600
Serial.begin (9600);
// Έναρξη μετάδοσης I2C
Wire.beginTransmission (Addr);
// Επιλέξτε καταχωρητής διαμόρφωσης
Wire.write (0x01);
// Ορίστε συνεχή μετατροπή, λειτουργία σύγκρισης, ανάλυση 12-bit
Wire.write (0x60);
// Διακοπή μετάδοσης I2C
Wire.endTransmission ();
καθυστέρηση (300)?
}
κενός βρόχος ()
{
ανυπόγραφα δεδομένα int [2];
// Έναρξη μετάδοσης I2C
Wire.beginTransmission (Addr);
// Επιλέξτε μητρώο δεδομένων
Wire.write (0x00);
// Διακοπή μετάδοσης I2C
Wire.endTransmission ();
// Ζητήστε 2 byte δεδομένων
Wire.requestFrom (Addr, 2)?
// Διαβάστε 2 byte δεδομένων
// cTemp msb, cTemp lsb
εάν (Wire.available () == 2)
{
δεδομένα [0] = Wire.read ();
δεδομένα [1] = Wire.read ();
}
// Μετατρέψτε τα δεδομένα
float cTemp = (((δεδομένα [0] * 256) + (δεδομένα [1] & 0xF0)) / 16) * 0.0625;
float fTemp = cTemp * 1.8 + 32;
// Έξοδος δεδομένων σε σειριακή οθόνη
Serial.print ("Θερμοκρασία σε Κελσίου:");
Serial.print (cTemp);
Serial.println ("C");
Serial.print ("Θερμοκρασία σε Φαρενάιτ:");
Serial.print (fTemp);
Serial.println ("F");
καθυστέρηση (500)?
}
Βήμα 4: Εφαρμογές:
Διάφορες εφαρμογές που ενσωματώνουν ψηφιακό αισθητήρα θερμοκρασίας χαμηλής ισχύος TMP100 υψηλής ακρίβειας περιλαμβάνουν παρακολούθηση θερμοκρασίας τροφοδοσίας, περιφερειακή θερμική προστασία υπολογιστή, διαχείριση μπαταρίας καθώς και μηχανήματα γραφείου.