Equipo 13
/
parcial
Ruleta de lees
main.cpp@0:3a9a89ac25e7, 2013-11-04 (annotated)
- Committer:
- Equipo13
- Date:
- Mon Nov 04 15:34:21 2013 +0000
- Revision:
- 0:3a9a89ac25e7
Parcial;
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Equipo13 | 0:3a9a89ac25e7 | 1 | #include "mbed.h" |
Equipo13 | 0:3a9a89ac25e7 | 2 | DigitalOut myled(LED1); |
Equipo13 | 0:3a9a89ac25e7 | 3 | BusOut leds(PTA5, PTA13, PTC9, PTC8, PTD5, PTD4, PTA12, PTA4); //Para controlar varios puertos al mismo tiempo |
Equipo13 | 0:3a9a89ac25e7 | 4 | AnalogIn pot(PTB3); //PTA13, PTD5 |
Equipo13 | 0:3a9a89ac25e7 | 5 | DigitalIn BS(PTD2); |
Equipo13 | 0:3a9a89ac25e7 | 6 | DigitalIn BR(PTD0); |
Equipo13 | 0:3a9a89ac25e7 | 7 | Serial pc(USBTX, USBRX); |
Equipo13 | 0:3a9a89ac25e7 | 8 | |
Equipo13 | 0:3a9a89ac25e7 | 9 | |
Equipo13 | 0:3a9a89ac25e7 | 10 | |
Equipo13 | 0:3a9a89ac25e7 | 11 | int main() { |
Equipo13 | 0:3a9a89ac25e7 | 12 | myled = 1; |
Equipo13 | 0:3a9a89ac25e7 | 13 | int count = 0; |
Equipo13 | 0:3a9a89ac25e7 | 14 | int reps = 10; //modifica este valor para hacer la secuencia mas rapida o lenta |
Equipo13 | 0:3a9a89ac25e7 | 15 | |
Equipo13 | 0:3a9a89ac25e7 | 16 | int points = 100; |
Equipo13 | 0:3a9a89ac25e7 | 17 | int on = 1; //variable que me va a decir que led o leds encender, recuerda que los |
Equipo13 | 0:3a9a89ac25e7 | 18 | //leds rgb funcionan con logica inversa |
Equipo13 | 0:3a9a89ac25e7 | 19 | while(1) { |
Equipo13 | 0:3a9a89ac25e7 | 20 | leds = on; //asigno el valor de on a los leds |
Equipo13 | 0:3a9a89ac25e7 | 21 | while(count < reps){ //equivalente a un wait de aprox 100 ms |
Equipo13 | 0:3a9a89ac25e7 | 22 | wait(0.1 - pot/10 + .015); |
Equipo13 | 0:3a9a89ac25e7 | 23 | if (BS == 0 && D4 == on){ |
Equipo13 | 0:3a9a89ac25e7 | 24 | points = points + 10; |
Equipo13 | 0:3a9a89ac25e7 | 25 | pc.printf ("Ganaste! Tus puntos son %d\n", points); |
Equipo13 | 0:3a9a89ac25e7 | 26 | on = 128; |
Equipo13 | 0:3a9a89ac25e7 | 27 | wait (0.5); |
Equipo13 | 0:3a9a89ac25e7 | 28 | } |
Equipo13 | 0:3a9a89ac25e7 | 29 | if (BS == 0 && D4 != on){ |
Equipo13 | 0:3a9a89ac25e7 | 30 | points = points - 10; |
Equipo13 | 0:3a9a89ac25e7 | 31 | pc.printf ("perdiste! Tus puntos son %d\n", points); |
Equipo13 | 0:3a9a89ac25e7 | 32 | on = 128; |
Equipo13 | 0:3a9a89ac25e7 | 33 | wait (0.5); |
Equipo13 | 0:3a9a89ac25e7 | 34 | } |
Equipo13 | 0:3a9a89ac25e7 | 35 | if (BR == 0){ |
Equipo13 | 0:3a9a89ac25e7 | 36 | points = 100; |
Equipo13 | 0:3a9a89ac25e7 | 37 | pc.printf ("Tu juego se a reseteado, ahora tienes %d\n", points); |
Equipo13 | 0:3a9a89ac25e7 | 38 | on = 128; |
Equipo13 | 0:3a9a89ac25e7 | 39 | wait (0.5); |
Equipo13 | 0:3a9a89ac25e7 | 40 | } |
Equipo13 | 0:3a9a89ac25e7 | 41 | count ++; |
Equipo13 | 0:3a9a89ac25e7 | 42 | |
Equipo13 | 0:3a9a89ac25e7 | 43 | } |
Equipo13 | 0:3a9a89ac25e7 | 44 | count = 0; |
Equipo13 | 0:3a9a89ac25e7 | 45 | on = on << 1; //recorro un bit a la izquierda piensa en binario (001 recorriendo queda 010) |
Equipo13 | 0:3a9a89ac25e7 | 46 | if (on == 256){ //Si vale 8 o en binario 1000 reseteo el valor a 1 o 001 en binario |
Equipo13 | 0:3a9a89ac25e7 | 47 | on = 1; |
Equipo13 | 0:3a9a89ac25e7 | 48 | } |
Equipo13 | 0:3a9a89ac25e7 | 49 | } |
Equipo13 | 0:3a9a89ac25e7 | 50 | } |
Equipo13 | 0:3a9a89ac25e7 | 51 | |
Equipo13 | 0:3a9a89ac25e7 | 52 | |
Equipo13 | 0:3a9a89ac25e7 | 53 | |
Equipo13 | 0:3a9a89ac25e7 | 54 | |
Equipo13 | 0:3a9a89ac25e7 | 55 |