Javier Negrette
/
tarea_miercoles
egrfgfrgg
main.cpp
- Committer:
- javiernegrette
- Date:
- 2013-10-16
- Revision:
- 0:5d3dea91c85f
File content as of revision 0:5d3dea91c85f:
#include "mbed.h" #include "DebouncedIn.h" #include "TextLCD.h" AnalogIn Vin(PTC2); TextLCD lcd(PTB10, PTB11, PTE2, PTE3, PTE4, PTE5); // rs, e, d4-d7 DigitalOut led1(LED1); DigitalOut led2(LED2); DigitalOut led3(LED3); DebouncedIn button1(PTC12); DebouncedIn button2(PTC13); DebouncedIn button3(PTC16); DebouncedIn button4(PTC17); //codigos movimiento del curzor //18 para izquierda //1A para derecha int C1=0x0E; // solo muestra el curzor int C2=0x18; // desplaza izquierda int C3=0x1A; // desplaza derecha int C4=0x0C; // quito cursor bajo int i; // indice de la variable int j; //variable controla cambio 4 posiciones int kp, ki, kd, sp; int main() { lcd.writeCommand(C1);//escribimos un comando segun el manual del modulo LCD lcd.cls(); lcd.locate(0,0); lcd.printf("Sp%d",sp);//primero print y luego locate?? o al contrario?? lcd.locate(8,0); lcd.printf("Kp%d",kp); lcd.locate(0,1); lcd.printf("Ki%d",ki); lcd.locate(8,1); lcd.printf("Kd%d",kd); while(1) { led3 =1; if (button3.falling()) { led3 =!led3; ++j; } //INCREMENTA POSICION DEL MENU CON BOTON 3 if (j==0){ lcd.locate(2,0); lcd.printf("%d",sp); wait(0.5); led1 =1; if (button1.falling()) { led1 =!led1; ++sp; // ademas revisa boton 1 para incrementar } led2 =1; if (button2.falling()) { led2 =!led2; --sp; // ademas revisa boton 2 para decrementar } if (sp>9999){ sp=9999; } if (sp<0){ sp=0; } if (button4.falling()){ sp=0; kp=0; ki=0; kd=0; } } if (j==1) { lcd.locate(10,0); lcd.printf("%d",kp); wait(0.5); led1 =1; if (button1.falling()) { led1 =!led1; ++kp; } led2 =1; if (button2.falling()) { led2 =!led2; --kp; } if (kp>9999){ kp=9999; lcd.locate(10,0); lcd.printf("%d",kp); } if (kp<0){ kp=0; lcd.locate(10,0); lcd.printf("%d",kp); } if (button4.falling()){ sp=0; kp=0; ki=0; kd=0; lcd.locate(10,1); lcd.printf("%d",kd); lcd.locate(2,1); lcd.printf("%d",ki); lcd.locate(10,0); lcd.printf("%d",kp); lcd.locate(2,0); lcd.printf("%d",sp); } } if (j==2) { lcd.locate(2,1); lcd.printf("%d",ki); wait(0.5); led1 =1; if (button1.falling()){ led1 =!led1; ++ki; } led2 =1; if (button2.falling()){ led2 =!led2; --ki; } if (ki>9999){ ki=9999; lcd.locate(2,1); lcd.printf("%d",ki); } if (ki<0){ ki=0; lcd.locate(2,1); lcd.printf("%d",ki); } if (button4.falling()){ sp=0; kp=0; ki=0; kd=0; lcd.locate(10,1); lcd.printf("%d",kd); lcd.locate(2,1); lcd.printf("%d",ki); lcd.locate(10,0); lcd.printf("%d",kp); lcd.locate(2,0); lcd.printf("%d",sp); } } if (j==3) { lcd.locate(10,1); lcd.printf("%d",kd); wait(0.5); led1 =1; if (button1.falling()){ led1 =!led1; ++kd; } led2 =1; if (button2.falling()){ led2 =!led2; --kd; } if (kd>9999){ kd=9999; lcd.locate(10,1); lcd.printf("%d",kd); } if (kd<0){ kd=0; lcd.locate(10,1); lcd.printf("%d",kd); } if (button4.falling()){ sp=0; kp=0; ki=0; kd=0; lcd.locate(10,1); lcd.printf("%d",kd); lcd.locate(2,1); lcd.printf("%d",ki); lcd.locate(10,0); lcd.printf("%d",kp); lcd.locate(2,0); lcd.printf("%d",sp); } } if (j==4) { j=0; } } }