Re: Tour eiffel lumineuse
Posted: 07 Aug 2009, 18:31
Maintenant je sais : faire clignoter plusieurs leds, controler les leds avec un bouton poussoir ou avec un potentiomètre.....
Bref tout se passe pas mal.
Tous ces progrès sont réalisés à partir du site d'Arduino qui propose des tutoriels très complets.http://arduino.cc/en/Tutorial/HomePage
On dispose du schéma du montage ainsi que du code du programme. Il reste plus qu'à envoyer le programme ds le µC et le tour est joué!! Seul l'anglais peut consister un problème...
Une fois que l'on a compris le fonctionnement du programme, il devient très facile de l'adapter à ses besoins. Voici donc le programme que j'ai adapté pour ma tour eiffel :
/*
*
* http://www.arduino.cc/en/Tutorial/Blink
*/
int etage1a = 0; // LED connected to digital pin 0
int etage1b = 1; // LED connected to digital pin 1
int etage3a = 2; // LED connected to digital pin 2
int etage3b = 3; // LED connected to digital pin 3
int etage5a = 4; // LED connected to digital pin 4
int etage5b = 5; // LED connected to digital pin 5
int etage7a = 6; // LED connected to digital pin 6
int etage7b = 7; // LED connected to digital pin 7
int etage9a = 8; // LED connected to digital pin 8
int etage9b = 9; // LED connected to digital pin 9
void setup() // run once, when the sketch starts
{
pinMode(etage1a, OUTPUT); // sets the digital pin as output
pinMode(etage1b, OUTPUT); // sets the digital pin as output
pinMode(etage3a, OUTPUT); // sets the digital pin as output
pinMode(etage3b, OUTPUT); // sets the digital pin as output
pinMode(etage5a, OUTPUT); // sets the digital pin as output
pinMode(etage5b, OUTPUT); // sets the digital pin as output
pinMode(etage7a, OUTPUT); // sets the digital pin as output
pinMode(etage7b, OUTPUT); // sets the digital pin as output
pinMode(etage9a, OUTPUT); // sets the digital pin as output
pinMode(etage9b, OUTPUT); // sets the digital pin as output
}
void loop() // run over and over again
{
digitalWrite(etage1a, HIGH); // sets the LEDs on/off
digitalWrite(etage1b, LOW);
digitalWrite(etage3a, HIGH);
digitalWrite(etage3b, LOW);
digitalWrite(etage5a, LOW);
digitalWrite(etage5b, HIGH);
digitalWrite(etage7a, HIGH);
digitalWrite(etage7b, LOW);
digitalWrite(etage9a, LOW);
digitalWrite(etage9b, HIGH);
delay(100); // waits for a 100 Millisecond
digitalWrite(etage1a, LOW); // sets the LEDs on/off
digitalWrite(etage1b, HIGH);
digitalWrite(etage3a, LOW);
digitalWrite(etage3b, HIGH);
digitalWrite(etage5a, HIGH);
digitalWrite(etage5b, LOW);
digitalWrite(etage7a, LOW);
digitalWrite(etage7b, HIGH);
digitalWrite(etage9a, HIGH);
digitalWrite(etage9b, LOW);
delay(100); // waits for a second
}
Je me suis basé sur un programme existant. Il se décompose en Trois parties :
La déclaration des entrées sorties utilisées (ici les sorties 0 à 9) que j'ai renommé.
La déclaration des pattes 0à9 come étant des sorties.
Le programme de fonctionnement détaillant l'état de chaque pattes.....
Voici le programme original :
/*
* Blink
*
* The basic Arduino example. Turns on an LED on for one second,
* then off for one second, and so on... We use pin 13 because,
* depending on your Arduino board, it has either a built-in LED
* or a built-in resistor so that you need only an LED.
*
* http://www.arduino.cc/en/Tutorial/Blink
*/
int ledPin = 13; // LED connected to digital pin 13
void setup() // run once, when the sketch starts
{
pinMode(ledPin, OUTPUT); // sets the digital pin as output
}
void loop() // run over and over again
{
digitalWrite(ledPin, HIGH); // sets the LED on
delay(1000); // waits for a second
digitalWrite(ledPin, LOW); // sets the LED off
delay(1000); // waits for a second
}
Il y a moyen d'optimiser ce programme, mais celui ci marche très bien et je l'ai réalisé en moins de 3 heures d'utilisation.
Je continue les tutoriels et commence à intégrer des potentiomètres etc....
Bref, le système est très facile d'accès et permet d'envisager beaucoup de projets!!!
Bref tout se passe pas mal.
Tous ces progrès sont réalisés à partir du site d'Arduino qui propose des tutoriels très complets.http://arduino.cc/en/Tutorial/HomePage
On dispose du schéma du montage ainsi que du code du programme. Il reste plus qu'à envoyer le programme ds le µC et le tour est joué!! Seul l'anglais peut consister un problème...
Une fois que l'on a compris le fonctionnement du programme, il devient très facile de l'adapter à ses besoins. Voici donc le programme que j'ai adapté pour ma tour eiffel :
/*
*
* http://www.arduino.cc/en/Tutorial/Blink
*/
int etage1a = 0; // LED connected to digital pin 0
int etage1b = 1; // LED connected to digital pin 1
int etage3a = 2; // LED connected to digital pin 2
int etage3b = 3; // LED connected to digital pin 3
int etage5a = 4; // LED connected to digital pin 4
int etage5b = 5; // LED connected to digital pin 5
int etage7a = 6; // LED connected to digital pin 6
int etage7b = 7; // LED connected to digital pin 7
int etage9a = 8; // LED connected to digital pin 8
int etage9b = 9; // LED connected to digital pin 9
void setup() // run once, when the sketch starts
{
pinMode(etage1a, OUTPUT); // sets the digital pin as output
pinMode(etage1b, OUTPUT); // sets the digital pin as output
pinMode(etage3a, OUTPUT); // sets the digital pin as output
pinMode(etage3b, OUTPUT); // sets the digital pin as output
pinMode(etage5a, OUTPUT); // sets the digital pin as output
pinMode(etage5b, OUTPUT); // sets the digital pin as output
pinMode(etage7a, OUTPUT); // sets the digital pin as output
pinMode(etage7b, OUTPUT); // sets the digital pin as output
pinMode(etage9a, OUTPUT); // sets the digital pin as output
pinMode(etage9b, OUTPUT); // sets the digital pin as output
}
void loop() // run over and over again
{
digitalWrite(etage1a, HIGH); // sets the LEDs on/off
digitalWrite(etage1b, LOW);
digitalWrite(etage3a, HIGH);
digitalWrite(etage3b, LOW);
digitalWrite(etage5a, LOW);
digitalWrite(etage5b, HIGH);
digitalWrite(etage7a, HIGH);
digitalWrite(etage7b, LOW);
digitalWrite(etage9a, LOW);
digitalWrite(etage9b, HIGH);
delay(100); // waits for a 100 Millisecond
digitalWrite(etage1a, LOW); // sets the LEDs on/off
digitalWrite(etage1b, HIGH);
digitalWrite(etage3a, LOW);
digitalWrite(etage3b, HIGH);
digitalWrite(etage5a, HIGH);
digitalWrite(etage5b, LOW);
digitalWrite(etage7a, LOW);
digitalWrite(etage7b, HIGH);
digitalWrite(etage9a, HIGH);
digitalWrite(etage9b, LOW);
delay(100); // waits for a second
}
Je me suis basé sur un programme existant. Il se décompose en Trois parties :
La déclaration des entrées sorties utilisées (ici les sorties 0 à 9) que j'ai renommé.
La déclaration des pattes 0à9 come étant des sorties.
Le programme de fonctionnement détaillant l'état de chaque pattes.....
Voici le programme original :
/*
* Blink
*
* The basic Arduino example. Turns on an LED on for one second,
* then off for one second, and so on... We use pin 13 because,
* depending on your Arduino board, it has either a built-in LED
* or a built-in resistor so that you need only an LED.
*
* http://www.arduino.cc/en/Tutorial/Blink
*/
int ledPin = 13; // LED connected to digital pin 13
void setup() // run once, when the sketch starts
{
pinMode(ledPin, OUTPUT); // sets the digital pin as output
}
void loop() // run over and over again
{
digitalWrite(ledPin, HIGH); // sets the LED on
delay(1000); // waits for a second
digitalWrite(ledPin, LOW); // sets the LED off
delay(1000); // waits for a second
}
Il y a moyen d'optimiser ce programme, mais celui ci marche très bien et je l'ai réalisé en moins de 3 heures d'utilisation.
Je continue les tutoriels et commence à intégrer des potentiomètres etc....
Bref, le système est très facile d'accès et permet d'envisager beaucoup de projets!!!