Activité pratique
Liaison série I²C : 7 questions 1 points sauf AP3 sur 2 points => 8 points
Durée approximative de l'activité pratique (4h) :
Analyser la trame d'un afficheur LCD branché en I2C.
Questions AP1 : Identifier sur le PINOUT DIAGRAM ci-dessous : les bornes utilisées par le bus I²C, soit SCL et SDA. Expliquez leur usage.

Câbler comme suit l'Arduino et l'écran LCD :

Ou pourra faire ce câblage ou bien utiliser le shield GROOVE en le branchant sur I2C.
Brancher les deux sondes de l'oscilloscope sur SCL et SDA, n'oubliez pas de brancher la masse.
FAITES VERIFIER PAR LE PROFESSEUR ET REALISER LE MONTAGE HORS TENSION.
Questions AP2 : Pourquoi y-a-t-il deux contrôleurs dans le Grove-LCD RGB Backlight ?

Voici le programme à insérer dans l'IDE Arduino :
#include <Wire.h>
#include "rgb_lcd.h"
rgb_lcd lcd;
const int colorR = 255;
const int colorG = 0;
const int colorB = 0;
void setup() {
// set up the LCD's number of columns and rows:
lcd.begin(16, 2);
lcd.setRGB(colorR, colorG, colorB);
// Print a message to the LCD.
lcd.print("hello, STI2D !");
delay(1000);
}
void loop() {
// set the cursor to column 0, line 1
// (note: line 1 is the second row, since counting begins with 0):
lcd.setCursor(0, 1);
// print the number of seconds since reset:
lcd.print(millis() / 1000);
delay(10);
}
/*********************************************************************************************************
END FILE
*********************************************************************************************************/
Si la bibliothèque LCD n'est pas installé, il faut ajouter celle-ci à la main :
En cliquant sur "Croquis" puis "Inclure une bibliothèque" et 
Télécharger le fichier Librairie LCD ici
Si c'est correct, ce message s'affiche :

Téléverser le programme.
Questions AP3 : Quelle est la consommation de l'écran LCD durant une heure de fonctionnement ?

Aide générale :
Voir le guide oscilloscope ICI
Expliquer le signal obtenu. Avec une clé usb, vous pouvez faire une capture d'écran que vous insérerez dans votre rapport.
Régler et capturer (capture d'écran de l'oscilloscope) le signal de l'oscilloscope numérique.
Questions AP4 : Vérifier que la trame adresse correspond bien à ce qui est dans le programme Arduino. Faites la conversion de binaire vers l'hexadécimale.
Questions AP5 : Vérifier que la trame données correspond bien à ce qui est dans le programme Arduino. Faites la conversion de binaire vers l'hexadécimale.
Exemple de trame correct :

N'hésitez pas à prendre plusieurs mesures.
Questions AP6 : On veut avoir ce signal sur l'oscilloscope, qu'est ce que je dois changer dans le programme Arduino pour réussir cela ?
Faite la manipulation et faire valider par le professeur.
Vous pouvez vous aider du guide I2C pour arduino.

Questions AP7 :
On souhaite faire varier la couleur du fond selon ce cycle :
Etat 1 puis état 2 puis état 3.
|
Etats |
Etat1 |
Etat2 |
Etat3 |
|
Rouge |
Varie de 0 à 255 |
0 |
0 |
|
Vert |
0 |
Varie de 0 à 255 |
0 |
|
Bleu |
0 |
0 |
Varie de 0 à 255 |
Ecrire l'algorigramme.
Copier vos modifications de programme dans votre rapport pour arriver à votre but.
Créé avec HelpNDoc Personal Edition: Faites de la documentation un jeu d'enfant avec un outil de création d'aide