Ninguna

Committer:
fvelasquezv
Date:
Thu Oct 17 21:58:14 2013 +0000
Revision:
0:a593c1db97bb
Rampa de subida y bajada de un dato en LCD

Who changed what in which revision?

UserRevisionLine numberNew contents of line
fvelasquezv 0:a593c1db97bb 1 #include "mbed.h"
fvelasquezv 0:a593c1db97bb 2 #include "TextLCD.h"
fvelasquezv 0:a593c1db97bb 3 #include "DebouncedIn.h"
fvelasquezv 0:a593c1db97bb 4
fvelasquezv 0:a593c1db97bb 5 Timer timer1;
fvelasquezv 0:a593c1db97bb 6 TextLCD lcd(PTC10, PTC11, PTC12, PTC13, PTC16, PTC17); // rs, e, d4-d7TextLCD lcd(PTC10, PTC11, PTC12, PTC13, PTC16, PTC17); // rs, e, d4-d7
fvelasquezv 0:a593c1db97bb 7 DebouncedIn Arriba(PTE2);
fvelasquezv 0:a593c1db97bb 8 DebouncedIn Abajo(PTE3);
fvelasquezv 0:a593c1db97bb 9 DigitalOut myled(LED1);
fvelasquezv 0:a593c1db97bb 10
fvelasquezv 0:a593c1db97bb 11 int i;
fvelasquezv 0:a593c1db97bb 12
fvelasquezv 0:a593c1db97bb 13 int main() {
fvelasquezv 0:a593c1db97bb 14
fvelasquezv 0:a593c1db97bb 15 lcd.cls();
fvelasquezv 0:a593c1db97bb 16 lcd.printf("Conteo:%d", i);
fvelasquezv 0:a593c1db97bb 17
fvelasquezv 0:a593c1db97bb 18 while(1){
fvelasquezv 0:a593c1db97bb 19
fvelasquezv 0:a593c1db97bb 20
fvelasquezv 0:a593c1db97bb 21 if(Arriba.falling()||Abajo.falling()){
fvelasquezv 0:a593c1db97bb 22 timer1.start();
fvelasquezv 0:a593c1db97bb 23 }
fvelasquezv 0:a593c1db97bb 24 while(Arriba==0||Abajo==0){
fvelasquezv 0:a593c1db97bb 25 if(Arriba==1&&Abajo==1){
fvelasquezv 0:a593c1db97bb 26 timer1.stop();
fvelasquezv 0:a593c1db97bb 27 timer1.reset();
fvelasquezv 0:a593c1db97bb 28
fvelasquezv 0:a593c1db97bb 29 }
fvelasquezv 0:a593c1db97bb 30 if (timer1.read()>0&&timer1.read()<=5&&Arriba==0&&i>=0&&i<=1000) {
fvelasquezv 0:a593c1db97bb 31 ++i;
fvelasquezv 0:a593c1db97bb 32 myled=1;
fvelasquezv 0:a593c1db97bb 33 wait(0.3);
fvelasquezv 0:a593c1db97bb 34 myled=0;
fvelasquezv 0:a593c1db97bb 35 wait(0.3);
fvelasquezv 0:a593c1db97bb 36
fvelasquezv 0:a593c1db97bb 37 }
fvelasquezv 0:a593c1db97bb 38 if (timer1.read()>0&&timer1.read()<=5&&Abajo==0&&i>=0&&i<=1000) {
fvelasquezv 0:a593c1db97bb 39 --i;
fvelasquezv 0:a593c1db97bb 40 myled=1;
fvelasquezv 0:a593c1db97bb 41 wait(0.3);
fvelasquezv 0:a593c1db97bb 42 myled=0;
fvelasquezv 0:a593c1db97bb 43 wait(0.3);
fvelasquezv 0:a593c1db97bb 44
fvelasquezv 0:a593c1db97bb 45 }
fvelasquezv 0:a593c1db97bb 46
fvelasquezv 0:a593c1db97bb 47 if (timer1.read()>5&&timer1.read()<=10&&Arriba==0&&i>=0&&i<=1000) {
fvelasquezv 0:a593c1db97bb 48 i+=5;
fvelasquezv 0:a593c1db97bb 49 myled=1;
fvelasquezv 0:a593c1db97bb 50 wait(0.3/5);
fvelasquezv 0:a593c1db97bb 51 myled=0;
fvelasquezv 0:a593c1db97bb 52 wait(0.3/5);
fvelasquezv 0:a593c1db97bb 53
fvelasquezv 0:a593c1db97bb 54 }
fvelasquezv 0:a593c1db97bb 55 if (timer1.read()>5&&timer1.read()<=10&&Abajo==0&&i>=0&&i<=1000) {
fvelasquezv 0:a593c1db97bb 56 i-=5;
fvelasquezv 0:a593c1db97bb 57 myled=1;
fvelasquezv 0:a593c1db97bb 58 wait(0.3/5);
fvelasquezv 0:a593c1db97bb 59 myled=0;
fvelasquezv 0:a593c1db97bb 60 wait(0.3/5);
fvelasquezv 0:a593c1db97bb 61
fvelasquezv 0:a593c1db97bb 62 }
fvelasquezv 0:a593c1db97bb 63
fvelasquezv 0:a593c1db97bb 64
fvelasquezv 0:a593c1db97bb 65 if (timer1.read()>10&&timer1.read()<=100&&Arriba==0&&i>=0&&i<=1000) {
fvelasquezv 0:a593c1db97bb 66 i+=10;
fvelasquezv 0:a593c1db97bb 67
fvelasquezv 0:a593c1db97bb 68 myled=1;
fvelasquezv 0:a593c1db97bb 69 wait(0.03);
fvelasquezv 0:a593c1db97bb 70 myled=0;
fvelasquezv 0:a593c1db97bb 71 wait(0.03);
fvelasquezv 0:a593c1db97bb 72
fvelasquezv 0:a593c1db97bb 73 }
fvelasquezv 0:a593c1db97bb 74 if (timer1.read()>10&&timer1.read()<=100&&Abajo==0&&i>=0&&i<=1000) {
fvelasquezv 0:a593c1db97bb 75 i-=10;
fvelasquezv 0:a593c1db97bb 76
fvelasquezv 0:a593c1db97bb 77 myled=1;
fvelasquezv 0:a593c1db97bb 78 wait(0.03);
fvelasquezv 0:a593c1db97bb 79 myled=0;
fvelasquezv 0:a593c1db97bb 80 wait(0.03);
fvelasquezv 0:a593c1db97bb 81
fvelasquezv 0:a593c1db97bb 82 }
fvelasquezv 0:a593c1db97bb 83 if(i<0){
fvelasquezv 0:a593c1db97bb 84 i=0;
fvelasquezv 0:a593c1db97bb 85 }
fvelasquezv 0:a593c1db97bb 86
fvelasquezv 0:a593c1db97bb 87 if(i>1000){
fvelasquezv 0:a593c1db97bb 88 i=1000;
fvelasquezv 0:a593c1db97bb 89 }
fvelasquezv 0:a593c1db97bb 90 i=i;
fvelasquezv 0:a593c1db97bb 91 lcd.locate(7,0);
fvelasquezv 0:a593c1db97bb 92 lcd.printf(" ");
fvelasquezv 0:a593c1db97bb 93 lcd.locate(8,0);
fvelasquezv 0:a593c1db97bb 94 lcd.printf("%d", i);
fvelasquezv 0:a593c1db97bb 95 wait(0.2);
fvelasquezv 0:a593c1db97bb 96
fvelasquezv 0:a593c1db97bb 97
fvelasquezv 0:a593c1db97bb 98 }
fvelasquezv 0:a593c1db97bb 99 }
fvelasquezv 0:a593c1db97bb 100 }
fvelasquezv 0:a593c1db97bb 101
fvelasquezv 0:a593c1db97bb 102
fvelasquezv 0:a593c1db97bb 103
fvelasquezv 0:a593c1db97bb 104