Outils pour utilisateurs

Outils du site


wiki:projets:vivant-non-vivant:accueil

Vivant non-vivant

  • Porteur(s) du projet : Nicolas Jacoutot
  • Date : 01/05/2019
  • Licence : libre !
  • Contexte : Exposition au Chateau Borély
  • Fichiers : liens éventuels
  • Lien : lien vers un site éventuellement

Description

Matériaux

-Seeeduino / écran groove LCD RGB / Bouton

Inclure les librairies :

#include <Wire.h>

( permet de relier facilement un microprocesseur et différents circuits, notamment ceux d'un écran LCD)

#include "rgb_lcd.h"

(pour l'utilisation de l'écran LCD RGB)

Objectif du Programme

Un bouton permet d'afficher différent messages aléatoirement

Tutoriel

Avec carte seeeduino :

Avec carte Arduino Uno :

Code Arduino

#include <Wire.h>
#include "rgb_lcd.h"

rgb_lcd lcd;

int delaytime = 200;

String msgs1[]= {"Humeur","Amour","Penssée","Réfléction", "Amis", "Gouts", "Mémoire Visuel","Resentie", "A merry heart","Seize the day.", "Carpe diem.", "Prince Charming"};
String msgs2[] = {"synchronisation","synchronisation","synchronisation","synchronisation", "synchronisation", "synchronisation", "synchronisation","synchronisation","synchronisation.","", "", "synchronisation"}; //registre de messages avec appelle aléatoire (string)

byte bigHeart[8] = { // dessin du coeur annim1 (affiche par pixel)
    0b00000,
    0b01010,
    0b11111,
    0b11111,
    0b11111,
    0b01110,
    0b00100,
    0b00000
};

byte smallHeart[8] = { // dessin du coeur annim2
    0b00000,
    0b00000,
    0b01010,
    0b01110,
    0b00100,
    0b00000,
    0b00000,
    0b00000
};

void setup()
{
  lcd.begin(16, 2);
  #if 1
  lcd.createChar(0, bigHeart);
  lcd.createChar(1, smallHeart);
  #endif
  // animation du dessin du coeur
  
}

void loop()
{
  if(digitalRead(4) == 1)
  {
    delay(10);
    if(digitalRead(4) == 1)
    {
      lcd.setRGB(0, 50, 100); //couleur de l'écran
     int randomNum = random(0, 12); //selection du message aléatoire
     lcd.clear();
     lcd.setCursor(1, 0); //sur la ligne 1
     lcd.print(msgs1[randomNum]); //affichage du message 1
     lcd.setCursor(1, 1); //ligne 2 de l'écran
     lcd.print(msgs2[randomNum]); //affichage du message2
     delay(3000); vitesse d'affichage
    }
  }
  else
  {
    openning();
  }    
}

void openning()
{
  lcd.setRGB(250, 10, 25); couleur de l'écran
  lcd.setCursor(1, 0);//ligne 1 de l'écran
  lcd.print("Hello Professeur");//message
  lcd.setCursor(1, 1);//ligne 2 de l'écran
  lcd.print("press to check"); //message ligne 2
  bouncing(15,1);
}

void bouncing(int x, int y)
{
    lcd.setCursor(x, y);
    lcd.write((unsigned char)0);
    delay(delaytime);
    lcd.setCursor(x, y);
    lcd.write((unsigned char)1);
    delay(delaytime);
}

Photos

Simulation

Réalisation

wiki/projets/vivant-non-vivant/accueil.txt · Dernière modification: 2019/05/27 10:54 (modification externe)