Affichage de la température sur un afficheur LCD et sur un appareil Android : Différence entre versions

Ligne 21 : Ligne 21 :
 
* Des fils
 
* Des fils
 
|Tools=* Un ordinateur avec l’environnement de développement Arduino
 
|Tools=* Un ordinateur avec l’environnement de développement Arduino
[[data:image/gif;base64,R0lGODlhAQABAAD/ACwAAAAAAQABAAACADs=|lien=|classe=ve-ce-chimera ve-ce-chimera-gecko]]
 
 
}}
 
}}
 
{{Separator}}
 
{{Separator}}
Ligne 31 : Ligne 30 :
  
 
Des bouts de code ont été récupérés sur le web.
 
Des bouts de code ont été récupérés sur le web.
 
    include <LiquidCrystal.h>
 
 
    include <OneWire.h> // Inclusion de la librairie OneWire
 
 
    define DS18B20 0x28    // Adresse 1-Wire du DS18B20
 
 
    define BROCHE_ONEWIRE 10 // Broche utilisée pour le bus 1-Wire
 
 
OneWire ds(BROCHE_ONEWIRE); // Création de l’objet OneWire ds
 
 
// Fonction récupérant la température depuis le DS18B20↵// Retourne true si tout va bien, ou false en cas d’erreur↵boolean getTemperature(float *temp){↵byte data[9], addr[8];↵// data : Données lues depuis le scratchpad↵// addr : adresse du module 1-Wire détecté
 
 
if (!ds.search(addr)) { // Recherche un module 1-Wire↵ds.reset_search();    // Réinitialise la recherche de module↵return false;        // Retourne une erreur↵}
 
 
if (OneWire::crc8(addr, 7) != addr[7]) // Vérifie que l’adresse a été correctement reçue↵return false;                        // Si le message est corrompu on retourne une erreur
 
 
if (addr[0] != DS18B20) // Vérifie qu’il s’agit bien d’un DS18B20↵return false;        // Si ce n’est pas le cas on retourne une erreur
 
 
ds.reset();            // On reset le bus 1-Wire↵ds.select(addr);        // On sélectionne le DS18B20
 
 
ds.write(0x44, 1);      // On lance une prise de mesure de température↵delay(800);            // Et on attend la fin de la mesure
 
 
ds.reset();            // On reset le bus 1-Wire↵ds.select(addr);        // On sélectionne le DS18B20↵ds.write(0xBE);        // On envoie une demande de lecture du scratchpad
 
 
for (byte i = 0; i < 9; i++) // On lit le scratchpad↵data[i] = ds.read();      // Et on stock les octets reçus
 
 
// Calcul de la température en degré Celsius
 
 
    temp = ((data[1] << 8) | data[0]) * 0.0625;
 
 
// Pas d’erreur↵return true;↵}
 
 
// initialize the library with the numbers of the interface pins↵LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
 
 
void setup() {↵Serial.begin(9600); // Initialisation du port série↵// set up the LCD’s number of columns and rows:↵lcd.begin(16, 2);↵// Print a message to the LCD.↵lcd.print(« Temperature : »);↵}
 
 
void loop()↵{↵float temp;↵char c;↵lcd.setCursor(0, 1);
 
 
if(getTemperature(&temp)) {↵lcd.print(temp);↵}
 
 
if(Serial.available()){↵c = Serial.read();↵}
 
 
if(c ==’A’) {↵Serial.print(temp);↵}↵delay(500);
 
 
}
 
 
 
 
 
|Step_Picture_00=Affichage_de_la_temp_rature_sur_un_afficheur_LCD_et_sur_un_appareil_Android_temp_america_bb1.png
 
|Step_Picture_00=Affichage_de_la_temp_rature_sur_un_afficheur_LCD_et_sur_un_appareil_Android_temp_america_bb1.png
 
}}
 
}}

Version du 18 février 2017 à 00:26

Auteur avatarBernardet | Dernière modification 9/12/2019 par Clementflipo

Pas encore d'image

Il s'agit de mesurer une température et d'envoyer l'info vers un afficheur LCD ou un téléphone Android.
Difficulté
⧼wf-propertyvalue-difficulty-Facile⧽
Durée
1 ⧼wf-propertyvalue-durationtype-heure(s)⧽
Catégories
⧼wf-propertyvalue-area-Électronique⧽
Coût
30 EUR (€)
Autres langues :
English • ‎français

Matériaux

  • Une carte Arduino Nano
  • Un module bluetooth HC-06
  • Un afficheur LCD 2 lignes de 16 caractères chacune
  • Un capteur de température ds18b20
  • Un potentiomètre 10 kO (pour l'afficheur)
  • Une résistance 4.7 kO
  • Une plaque à insertion rapide
  • Des fils

Outils

  • Un ordinateur avec l’environnement de développement Arduino

Étape 1 - Schéma de câblage

Enlever le module bluetooth avant de charger le programme dans la carte Arduino et le remettre juste après sinon il y a des problèmes de communication entre l’ordinateur et la carte Arduino.

Pour récupérer la température sur son portable Android, installer l’application Bluetooth Terminal (de Qwerty il me semble). Une fois connecté, l’envoi de la lettre A permet de récupérer la température sur le téléphone.

Des bouts de code ont été récupérés sur le web.




Commentaires

Cochez cette case si vous considérez ce tutoriel terminé