Projet_S5 / Mbed 2 deprecated Repo_Noeud_Mobile_refactor

Dependencies:   mbed-rtos mbed

Fork of Repo_Noeud_Mobile by Projet_S5

Committer:
llarose
Date:
Wed Mar 04 19:42:35 2015 +0000
Revision:
1:601d2922ff06
Child:
3:a77d02cb5694
adding my file from previous reprository

Who changed what in which revision?

UserRevisionLine numberNew contents of line
llarose 1:601d2922ff06 1 #include "CountDown.h"
llarose 1:601d2922ff06 2
llarose 1:601d2922ff06 3 CountDown::CountDown(int time)
llarose 1:601d2922ff06 4 // initialisation list
llarose 1:601d2922ff06 5 : t(time>>2) /// division par 4 pour temps entre ch. LED.
llarose 1:601d2922ff06 6 {
llarose 1:601d2922ff06 7 led[0] = new DigitalOut(LED1);
llarose 1:601d2922ff06 8 led[1] = new DigitalOut(LED2);
llarose 1:601d2922ff06 9 led[2] = new DigitalOut(LED3);
llarose 1:601d2922ff06 10 led[3] = new DigitalOut(LED4);
llarose 1:601d2922ff06 11
llarose 1:601d2922ff06 12 }
llarose 1:601d2922ff06 13
llarose 1:601d2922ff06 14 CountDown::~CountDown()
llarose 1:601d2922ff06 15 {
llarose 1:601d2922ff06 16 for(int i(0); i<NBRE_LED; i++){
llarose 1:601d2922ff06 17 delete led[i];
llarose 1:601d2922ff06 18 }
llarose 1:601d2922ff06 19 }
llarose 1:601d2922ff06 20
llarose 1:601d2922ff06 21 bool CountDown::run()
llarose 1:601d2922ff06 22 {
llarose 1:601d2922ff06 23 int j(NBRE_LED);
llarose 1:601d2922ff06 24
llarose 1:601d2922ff06 25 for(int i(0); i<j ; i++){ // ALL ON.
llarose 1:601d2922ff06 26 led[i]->write(1);
llarose 1:601d2922ff06 27 }
llarose 1:601d2922ff06 28
llarose 1:601d2922ff06 29 while(j) // Actual CountDown.
llarose 1:601d2922ff06 30 {
llarose 1:601d2922ff06 31 Thread::wait(t);
llarose 1:601d2922ff06 32 j--;
llarose 1:601d2922ff06 33 led[j] = 0;
llarose 1:601d2922ff06 34 }
llarose 1:601d2922ff06 35
llarose 1:601d2922ff06 36 for(int u(0); u<NBRE_LED; u++) // Flashing State
llarose 1:601d2922ff06 37 {
llarose 1:601d2922ff06 38 Thread::wait(100);
llarose 1:601d2922ff06 39 for(int i(0); i<NBRE_LED ; i++){
llarose 1:601d2922ff06 40 led[i]->write(u%2);
llarose 1:601d2922ff06 41 }
llarose 1:601d2922ff06 42 }
llarose 1:601d2922ff06 43
llarose 1:601d2922ff06 44 return true;
llarose 1:601d2922ff06 45 }