Offline
Newbie
Karma: 0
Posts: 29
|
 |
« on: December 08, 2012, 12:09:05 pm » |
Voila, mon premier montage, l'affichage de la temperature sur un LCD et sur le moniteur serie... Un debut pour ma prochaine station météo... Des bouts de codes recuperes dans les exemples, sur le net... Modification apportées en fonction du capteur de temp que j'ai et qui differe de celui de l'exemple, un LCD pas cher et donc peu lisible... Commentaires bienvenus. Code : // include the library code: #include <LiquidCrystal.h>
// initialize the library with the numbers of the interface pins LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
//MCP9701E-TO Pin Variables int sensorPin = 0; //the analog pin the MCP9701E's Vout (sense) pin is connected to //the resolution is 19.5 mV / degree centigrade with a //400 mV offset to allow for negative temperatures /* * setup() - this function runs once when you turn your Arduino on * We initialize the serial connection with the computer */ void setup() { // set up the LCD's number of columns and rows: lcd.begin(16, 2); // Print a message to the LCD. lcd.print("Temperature"); Serial.begin(9600); //Start the serial connection with the computer //to view the result open the serial monitor } void loop() // run over and over again { //getting the voltage reading from the temperature sensor int reading = analogRead(sensorPin); // converting that reading to voltage, for 3.3v arduino use 3.3 float voltage = reading * 5.0; voltage /= 1024.0; // print out the voltage Serial.print(voltage); Serial.println(" volts"); // now print out the temperature float temperatureC = (voltage - 0.4) * 51; //converting from 19.5 mv per degree with 400 mV offset //to degrees ((volatge - 400mV) times 100) Serial.print(temperatureC,1); Serial.println(" degres C");
// set the cursor to column 0, line 1 // (note: line 1 is the second row lcd.setCursor(0, 1); // print the Temperature: lcd.print(temperatureC,1);
delay(5000); //waiting 5 seconds
|
|
|
|
« Last Edit: December 09, 2012, 12:48:09 pm by Jean-François »
|
Logged
|
|
|
|
|
France
Offline
Edison Member
Karma: 12
Posts: 1801
There is an Arduino for that
|
 |
« Reply #1 on: December 08, 2012, 02:47:45 pm » |
Merci de faire partager ton expérience. Juste 2 remarques: 1) les images plus petites (800x600 selon la charte du site) 2) le programme entre balises (bouton # dans la barre d'outils de la page de saisie des posts)
|
|
|
|
|
Logged
|
|
|
|
|
Offline
Jr. Member
Karma: 1
Posts: 90
|
 |
« Reply #2 on: December 08, 2012, 07:26:39 pm » |
Salut
Félicitation pour ton premier montage. Tu dis, LCD peu lisible. Sur ta photo, on dirait que le "backlight" n'est pas en fonction. Est ce le cas?
|
|
|
|
|
Logged
|
|
|
|
|
Offline
Newbie
Karma: 0
Posts: 29
|
 |
« Reply #3 on: December 09, 2012, 12:30:03 pm » |
Voila, mon premier montage, l'affichage de la temperature sur un LCD et sur le moniteur serie... Un debut pour ma prochaine station météo... Des bouts de codes recuperes dans les exemples, sur le net... Modification apportées en fonction du capteur de temp que j'ai et qui differe de celui de l'exemple, un LCD pas cher et donc peu lisible... Commentaires bienvenus. Code :
// include the library code: #include <LiquidCrystal.h>
// initialize the library with the numbers of the interface pins LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
//MCP9701E-TO Pin Variables int sensorPin = 0; //the analog pin the MCP9701E's Vout (sense) pin is connected to //the resolution is 19.5 mV / degree centigrade with a //400 mV offset to allow for negative temperatures /* * setup() - this function runs once when you turn your Arduino on * We initialize the serial connection with the computer */ void setup() { // set up the LCD's number of columns and rows: lcd.begin(16, 2); // Print a message to the LCD. lcd.print("Temperature"); Serial.begin(9600); //Start the serial connection with the computer //to view the result open the serial monitor } void loop() // run over and over again { //getting the voltage reading from the temperature sensor int reading = analogRead(sensorPin); // converting that reading to voltage, for 3.3v arduino use 3.3 float voltage = reading * 5.0; voltage /= 1024.0; // print out the voltage Serial.print(voltage); Serial.println(" volts"); // now print out the temperature float temperatureC = (voltage - 0.4) * 51; //converting from 19.5 mv per degree with 400 mV offset //to degrees ((volatge - 400mV) times 100) Serial.print(temperatureC,1); Serial.println(" degres C");
// set the cursor to column 0, line 1 // (note: line 1 is the second row lcd.setCursor(0, 1); // print the Temperature: lcd.print(temperatureC,1);
delay(5000); //waiting 5 seconds
|
|
|
|
« Last Edit: December 09, 2012, 12:55:57 pm by laurentjeuxlille »
|
Logged
|
|
|
|
|
Offline
Newbie
Karma: 0
Posts: 29
|
 |
« Reply #4 on: December 09, 2012, 12:33:05 pm » |
Salut
Félicitation pour ton premier montage. Tu dis, LCD peu lisible. Sur ta photo, on dirait que le "backlight" n'est pas en fonction. Est ce le cas?
Bonne question pour le backlight... aucune idée en fait... j'ai juste un potentiometre 10k pour regler le texte, mais le backlight je ne sais pas. Peut etre une histoire de jumper au dos, j'ai vu ca dans le datasheet, mais ne sachant pas dans quoi je me lancais, je n'y ai pas touché. Une aide de ton côté ? Merci
|
|
|
|
|
Logged
|
|
|
|
|
Forum Moderator
Geneva
Online
Faraday Member
Karma: 22
Posts: 2878
Yoplait... le pt'it suisse
|
 |
« Reply #5 on: December 09, 2012, 12:34:21 pm » |
Tu n'as pas tout lu..... 2) le programme entre balises (bouton # dans la barre d'outils de la page de saisie des posts)
|
|
|
|
|
Logged
|
MacBook intel core 2 duo os X snow Leopard 10.6 eMac PPc G4 os X Leopard 10.5 powerbook G4 os X Leopard 10.5 imac PPC G3 os X Panther 10.3.9 Arduino Diecimila Arduino Mega Arduino Standalone Arduino 1307.04 
|
|
|
|
Offline
Newbie
Karma: 0
Posts: 29
|
 |
« Reply #6 on: December 09, 2012, 12:35:58 pm » |
Euh, si, le code est dans les quote... il me semble. La ref du ldc est LCD16216SBH si moyen de modifier le backlight, je suis preneur.
|
|
|
|
« Last Edit: December 09, 2012, 12:37:56 pm by laurentjeuxlille »
|
Logged
|
|
|
|
|
Forum Moderator
Geneva
Online
Faraday Member
Karma: 22
Posts: 2878
Yoplait... le pt'it suisse
|
 |
« Reply #7 on: December 09, 2012, 12:49:35 pm » |
Euh, si, le code est dans les quote
Pas lors de mon derniers message.....  elle est facile celle là... Autrement c'est pas entre quote qu'il faut mettre, mais code le bouton avec # .... voilà, voilà 
|
|
|
|
|
Logged
|
MacBook intel core 2 duo os X snow Leopard 10.6 eMac PPc G4 os X Leopard 10.5 powerbook G4 os X Leopard 10.5 imac PPC G3 os X Panther 10.3.9 Arduino Diecimila Arduino Mega Arduino Standalone Arduino 1307.04 
|
|
|
|
Offline
Newbie
Karma: 0
Posts: 29
|
 |
« Reply #8 on: December 09, 2012, 12:55:04 pm » |
je vais y arriver !
sinon une info, il me semble qu'il faut connecter les pin 15 et 16 pour utiliser le backlight...
|
|
|
|
|
Logged
|
|
|
|
|
Forum Moderator
Geneva
Online
Faraday Member
Karma: 22
Posts: 2878
Yoplait... le pt'it suisse
|
 |
« Reply #9 on: December 09, 2012, 12:59:32 pm » |
|
|
|
|
|
Logged
|
MacBook intel core 2 duo os X snow Leopard 10.6 eMac PPc G4 os X Leopard 10.5 powerbook G4 os X Leopard 10.5 imac PPC G3 os X Panther 10.3.9 Arduino Diecimila Arduino Mega Arduino Standalone Arduino 1307.04 
|
|
|
|
Offline
Newbie
Karma: 0
Posts: 29
|
 |
« Reply #10 on: December 09, 2012, 01:51:12 pm » |
Yep, connection cathode/anode et !!!!!!!!!!!!!!!!!! lumière.
Tout de suite on voit mieux.
Merci
|
|
|
|
|
Logged
|
|
|
|
|
Forum Moderator
Geneva
Online
Faraday Member
Karma: 22
Posts: 2878
Yoplait... le pt'it suisse
|
 |
« Reply #11 on: December 09, 2012, 01:53:21 pm » |
C'est bientôt Nowelll... 
|
|
|
|
|
Logged
|
MacBook intel core 2 duo os X snow Leopard 10.6 eMac PPc G4 os X Leopard 10.5 powerbook G4 os X Leopard 10.5 imac PPC G3 os X Panther 10.3.9 Arduino Diecimila Arduino Mega Arduino Standalone Arduino 1307.04 
|
|
|
|
|