Incrementar por medio de pulsadores

Dependencies:   Debounced TextLCD mbed

Committer:
ikortegag
Date:
Fri Dec 13 17:31:13 2013 +0000
Revision:
0:7ac8f5f3e58b
Incrementar por medio de pulsadores

Who changed what in which revision?

UserRevisionLine numberNew contents of line
ikortegag 0:7ac8f5f3e58b 1 #include "mbed.h"
ikortegag 0:7ac8f5f3e58b 2 #include "DebouncedIn.h"
ikortegag 0:7ac8f5f3e58b 3 #include "TextLCD.h"
ikortegag 0:7ac8f5f3e58b 4
ikortegag 0:7ac8f5f3e58b 5 AnalogIn Vin(PTC2);
ikortegag 0:7ac8f5f3e58b 6 TextLCD lcd(PTB10, PTB11, PTE2, PTE3, PTE4, PTE5); // rs, e, d4-d7
ikortegag 0:7ac8f5f3e58b 7 DigitalOut l1(LED1);
ikortegag 0:7ac8f5f3e58b 8 DigitalOut l2(LED2);
ikortegag 0:7ac8f5f3e58b 9 DebouncedIn b1(PTC12);
ikortegag 0:7ac8f5f3e58b 10 DebouncedIn b2(PTC13);
ikortegag 0:7ac8f5f3e58b 11 DebouncedIn b3(PTA1);
ikortegag 0:7ac8f5f3e58b 12 int c1=0x0E,i,k=1;
ikortegag 0:7ac8f5f3e58b 13
ikortegag 0:7ac8f5f3e58b 14 int main()
ikortegag 0:7ac8f5f3e58b 15 {
ikortegag 0:7ac8f5f3e58b 16 while(k==1) {
ikortegag 0:7ac8f5f3e58b 17 lcd.cls();
ikortegag 0:7ac8f5f3e58b 18 lcd.writeCommand(c1);
ikortegag 0:7ac8f5f3e58b 19 lcd.locate(0,0);
ikortegag 0:7ac8f5f3e58b 20 lcd.printf("SP= %d",i);
ikortegag 0:7ac8f5f3e58b 21 lcd.locate(11,0);
ikortegag 0:7ac8f5f3e58b 22 lcd.printf("KP= %d",i);
ikortegag 0:7ac8f5f3e58b 23 lcd.locate(0,1);
ikortegag 0:7ac8f5f3e58b 24 lcd.printf("Ki= %d",i);
ikortegag 0:7ac8f5f3e58b 25 lcd.locate(11,1);
ikortegag 0:7ac8f5f3e58b 26 lcd.printf("Kd= %d",i);
ikortegag 0:7ac8f5f3e58b 27
ikortegag 0:7ac8f5f3e58b 28 while(k==1) {
ikortegag 0:7ac8f5f3e58b 29
ikortegag 0:7ac8f5f3e58b 30 if(b1.falling()) {
ikortegag 0:7ac8f5f3e58b 31 l1 = !l1;
ikortegag 0:7ac8f5f3e58b 32 ++i;
ikortegag 0:7ac8f5f3e58b 33 lcd.locate(3,0);
ikortegag 0:7ac8f5f3e58b 34 lcd.printf("%d",i);
ikortegag 0:7ac8f5f3e58b 35 }
ikortegag 0:7ac8f5f3e58b 36 if (b2.falling() && i>=1) {
ikortegag 0:7ac8f5f3e58b 37 l2 = !l2;
ikortegag 0:7ac8f5f3e58b 38 --i;
ikortegag 0:7ac8f5f3e58b 39 lcd.locate(3,0);
ikortegag 0:7ac8f5f3e58b 40 lcd.printf("%d",i);
ikortegag 0:7ac8f5f3e58b 41 }
ikortegag 0:7ac8f5f3e58b 42 if (b3.falling()) {
ikortegag 0:7ac8f5f3e58b 43 k+=1;
ikortegag 0:7ac8f5f3e58b 44 i=0;
ikortegag 0:7ac8f5f3e58b 45 }
ikortegag 0:7ac8f5f3e58b 46
ikortegag 0:7ac8f5f3e58b 47 }
ikortegag 0:7ac8f5f3e58b 48
ikortegag 0:7ac8f5f3e58b 49
ikortegag 0:7ac8f5f3e58b 50 while(k==2) {
ikortegag 0:7ac8f5f3e58b 51
ikortegag 0:7ac8f5f3e58b 52 if(b1.falling()) {
ikortegag 0:7ac8f5f3e58b 53 l1 = !l1;
ikortegag 0:7ac8f5f3e58b 54 ++i;
ikortegag 0:7ac8f5f3e58b 55 lcd.locate(14,0);
ikortegag 0:7ac8f5f3e58b 56 lcd.printf("%d",i);
ikortegag 0:7ac8f5f3e58b 57 }
ikortegag 0:7ac8f5f3e58b 58 if (b2.falling() && i>=1) {
ikortegag 0:7ac8f5f3e58b 59 l2 = !l2;
ikortegag 0:7ac8f5f3e58b 60 --i;
ikortegag 0:7ac8f5f3e58b 61 lcd.locate(14,0);
ikortegag 0:7ac8f5f3e58b 62 lcd.printf("%d",i);
ikortegag 0:7ac8f5f3e58b 63 }
ikortegag 0:7ac8f5f3e58b 64 if (b3.falling()) {
ikortegag 0:7ac8f5f3e58b 65 k+=1;
ikortegag 0:7ac8f5f3e58b 66 i=0;
ikortegag 0:7ac8f5f3e58b 67 }
ikortegag 0:7ac8f5f3e58b 68
ikortegag 0:7ac8f5f3e58b 69 }
ikortegag 0:7ac8f5f3e58b 70
ikortegag 0:7ac8f5f3e58b 71
ikortegag 0:7ac8f5f3e58b 72 while(k==3) {
ikortegag 0:7ac8f5f3e58b 73
ikortegag 0:7ac8f5f3e58b 74 if(b1.falling()) {
ikortegag 0:7ac8f5f3e58b 75 l1 = !l1;
ikortegag 0:7ac8f5f3e58b 76 ++i;
ikortegag 0:7ac8f5f3e58b 77 lcd.locate(3,1);
ikortegag 0:7ac8f5f3e58b 78 lcd.printf("%d",i);
ikortegag 0:7ac8f5f3e58b 79 }
ikortegag 0:7ac8f5f3e58b 80 if (b2.falling() && i>=1) {
ikortegag 0:7ac8f5f3e58b 81 l2 = !l2;
ikortegag 0:7ac8f5f3e58b 82 --i;
ikortegag 0:7ac8f5f3e58b 83 lcd.locate(3,1);
ikortegag 0:7ac8f5f3e58b 84 lcd.printf("%d",i);
ikortegag 0:7ac8f5f3e58b 85 }
ikortegag 0:7ac8f5f3e58b 86 if (b3.falling()) {
ikortegag 0:7ac8f5f3e58b 87 k+=1;
ikortegag 0:7ac8f5f3e58b 88 i=0;
ikortegag 0:7ac8f5f3e58b 89 }
ikortegag 0:7ac8f5f3e58b 90
ikortegag 0:7ac8f5f3e58b 91 }
ikortegag 0:7ac8f5f3e58b 92
ikortegag 0:7ac8f5f3e58b 93
ikortegag 0:7ac8f5f3e58b 94 while(k==4) {
ikortegag 0:7ac8f5f3e58b 95
ikortegag 0:7ac8f5f3e58b 96 if(b1.falling()) {
ikortegag 0:7ac8f5f3e58b 97 l1 = !l1;
ikortegag 0:7ac8f5f3e58b 98 ++i;
ikortegag 0:7ac8f5f3e58b 99 lcd.locate(14,1);
ikortegag 0:7ac8f5f3e58b 100 lcd.printf("%d",i);
ikortegag 0:7ac8f5f3e58b 101 }
ikortegag 0:7ac8f5f3e58b 102 if (b2.falling() && i>=1) {
ikortegag 0:7ac8f5f3e58b 103 l2 = !l2;
ikortegag 0:7ac8f5f3e58b 104 --i;
ikortegag 0:7ac8f5f3e58b 105 lcd.locate(14,1);
ikortegag 0:7ac8f5f3e58b 106 lcd.printf("%d",i);
ikortegag 0:7ac8f5f3e58b 107 }
ikortegag 0:7ac8f5f3e58b 108 if (b3.falling()) {
ikortegag 0:7ac8f5f3e58b 109 k=1;
ikortegag 0:7ac8f5f3e58b 110 i=0;
ikortegag 0:7ac8f5f3e58b 111 }
ikortegag 0:7ac8f5f3e58b 112 continue;
ikortegag 0:7ac8f5f3e58b 113 }
ikortegag 0:7ac8f5f3e58b 114
ikortegag 0:7ac8f5f3e58b 115 }
ikortegag 0:7ac8f5f3e58b 116
ikortegag 0:7ac8f5f3e58b 117 }
ikortegag 0:7ac8f5f3e58b 118