Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente |
issue86:arduino [2014/12/20 23:48] – d52fr | issue86:arduino [2014/12/21 16:54] (Version actuelle) – andre_domenech |
---|
I have to be honest and admit that it took me about five tries to get the LCD screen to work properly. The example code in the Arduino IDE explicitly states that the LCD needs only about 6 wires. Rubbish! It requires about 12 of the 16 used as it (obviously) requires power, ground, and at least one wire to a potentiometer (pot) or PWM pin to control the screen brightness. After about two tries I was getting a bit frustrated and ended up just pulling all the wires out and starting again. Fifth time lucky! I finally got a “Hello World!” message and could brighten/darken the screen using a 10k pot.** | I have to be honest and admit that it took me about five tries to get the LCD screen to work properly. The example code in the Arduino IDE explicitly states that the LCD needs only about 6 wires. Rubbish! It requires about 12 of the 16 used as it (obviously) requires power, ground, and at least one wire to a potentiometer (pot) or PWM pin to control the screen brightness. After about two tries I was getting a bit frustrated and ended up just pulling all the wires out and starting again. Fifth time lucky! I finally got a “Hello World!” message and could brighten/darken the screen using a 10k pot.** |
| |
C'est le moment de découvrir l'écran LCD et et de mettre en route un affichage en sortie du processeur. | C'est le moment de découvrir l'écran LCD et de mettre en route un affichage en sortie du processeur. |
| |
Je dois être honnête et admettre qu'il m'a fallu 5 essais avant que l'écran LCD fonctionne correctement. Le code exemple dans l'Arduino IDE établit explicitement que le LCD n'utilise que 6 fils. Erreur ! Il a besoin de 12 des 16 fils parce qu'il a besoin du plus d'alimentation (évidemment), de la masse, et d'au moins 1 fil vers un potentiomètre (pot) ou le contact PWM pour régler la luminosité de l'écran. Après 2 essais environ, j'étais un peu dépité et finissais de sortir tous les fils pour recommencer. Chanceux à la 5ème fois ! J'avais enfin le message "Hello World" et je pouvais éclaircir ou assombrir l'écran avec un potentiomètre de 10k. | Je dois être honnête et admettre qu'il m'a fallu 5 essais avant que l'écran LCD fonctionne correctement. Le code exemple dans l'Arduino IDE affirme explicitement que le LCD n'utilise que 6 fils. Erreur ! Il a besoin de 12 des 16 fils parce qu'il a besoin de plus d'alimentation (évidemment), de la masse, et d'au moins 1 fil vers un potentiomètre (pot) ou le contact PWM pour régler la luminosité de l'écran. Après 2 essais environ, j'étais un peu dépité ; j'ai fini par déconnecter tous les fils pour recommencer à partir de zéro. La 5e fois fut la bonne ! J'avais enfin le message « Hello World » et je pouvais éclaircir ou assombrir l'écran avec un potentiomètre de 10k. |
| |
**Humidity Sensor | **Humidity Sensor |
Capteur d'humidité | Capteur d'humidité |
| |
Précédemment, j'avais bricolé avec mon capteur d'humidité/ Ça demande un peu de recherche pour avoir un code correct car le code livré avec le kit ne se compilait pas. Je suis tombé sur du code ici : http://playground.arduino.cc/main/DHT11Lib qui est pour le module DHT11 (utilisé aussi par mon capteur). Comme indiqué sur cette page, il est nécessaire de créer 2 fichiers - dht11.h et dht11.cpp - et de coller le bon code (depuis cette page) dans les 2 fichiers. Maintenant, je peux compiler le code venant de cette page et obtenir un capteur d'humidité en état de marche qui affiche la température et l'humidité sur l'affichage série de l'Arduino IDE. Le câblage du capteur est assez facile car il n'a besoin que du 5V (contact central, sans indication), - (masse) et le contact S(ensor, [NdT pour "capteur"]) sortant vers l'Arduino. | Avant ça, j'avais fignolé le capteur d'humidité. Avoir du code correct demande un peu de recherche, car le code livré avec le kit ne se compilait même pas. Je suis tombé sur du code ici : http://playground.arduino.cc/main/DHT11Lib qui est pour le module DHT11 (utilisé aussi par mon capteur). Comme indiqué sur cette page, il est nécessaire de créer 2 fichiers : dht11.h et dht11.cpp, et de coller le code approprié (depuis cette page) dans les 2 fichiers. Maintenant, je peux compiler le code venant de cette page et obtenir un capteur d'humidité en état de marche qui affiche la température et l'humidité sur l'affichage série de l'Arduino IDE. Le câblage du capteur est assez facile, car il n'a besoin que du 5V (contact central, sans repère), |
| (masse) et le contact S(ensor), [NdT pour « capteur »]) sortant vers l'Arduino. |
| |
**Assemble! | **Assemble! |
Assemblage ! | Assemblage ! |
| |
Avec ces fonctions en état de marche (indépendamment) il est temps d'essayer de combiner les codes (et les pièces) sur une seule carte pour créer un thermomètre digital. Ce fût plus facile que je ne le pensais. J'ai ouvert le code du capteur d'humidité je l'ai simplement copié dans le code LCD, y compris la ligne d'initialisation et inclus les variables d'humidité dans la commande lcd.print - et voilà ! [NdT : ce dernier mot en français dans le texte]. | Avec ces deux fonctions en état de marche (indépendamment), le moment était venu d'essayer de combiner les codes (et les pièces) sur une seule plaque pour créer un thermomètre digital. Ce fut plus facile que je ne le pensais. J'ai ouvert le code du capteur d'humidité et je l'ai tout simplement copié dans le code LCD, y compris la ligne d'initialisation et inclus les variables d'humidité dans la commande lcd.print - et voilà ! [NdT : ce dernier en français dans le texte]. |
| |
Mon code (pour votre plaisir) est à : http://pastebin.com/jtkK38ES | Mon code (pour votre plaisir) se trouve ici : http://pastebin.com/jtkK38ES |
| |
Comme vous pouvez le voir, l'unité des degrés centigrades (°C) n'est pas affichée correctement. Un sympathique Redditor m'a transmis le code présenté à gauche (que je n'ai pas encore testé). | Comme vous pouvez le voir, l'unité des degrés centigrades (°C) n'est pas affichée correctement. Un sympathique membre de Reddit m'a transmis le code présenté à gauche (que je n'ai pas encore testé). |
| |
Voici un outil sympa qui vous permet de créer vos propres caractères personnalisés : http://fusion94.org/lcdchargen/ | Voici un outil sympa qui vous permet de créer vos propres caractères personnalisés : http://fusion94.org/lcdchargen/ |
| |