Explication de code Arduino
DJBRAV
Messages postés
78
Statut
Membre
-
DJBRAV Messages postés 78 Statut Membre -
DJBRAV Messages postés 78 Statut Membre -
Bonjour, j'ai un capteur de température i2c, le tmp102. Je l'ai branché sur mon arduino. J'ai besoin de ce code
#include <Wire.h>
int adressetmp102 = 0x48;
void setup(){
Serial.begin(9600);
Wire.begin();
}
float recuptemp(){
Wire.requestFrom(adressetmp102,2);
byte MSB = Wire.read();
byte LSB = Wire.read();
int tempdecal = ((MSB << 8) | LSB) >> 4;
float tempcelsius = tempdecal*0.0625;
return tempcelsius;
}
void loop(){
float tempcelsius = recuptemp();
Serial.print("La temperature actuelle est de :");
Serial.println(tempcelsius);
delay(200);
}
Quelqu'un pourrait m'expliquer le fonctionnement de ce programme, ou du moins une partie. Je lui en serai très reconnaissant.
Merci de vos réponses.
#include <Wire.h>
int adressetmp102 = 0x48;
void setup(){
Serial.begin(9600);
Wire.begin();
}
float recuptemp(){
Wire.requestFrom(adressetmp102,2);
byte MSB = Wire.read();
byte LSB = Wire.read();
int tempdecal = ((MSB << 8) | LSB) >> 4;
float tempcelsius = tempdecal*0.0625;
return tempcelsius;
}
void loop(){
float tempcelsius = recuptemp();
Serial.print("La temperature actuelle est de :");
Serial.println(tempcelsius);
delay(200);
}
Quelqu'un pourrait m'expliquer le fonctionnement de ce programme, ou du moins une partie. Je lui en serai très reconnaissant.
Merci de vos réponses.
A voir également:
- Explication de code Arduino
- Code ascii - Guide
- Code puk bloqué - Guide
- Code de déverrouillage oublié - Guide
- Code activation windows 10 - Guide
- Scanner qr code pc - Guide
2 réponses
http://pastebin.com/2TUpyaTr
Voilà, un bon codeur idente son code, et l'upload sur pastebin si il est trop gros (en général, supérieur à 20 lignes)
Voilà, un bon codeur idente son code, et l'upload sur pastebin si il est trop gros (en général, supérieur à 20 lignes)
Salut,
Ce n'est pas compliqué mais ... Arduino, c'est pas du Java ?
Bref.
La fonction recuptemp() récupère la valeur de la broche sur laquelle est branché le capteur.
tempdecal correspond à une valeur entière quantitative de la température, et ensuite on la multiplie par 0.0625 (ça doit être spécifique au capteur).
recuptemp() est donc une fonction de CAN (Conversion Analogique-Numérique).
La fonction loop() est exécutée en boucle et permet d'afficher toutes les 200 millisecondes la température actuelle du capteur dans la liaison série (Réglée à 9600 bauds dans Setup)
Ce n'est pas compliqué mais ... Arduino, c'est pas du Java ?
Bref.
La fonction recuptemp() récupère la valeur de la broche sur laquelle est branché le capteur.
tempdecal correspond à une valeur entière quantitative de la température, et ensuite on la multiplie par 0.0625 (ça doit être spécifique au capteur).
recuptemp() est donc une fonction de CAN (Conversion Analogique-Numérique).
La fonction loop() est exécutée en boucle et permet d'afficher toutes les 200 millisecondes la température actuelle du capteur dans la liaison série (Réglée à 9600 bauds dans Setup)
J'ai passé un exm au BAC SIN avec un projet fait sur Arduino, au début je pensais c'était du C aussi puis finalement, je sais pu où, j'ai appris que c'était du Java, mais les deux sont très proches c'est vrai (Si on oublie le multi-plateformes).
Mais ce n'est sûrement pas du C++ (C'est trop gros pour de l'embarqué), ou alors on peut choisir ... je me suis quand même permis de déplacer le sujet dans Java.
En tous cas, la documentation est très bien fournie (Si on a des bases en Anglais).
https://www.arduino.cc/reference/en/#.UxfCxYXivDc
Mais ce n'est sûrement pas du C++ (C'est trop gros pour de l'embarqué), ou alors on peut choisir ... je me suis quand même permis de déplacer le sujet dans Java.
En tous cas, la documentation est très bien fournie (Si on a des bases en Anglais).
https://www.arduino.cc/reference/en/#.UxfCxYXivDc