Modifications

Sauter à la navigation Sauter à la recherche
1 143 octets ajoutés ,  13 janvier 2013 à 15:39
Ligne 144 : Ligne 144 :  
Du côté Arduino, vous n'avez besoin que d'un simple programme (sketch). Il ouvre la connexion série vers le Pi et envoi les différentes commandes d'affichage.
 
Du côté Arduino, vous n'avez besoin que d'un simple programme (sketch). Il ouvre la connexion série vers le Pi et envoi les différentes commandes d'affichage.
    +
=== Programme Arduino ===
 +
<nowiki>int pos = 0, width = 1;
 +
 +
void setup() {
 +
  Serial.begin(9600); // Initialize serial connection
 +
 +
  // Envoyer la commande d'intialisation du ViewPort au serveur d'affichage du Pi.
 +
  // Cette commande n'est pas encore implémentée sur le serveur python... elle est donc ignorée
 +
  Serial.print("init 500 500\r\n");
 +
}
 +
 +
// Fonction d'aide pour enviyer la commande "draw x y w h\r\n" au Pi
 +
void draw_rect(int x, int y, int w, int h) {
 +
  Serial.print("rect ");
 +
  Serial.print(x);
 +
  Serial.print(' ');
 +
  Serial.print(y);
 +
  Serial.print(' ');
 +
  Serial.print(w);
 +
  Serial.print(' ');
 +
  Serial.print(h);
 +
  Serial.print("\r\n");
 +
}
 +
 +
void loop() {
 +
  int n;
 +
 
 +
  if(pos + width > 500)
 +
    return; // Sortir une fois que la commande "exit" est envoyée.
 +
   
 +
  delay(500); // Dessiner un nouveau rectangle toutes les 500 ms
 +
  draw_rect(pos, pos, width, width); // Carré placé à la position (pos, pos)
 +
 +
  pos += width; // incrémenter les position x et y
 +
  width++; // Agrandir la largeur (et hauteur) du rectangle
 +
 
 +
  if(pos + width > 500) // Le viewport est maintenant rempli
 +
    Serial.print("exit\r\n");
 +
}</nowiki>
    
=== Upload du programme ===
 
=== Upload du programme ===
29 910

modifications

Menu de navigation