![](/media/cache/img/default_profile.jpg.50x50_q85.jpg)
Tarea 1 Led
main.cpp@0:ae45e117d5b4, 2014-03-26 (annotated)
- Committer:
- Jepalacioh
- Date:
- Wed Mar 26 13:05:26 2014 +0000
- Revision:
- 0:ae45e117d5b4
- Child:
- 1:0feb896d3681
Primera Tarea Procesadores 2014-1 UNAL
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Jepalacioh | 0:ae45e117d5b4 | 1 | //Julian Esteban Palacio Hernández |
Jepalacioh | 0:ae45e117d5b4 | 2 | //Andres Mauricio Gomez Arevalos |
Jepalacioh | 0:ae45e117d5b4 | 3 | |
Jepalacioh | 0:ae45e117d5b4 | 4 | #include "mbed.h" |
Jepalacioh | 0:ae45e117d5b4 | 5 | #include "DebouncedIn.h" // esta librería permite trabajar entradas salidas mas facilmente |
Jepalacioh | 0:ae45e117d5b4 | 6 | |
Jepalacioh | 0:ae45e117d5b4 | 7 | DigitalOut led1(LED1); //led rojo |
Jepalacioh | 0:ae45e117d5b4 | 8 | DigitalOut led2(LED2); //Led Verde |
Jepalacioh | 0:ae45e117d5b4 | 9 | DigitalOut led3(LED3); //Led Azul |
Jepalacioh | 0:ae45e117d5b4 | 10 | |
Jepalacioh | 0:ae45e117d5b4 | 11 | //Rojo-Verde= Amarillo |
Jepalacioh | 0:ae45e117d5b4 | 12 | //Rojo-Azul= Violeta |
Jepalacioh | 0:ae45e117d5b4 | 13 | //Verde-Azul= Cyan |
Jepalacioh | 0:ae45e117d5b4 | 14 | //Rojo-Verde-Azul=Blanco |
Jepalacioh | 0:ae45e117d5b4 | 15 | |
Jepalacioh | 0:ae45e117d5b4 | 16 | |
Jepalacioh | 0:ae45e117d5b4 | 17 | |
Jepalacioh | 0:ae45e117d5b4 | 18 | DebouncedIn Pulso(PTA17); //Defino la entrada del pulsador. Nota: se escogió este puerto porque era el más cercano a GND, para así conectar directamente el pulsador al micro |
Jepalacioh | 0:ae45e117d5b4 | 19 | |
Jepalacioh | 0:ae45e117d5b4 | 20 | //definiendo variables |
Jepalacioh | 0:ae45e117d5b4 | 21 | |
Jepalacioh | 0:ae45e117d5b4 | 22 | float Cont=0.02; //Contador (inicia con un tiempo de on/off de 20ms) |
Jepalacioh | 0:ae45e117d5b4 | 23 | float Inc=0.01; //Incrementos de (10 ms) |
Jepalacioh | 0:ae45e117d5b4 | 24 | |
Jepalacioh | 0:ae45e117d5b4 | 25 | |
Jepalacioh | 0:ae45e117d5b4 | 26 | int main() { |
Jepalacioh | 0:ae45e117d5b4 | 27 | |
Jepalacioh | 0:ae45e117d5b4 | 28 | while(true){ |
Jepalacioh | 0:ae45e117d5b4 | 29 | |
Jepalacioh | 0:ae45e117d5b4 | 30 | if(Pulso.falling()) // Detección de flanco |
Jepalacioh | 0:ae45e117d5b4 | 31 | { |
Jepalacioh | 0:ae45e117d5b4 | 32 | Cont=Cont+Inc; //Aumenta el tiempo de espera, por lo tanto el tiempo de oscilación del led |
Jepalacioh | 0:ae45e117d5b4 | 33 | |
Jepalacioh | 0:ae45e117d5b4 | 34 | if(Cont>0.5) // limite para el tiempo de oscilación |
Jepalacioh | 0:ae45e117d5b4 | 35 | { |
Jepalacioh | 0:ae45e117d5b4 | 36 | Cont=0.02; //vuelve a la condición inicial |
Jepalacioh | 0:ae45e117d5b4 | 37 | } |
Jepalacioh | 0:ae45e117d5b4 | 38 | } |
Jepalacioh | 0:ae45e117d5b4 | 39 | |
Jepalacioh | 0:ae45e117d5b4 | 40 | //Prendido y apagado |
Jepalacioh | 0:ae45e117d5b4 | 41 | led1=!led1; //Alterna entre prendido y apagado del led1 (Rojo) |
Jepalacioh | 0:ae45e117d5b4 | 42 | led2=!led2; //Alterna entre prendido y apagado del led2 (Verde) |
Jepalacioh | 0:ae45e117d5b4 | 43 | led3=!led3; //Alterna entre prendido y apagado del led3 (Azul) |
Jepalacioh | 0:ae45e117d5b4 | 44 | wait(Cont); //Espera el tiempo del contador |
Jepalacioh | 0:ae45e117d5b4 | 45 | |
Jepalacioh | 0:ae45e117d5b4 | 46 | } |
Jepalacioh | 0:ae45e117d5b4 | 47 | } |