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