Prototipo

Dependencies:   freetronicsLCDShield mbed

Committer:
hite222008
Date:
Wed May 28 18:35:42 2014 +0000
Revision:
1:5372d7ce92ff
Parent:
0:c7f387fc3773
Child:
2:196bf6ff7eff
a

Who changed what in which revision?

UserRevisionLine numberNew contents of line
hite222008 0:c7f387fc3773 1 #include "mbed.h"
hite222008 0:c7f387fc3773 2 #include "freetronicsLCDShield.h"
hite222008 0:c7f387fc3773 3
hite222008 0:c7f387fc3773 4 freetronicsLCDShield lcd(D8, D9, D4, D5, D6, D7, D3, A0);
hite222008 0:c7f387fc3773 5 DigitalOut valvula1(PTC12);
hite222008 0:c7f387fc3773 6 DigitalOut valvula2(PTC13);
hite222008 0:c7f387fc3773 7 DigitalOut valvula3(PTC16);
hite222008 0:c7f387fc3773 8 DigitalOut valvula4(PTC17);
hite222008 0:c7f387fc3773 9 DigitalIn switch1(PTB8);
hite222008 0:c7f387fc3773 10 DigitalIn switch2(PTB9);
hite222008 0:c7f387fc3773 11 DigitalIn switch3(PTB10);
hite222008 0:c7f387fc3773 12 DigitalIn switch4(PTB11);
hite222008 1:5372d7ce92ff 13 DigitalIn start(PTE2);
hite222008 0:c7f387fc3773 14 AnalogIn pot1(PTB0);
hite222008 0:c7f387fc3773 15 AnalogIn pot2(PTB1);
hite222008 0:c7f387fc3773 16 AnalogIn pot3(PTB2);
hite222008 0:c7f387fc3773 17 AnalogIn pot4(PTB3);
hite222008 1:5372d7ce92ff 18 Timer t1;
hite222008 1:5372d7ce92ff 19 Timer t2;
hite222008 1:5372d7ce92ff 20 Timer t3;
hite222008 1:5372d7ce92ff 21 Timer t4;
hite222008 0:c7f387fc3773 22
hite222008 1:5372d7ce92ff 23 float tiempo1, tiempo2, tiempo3, tiempo4;
hite222008 1:5372d7ce92ff 24 int bandera, bandera1, bandera2, bandera3, bandera4;
hite222008 1:5372d7ce92ff 25
hite222008 1:5372d7ce92ff 26 float pot11;
hite222008 1:5372d7ce92ff 27 float pot22;
hite222008 1:5372d7ce92ff 28 float pot33;
hite222008 1:5372d7ce92ff 29 float pot44;
hite222008 1:5372d7ce92ff 30
hite222008 1:5372d7ce92ff 31
hite222008 0:c7f387fc3773 32 int main() {
hite222008 1:5372d7ce92ff 33
hite222008 1:5372d7ce92ff 34 while(1){
hite222008 1:5372d7ce92ff 35
hite222008 1:5372d7ce92ff 36 if(start==0){
hite222008 1:5372d7ce92ff 37 bandera=1;
hite222008 1:5372d7ce92ff 38 valvula1=0;
hite222008 1:5372d7ce92ff 39 valvula2=0;
hite222008 1:5372d7ce92ff 40 valvula3=0;
hite222008 1:5372d7ce92ff 41 valvula4=0;
hite222008 1:5372d7ce92ff 42
hite222008 1:5372d7ce92ff 43 lcd.setCursorPosition(0, 0);
hite222008 1:5372d7ce92ff 44 if(switch1==1){
hite222008 1:5372d7ce92ff 45 lcd.printf("ON ");
hite222008 1:5372d7ce92ff 46 lcd.setCursorPosition(1, 0);
hite222008 1:5372d7ce92ff 47 pot11=pot1.read();
hite222008 1:5372d7ce92ff 48 lcd.printf("%0.1f",pot11);
hite222008 1:5372d7ce92ff 49
hite222008 1:5372d7ce92ff 50 }
hite222008 1:5372d7ce92ff 51 else {
hite222008 1:5372d7ce92ff 52 lcd.printf("OFF");
hite222008 1:5372d7ce92ff 53 lcd.setCursorPosition(1, 0);
hite222008 1:5372d7ce92ff 54 lcd.printf("0.0 ");
hite222008 1:5372d7ce92ff 55
hite222008 1:5372d7ce92ff 56 }
hite222008 1:5372d7ce92ff 57
hite222008 1:5372d7ce92ff 58 lcd.setCursorPosition(0, 4);
hite222008 1:5372d7ce92ff 59 if(switch2==1){
hite222008 1:5372d7ce92ff 60 lcd.printf("ON ");
hite222008 1:5372d7ce92ff 61 lcd.setCursorPosition(1, 4);
hite222008 1:5372d7ce92ff 62 pot22=pot2.read();
hite222008 1:5372d7ce92ff 63 lcd.printf("%0.1f",pot22);
hite222008 1:5372d7ce92ff 64 }
hite222008 1:5372d7ce92ff 65 else {
hite222008 1:5372d7ce92ff 66 lcd.printf("OFF");
hite222008 1:5372d7ce92ff 67 lcd.setCursorPosition(1, 4);
hite222008 1:5372d7ce92ff 68 lcd.printf("0.0 ");
hite222008 1:5372d7ce92ff 69 }
hite222008 1:5372d7ce92ff 70
hite222008 1:5372d7ce92ff 71 lcd.setCursorPosition(0, 8);
hite222008 1:5372d7ce92ff 72 if(switch3==1){
hite222008 1:5372d7ce92ff 73 lcd.printf("ON ");
hite222008 1:5372d7ce92ff 74 lcd.setCursorPosition(1, 8);
hite222008 1:5372d7ce92ff 75 pot33=pot3.read();
hite222008 1:5372d7ce92ff 76 lcd.printf("%0.1f",pot33);
hite222008 1:5372d7ce92ff 77 }
hite222008 1:5372d7ce92ff 78 else {
hite222008 1:5372d7ce92ff 79 lcd.printf("OFF");
hite222008 1:5372d7ce92ff 80 lcd.setCursorPosition(1, 8);
hite222008 1:5372d7ce92ff 81 lcd.printf("0.0 ");
hite222008 1:5372d7ce92ff 82 }
hite222008 1:5372d7ce92ff 83
hite222008 1:5372d7ce92ff 84 lcd.setCursorPosition(0, 12);
hite222008 1:5372d7ce92ff 85 if(switch4==1){
hite222008 1:5372d7ce92ff 86 lcd.printf("ON ");
hite222008 1:5372d7ce92ff 87 lcd.setCursorPosition(1, 12);
hite222008 1:5372d7ce92ff 88 pot44=pot4.read();
hite222008 1:5372d7ce92ff 89 lcd.printf("%0.1f",pot44);
hite222008 1:5372d7ce92ff 90 }
hite222008 1:5372d7ce92ff 91 else {
hite222008 1:5372d7ce92ff 92 lcd.printf("OFF");
hite222008 1:5372d7ce92ff 93 lcd.setCursorPosition(1, 12);
hite222008 1:5372d7ce92ff 94 lcd.printf("0.0 ");
hite222008 1:5372d7ce92ff 95 }
hite222008 1:5372d7ce92ff 96
hite222008 1:5372d7ce92ff 97 }else{
hite222008 1:5372d7ce92ff 98 if(bandera==1){
hite222008 1:5372d7ce92ff 99 tiempo1=pot11*60;
hite222008 1:5372d7ce92ff 100 tiempo2=pot22*60;
hite222008 1:5372d7ce92ff 101 tiempo3=pot33*60;
hite222008 1:5372d7ce92ff 102 tiempo4=pot44*60;
hite222008 1:5372d7ce92ff 103 bandera1=switch1;
hite222008 1:5372d7ce92ff 104 bandera2=switch2;
hite222008 1:5372d7ce92ff 105 bandera3=switch3;
hite222008 1:5372d7ce92ff 106 bandera4=switch4;
hite222008 1:5372d7ce92ff 107 bandera=0;
hite222008 1:5372d7ce92ff 108 }
hite222008 1:5372d7ce92ff 109 if(bandera1==1){
hite222008 1:5372d7ce92ff 110 bandera1=0;
hite222008 1:5372d7ce92ff 111 valvula1=1;
hite222008 1:5372d7ce92ff 112 t1.start();
hite222008 1:5372d7ce92ff 113 }
hite222008 1:5372d7ce92ff 114 if(t1>=tiempo1){
hite222008 1:5372d7ce92ff 115 t1.stop();
hite222008 1:5372d7ce92ff 116 t1.reset();
hite222008 1:5372d7ce92ff 117 valvula1=0;
hite222008 1:5372d7ce92ff 118 }
hite222008 1:5372d7ce92ff 119
hite222008 1:5372d7ce92ff 120 if(bandera2==1){
hite222008 1:5372d7ce92ff 121 bandera2=0;
hite222008 1:5372d7ce92ff 122 valvula2=1;
hite222008 1:5372d7ce92ff 123 t2.start();
hite222008 1:5372d7ce92ff 124 }
hite222008 1:5372d7ce92ff 125 if(t2>=tiempo2){
hite222008 1:5372d7ce92ff 126 t2.stop();
hite222008 1:5372d7ce92ff 127 t2.reset();
hite222008 1:5372d7ce92ff 128 valvula2=0;
hite222008 1:5372d7ce92ff 129 }
hite222008 1:5372d7ce92ff 130
hite222008 1:5372d7ce92ff 131 if(bandera3==1){
hite222008 1:5372d7ce92ff 132 bandera3=0;
hite222008 1:5372d7ce92ff 133 valvula3=1;
hite222008 1:5372d7ce92ff 134 t3.start();
hite222008 1:5372d7ce92ff 135 }
hite222008 1:5372d7ce92ff 136 if(t3>=tiempo3){
hite222008 1:5372d7ce92ff 137 t3.stop();
hite222008 1:5372d7ce92ff 138 t3.reset();
hite222008 1:5372d7ce92ff 139 valvula3=0;
hite222008 1:5372d7ce92ff 140 }
hite222008 1:5372d7ce92ff 141
hite222008 1:5372d7ce92ff 142 if(bandera4==1){
hite222008 1:5372d7ce92ff 143 bandera4=0;
hite222008 1:5372d7ce92ff 144 valvula4=1;
hite222008 1:5372d7ce92ff 145 t4.start();
hite222008 1:5372d7ce92ff 146 }
hite222008 1:5372d7ce92ff 147 if(t4>=tiempo4){
hite222008 1:5372d7ce92ff 148 t4.stop();
hite222008 1:5372d7ce92ff 149 t4.reset();
hite222008 1:5372d7ce92ff 150 valvula4=0;
hite222008 1:5372d7ce92ff 151 }
hite222008 1:5372d7ce92ff 152
hite222008 1:5372d7ce92ff 153 }
hite222008 1:5372d7ce92ff 154
hite222008 1:5372d7ce92ff 155 }
hite222008 1:5372d7ce92ff 156 }
hite222008 1:5372d7ce92ff 157
hite222008 1:5372d7ce92ff 158
hite222008 1:5372d7ce92ff 159 /*lcd.printf("prototipo SR1");
hite222008 0:c7f387fc3773 160 wait(3);
hite222008 0:c7f387fc3773 161 t.start();
hite222008 0:c7f387fc3773 162 lcd.setCursorPosition(1, 0);
hite222008 0:c7f387fc3773 163 lcd.printf("counter");
hite222008 0:c7f387fc3773 164
hite222008 0:c7f387fc3773 165 while(1){
hite222008 0:c7f387fc3773 166 tiempo=t.read();
hite222008 0:c7f387fc3773 167 lcd.setCursorPosition(1, 8);
hite222008 0:c7f387fc3773 168 lcd.printf("%f", tiempo);
hite222008 0:c7f387fc3773 169 if(t>=0 && t<6){
hite222008 0:c7f387fc3773 170 valvula1=1;
hite222008 0:c7f387fc3773 171 valvula2=0;
hite222008 0:c7f387fc3773 172 valvula3=0;
hite222008 0:c7f387fc3773 173 valvula4=0;
hite222008 0:c7f387fc3773 174 //lcd.printf("%d", t);
hite222008 0:c7f387fc3773 175 }else if(t>=6 && t<12){
hite222008 0:c7f387fc3773 176 valvula1=0;
hite222008 0:c7f387fc3773 177 valvula2=1;
hite222008 0:c7f387fc3773 178 valvula3=0;
hite222008 0:c7f387fc3773 179 valvula4=0;
hite222008 0:c7f387fc3773 180 }else if(t>=12 && t<18){
hite222008 0:c7f387fc3773 181 valvula1=0;
hite222008 0:c7f387fc3773 182 valvula2=0;
hite222008 0:c7f387fc3773 183 valvula3=1;
hite222008 0:c7f387fc3773 184 valvula4=0;
hite222008 0:c7f387fc3773 185 }else if(t>=18 && t<24){
hite222008 0:c7f387fc3773 186 valvula1=0;
hite222008 0:c7f387fc3773 187 valvula2=0;
hite222008 0:c7f387fc3773 188 valvula3=0;
hite222008 0:c7f387fc3773 189 valvula4=1;
hite222008 0:c7f387fc3773 190 }else if(t>=24){
hite222008 0:c7f387fc3773 191 t.reset();
hite222008 0:c7f387fc3773 192 }
hite222008 1:5372d7ce92ff 193 }*/