yyhgggg

Dependencies:   mbed

Committer:
paisa501
Date:
Thu Jul 10 23:26:54 2014 +0000
Revision:
0:7efa0deeaf7a
orto

Who changed what in which revision?

UserRevisionLine numberNew contents of line
paisa501 0:7efa0deeaf7a 1 #include "mbed.h"
paisa501 0:7efa0deeaf7a 2
paisa501 0:7efa0deeaf7a 3 Ticker visualiza;
paisa501 0:7efa0deeaf7a 4 Ticker cuenta;
paisa501 0:7efa0deeaf7a 5 DigitalIn pulsador(D11);
paisa501 0:7efa0deeaf7a 6
paisa501 0:7efa0deeaf7a 7 DigitalOut led_rojo(LED1);
paisa501 0:7efa0deeaf7a 8 DigitalOut pin0(A0);
paisa501 0:7efa0deeaf7a 9 DigitalOut pin1(A1);DigitalOut pin2(A2);DigitalOut pin3(A3);DigitalOut pin4(A4);DigitalOut pin5(A5);DigitalOut pin6(PTE30);
paisa501 0:7efa0deeaf7a 10 DigitalOut pin7(D4); DigitalOut pin8(D5); DigitalOut pin9(D6);DigitalOut pin10(D7);DigitalOut pin11(D8);DigitalOut pin12(D9);DigitalOut pin13(D10);
paisa501 0:7efa0deeaf7a 11 BusOut transistores(D0,D1);
paisa501 0:7efa0deeaf7a 12 BusOut segmentos (A0,A1,A2,A3,A4,A5,PTE30);
paisa501 0:7efa0deeaf7a 13 BusOut transistores2(D2, D3);
paisa501 0:7efa0deeaf7a 14 BusOut segmentos2 (D4,D5,D6,D7, D8,D9, D10);
paisa501 0:7efa0deeaf7a 15 // tabla de segmentos
paisa501 0:7efa0deeaf7a 16 const char seg[10] = { 0x3f, 0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
paisa501 0:7efa0deeaf7a 17 const char seg2[10] = {0x6f, 0x7f, 0x07,0x7d, 0x6d,0x66,0x4f,0x5b,0x06,0x3f};
paisa501 0:7efa0deeaf7a 18 char unidades,decenas, miliunidades, milidecenas;
paisa501 0:7efa0deeaf7a 19 void cambio(){
paisa501 0:7efa0deeaf7a 20 static bool bandera;
paisa501 0:7efa0deeaf7a 21 bandera = !bandera;
paisa501 0:7efa0deeaf7a 22
paisa501 0:7efa0deeaf7a 23 if (bandera){
paisa501 0:7efa0deeaf7a 24 segmentos = seg[unidades];
paisa501 0:7efa0deeaf7a 25 transistores = 0x2;
paisa501 0:7efa0deeaf7a 26 segmentos2 = seg[miliunidades];
paisa501 0:7efa0deeaf7a 27 transistores2 = 0x2;
paisa501 0:7efa0deeaf7a 28 }
paisa501 0:7efa0deeaf7a 29 else {
paisa501 0:7efa0deeaf7a 30 segmentos = seg[decenas];
paisa501 0:7efa0deeaf7a 31 transistores = 0x1;
paisa501 0:7efa0deeaf7a 32 segmentos2 = seg[milidecenas];
paisa501 0:7efa0deeaf7a 33 transistores2 = 0x1; }
paisa501 0:7efa0deeaf7a 34
paisa501 0:7efa0deeaf7a 35
paisa501 0:7efa0deeaf7a 36 }
paisa501 0:7efa0deeaf7a 37 void retroceso (){
paisa501 0:7efa0deeaf7a 38 static bool bandera2;
paisa501 0:7efa0deeaf7a 39 bandera2 = !bandera2;
paisa501 0:7efa0deeaf7a 40
paisa501 0:7efa0deeaf7a 41 if (bandera2){
paisa501 0:7efa0deeaf7a 42 segmentos = seg2[unidades];
paisa501 0:7efa0deeaf7a 43 transistores = 0x2;
paisa501 0:7efa0deeaf7a 44 segmentos2 = seg2[miliunidades];
paisa501 0:7efa0deeaf7a 45 transistores2 = 0x2;
paisa501 0:7efa0deeaf7a 46 }
paisa501 0:7efa0deeaf7a 47 else {
paisa501 0:7efa0deeaf7a 48 segmentos = seg2[decenas];
paisa501 0:7efa0deeaf7a 49 transistores = 0x1;
paisa501 0:7efa0deeaf7a 50 segmentos2 = seg2[milidecenas];
paisa501 0:7efa0deeaf7a 51 transistores2 = 0x1; }
paisa501 0:7efa0deeaf7a 52 }
paisa501 0:7efa0deeaf7a 53 void conteo (){
paisa501 0:7efa0deeaf7a 54
paisa501 0:7efa0deeaf7a 55 miliunidades++;
paisa501 0:7efa0deeaf7a 56 if (miliunidades > 9)
paisa501 0:7efa0deeaf7a 57 {milidecenas++; miliunidades =0;}
paisa501 0:7efa0deeaf7a 58 if (milidecenas > 9)
paisa501 0:7efa0deeaf7a 59 {unidades++; milidecenas =0;}
paisa501 0:7efa0deeaf7a 60 if (unidades > 9)
paisa501 0:7efa0deeaf7a 61 {decenas++; unidades = 0;}
paisa501 0:7efa0deeaf7a 62 if (decenas > 9)
paisa501 0:7efa0deeaf7a 63 {
paisa501 0:7efa0deeaf7a 64 miliunidades = 0;
paisa501 0:7efa0deeaf7a 65 milidecenas = 0;
paisa501 0:7efa0deeaf7a 66 unidades = 0;
paisa501 0:7efa0deeaf7a 67 decenas = 0;
paisa501 0:7efa0deeaf7a 68 transistores = 0x3; transistores2 = 0x3; led_rojo = 0; wait (0.2);
paisa501 0:7efa0deeaf7a 69 transistores = 0x0; transistores2 = 0x0; led_rojo = 1;wait (0.2);
paisa501 0:7efa0deeaf7a 70 transistores = 0x3; transistores2 = 0x3; led_rojo = 0;wait (0.2);
paisa501 0:7efa0deeaf7a 71 transistores = 0x0; transistores2 = 0x0; led_rojo = 1;wait (0.2);
paisa501 0:7efa0deeaf7a 72 transistores = 0x3; transistores2 = 0x3; led_rojo = 0;wait (0.2);
paisa501 0:7efa0deeaf7a 73 transistores = 0x0; transistores2 = 0x0; led_rojo = 1;wait (0.2);
paisa501 0:7efa0deeaf7a 74 /*transistores = 0x3; transistores2 = 0x3;led_rojo = 0;pin0 = 1; pin1 = 1;pin2 = 1;pin3 = 1;pin4 = 1;pin5 = 1;pin6 = 1;pin7 = 1;pin8 = 1;pin9 = 1; pin10 = 1;pin11 = 1;pin12 = 1;pin13 = 1; wait(0.2);
paisa501 0:7efa0deeaf7a 75 transistores = 0x0; transistores2 = 0x0;led_rojo = 1; pin0 = 0; pin1 = 0;pin2 = 0;pin3 = 0;pin4 = 0;pin5 = 0;pin6 = 0;pin7 = 0;pin8 = 0;pin9 = 0; pin10 = 0;pin11 = 0;pin12 = 0;pin13 = 0; wait(0.2);
paisa501 0:7efa0deeaf7a 76
paisa501 0:7efa0deeaf7a 77 transistores = 0x3; transistores2 = 0x3;led_rojo = 0;pin0 = 1; pin1 = 1;pin2 = 1;pin3 = 1;pin4 = 1;pin5 = 1;pin6 = 1;pin7 = 1;pin8 = 1;pin9 = 1; pin10 = 1;pin11 = 1;pin12 = 1;pin13 = 1; wait(0.2);
paisa501 0:7efa0deeaf7a 78 transistores = 0x0; transistores2 = 0x0;led_rojo = 1; pin0 = 0; pin1 = 0;pin2 = 0;pin3 = 0;pin4 = 0;pin5 = 0;pin6 = 0;pin7 = 0;pin8 = 0;pin9 = 0; pin10 = 0;pin11 = 0;pin12 = 0;pin13 = 0; wait(0.2);
paisa501 0:7efa0deeaf7a 79
paisa501 0:7efa0deeaf7a 80 transistores = 0x3; transistores2 = 0x3;led_rojo = 0;pin0 = 1; pin1 = 1;pin2 = 1;pin3 = 1;pin4 = 1;pin5 = 1;pin6 = 1;pin7 = 1;pin8 = 1;pin9 = 1; pin10 = 1;pin11 = 1;pin12 = 1;pin13 = 1; wait(0.2);
paisa501 0:7efa0deeaf7a 81 transistores = 0x0; transistores2 = 0x0;led_rojo = 1;pin0 = 0; pin1 = 0;pin2 = 0;pin3 = 0;pin4 = 0;pin5 = 0;pin6 = 0;pin7 = 0;pin8 = 0;pin9 = 0; pin10 = 0;pin11 = 0;pin12 = 0;pin13 = 0; wait(0.2);*/
paisa501 0:7efa0deeaf7a 82
paisa501 0:7efa0deeaf7a 83 }
paisa501 0:7efa0deeaf7a 84 }
paisa501 0:7efa0deeaf7a 85
paisa501 0:7efa0deeaf7a 86 int main(void)
paisa501 0:7efa0deeaf7a 87 {
paisa501 0:7efa0deeaf7a 88 transistores = 0x0;
paisa501 0:7efa0deeaf7a 89 transistores2 = 0x0;
paisa501 0:7efa0deeaf7a 90 led_rojo = 1;
paisa501 0:7efa0deeaf7a 91
paisa501 0:7efa0deeaf7a 92
paisa501 0:7efa0deeaf7a 93 while(1){
paisa501 0:7efa0deeaf7a 94
paisa501 0:7efa0deeaf7a 95 if (pulsador==0){
paisa501 0:7efa0deeaf7a 96 wait (0.8);
paisa501 0:7efa0deeaf7a 97 miliunidades = 0;
paisa501 0:7efa0deeaf7a 98 milidecenas = 0;
paisa501 0:7efa0deeaf7a 99 unidades = 0;
paisa501 0:7efa0deeaf7a 100 decenas = 0;
paisa501 0:7efa0deeaf7a 101 cuenta.attach(&conteo,0.01);
paisa501 0:7efa0deeaf7a 102 visualiza.attach(&cambio,0.008333);
paisa501 0:7efa0deeaf7a 103
paisa501 0:7efa0deeaf7a 104 }
paisa501 0:7efa0deeaf7a 105 if (pulsador==0){
paisa501 0:7efa0deeaf7a 106 wait (0.8);
paisa501 0:7efa0deeaf7a 107 miliunidades = 0;
paisa501 0:7efa0deeaf7a 108 milidecenas = 0;
paisa501 0:7efa0deeaf7a 109 unidades = 0;
paisa501 0:7efa0deeaf7a 110 decenas = 0;
paisa501 0:7efa0deeaf7a 111
paisa501 0:7efa0deeaf7a 112 cuenta.attach(&conteo,0.01);
paisa501 0:7efa0deeaf7a 113 visualiza.attach(&retroceso,0.008333);
paisa501 0:7efa0deeaf7a 114
paisa501 0:7efa0deeaf7a 115 }
paisa501 0:7efa0deeaf7a 116 } }
paisa501 0:7efa0deeaf7a 117
paisa501 0:7efa0deeaf7a 118