2 Motores + Joystick
Dependencies: X_NUCLEO_IHM01A1 TextLCD
Fork of HelloWorld_IHM01A1_2Motors_mbedOS by
Revision 54:175e4f3682e8, committed 2018-05-22
- Comitter:
- leogrotti
- Date:
- Tue May 22 14:08:26 2018 +0000
- Parent:
- 53:7c56b06e694e
- Child:
- 55:b2ad60cc21a1
- Commit message:
- introduzindo IHM aos motores
Changed in this revision
| main.cpp | Show annotated file Show diff for this revision Revisions of this file |
--- a/main.cpp Mon May 21 19:44:03 2018 +0000
+++ b/main.cpp Tue May 22 14:08:26 2018 +0000
@@ -103,10 +103,10 @@
AnalogIn eixo_ZU(A0);
AnalogIn eixo_ZD(A1);
-DigitalIn salva_pos (PC_1); //1
-DigitalIn vai_cami (PC_0); //2
-DigitalIn cancelar (PC_10); //3
-DigitalIn concluir (PC_12); //4
+DigitalIn botao1 (PC_1); //1
+DigitalIn botao2 (PC_0); //2
+DigitalIn botao3 (PC_10); //3
+DigitalIn botao4 (PC_12); //4
float x;
float y;
@@ -191,6 +191,10 @@
wait_ms(DELAY_2);
}
+void volta_menu() {
+
+ }
+
void vai_caminho_desejado (int listapontosX[10], int listapontosY[10], int listapontosZ[10], int index_local) {
int PYatual = motor1->get_position();
int PXatual = motor2->get_position();
@@ -320,7 +324,7 @@
lcd.printf("1-SALVAR PONTOS");
lcd.setAddress(0,3);
lcd.printf("2-INICIAR PROGRAMA");
-
+
while(true) {
count = count +1;
// Leitura analógica
@@ -328,8 +332,8 @@
w = eixo_Y.read();
zu = eixo_ZU.read();
zd = eixo_ZD.read();
- sp = salva_pos.read();
- vc = vai_cami.read();
+ sp = botao1.read();
+ vc = botao2.read();
if (count == 50) {
printf("seguranca fim de curso =%i \r\n\n", segu_fim_curso);
//printf("w =%f \r\n\n", w);
@@ -451,13 +455,17 @@
}
}
}
-
- if (vai_cami) {
+
+ if (botao2 && menu==0) {
vai_caminho_desejado(listaX, listaY, listaZ, index);
printf("Vai caminho pressionado %d \r\n", index);
wait_ms(DELAY_2);
+ lcd.cls();
+ lcd.setCursor(TextLCD::CurOff_BlkOff);
+ lcd.setAddress(0,0);
}
- if (salva_pos && menu == 0){
+
+ if (botao1 && menu == 0){
menu = 1;
lcd.cls();
lcd.setCursor(TextLCD::CurOff_BlkOff);
@@ -467,11 +475,13 @@
lcd.printf("2-VOLTAR");
lcd.setAddress(0,2);
lcd.printf("3-CANCELAR ");
+ lcd.setAddress(0,3);
+ lcd.printf("4-CONCLUIR ");
wait_ms(DELAY_2);
}
- if (salva_pos && menu>0){
+ if (botao1 && menu>0 && menu <99){
lcd.cls();
salva_posicao();
lcd.setCursor(TextLCD::CurOff_BlkOff);
@@ -481,9 +491,112 @@
lcd.printf("2-VOLTAR");
lcd.setAddress(0,2);
lcd.printf("3-CANCELAR ");
+ lcd.setAddress(0,3);
+ lcd.printf("4-CONCLUIR ");
menu=menu+1;
}
+ if (botao2 && menu>1 && menu <99){
+ lcd.cls();
+ menu=menu-1;
+ lcd.setCursor(TextLCD::CurOff_BlkOff);
+ lcd.setAddress(0,0);
+ lcd.printf("1-SALVAR PONTO %i",menu);
+ lcd.setAddress(0,1);
+ lcd.printf("2-VOLTAR");
+ lcd.setAddress(0,2);
+ lcd.printf("3-CANCELAR ");
+ lcd.setAddress(0,3);
+ lcd.printf("4-CONCLUIR ");
+ }
+ if (botao3 && menu>0){
+ lcd.cls();
+ lcd.setAddress(2,0);
+ lcd.printf("TEM CERTEZA QUE");
+ lcd.setAddress(2,1);
+ lcd.printf("DESEJA CANCELAR?");
+ lcd.setAddress(1,2);
+ lcd.printf("PONTOS IRAO APAGAR");
+ lcd.setAddress(1,4);
+ lcd.printf("1-SIM");
+ lcd.setAddress(10,4);
+ lcd.printf("2-NAO");
+ menu=100;
+ }
+ if (botao2 && menu==1){
+ lcd.cls();
+ menu=0;
+ lcd.setAddress(3,0);
+ lcd.printf("MENU PRINCIPAL");
+ lcd.setAddress(0,2);
+ lcd.printf("1-SALVAR PONTOS");
+ lcd.setAddress(0,3);
+ lcd.printf("2-INICIAR PROGRAMA");
+ }
+
+ if (botao1 && menu==100){
+ lcd.cls();
+ lcd.setAddress(3,0);
+ lcd.printf("MENU PRINCIPAL");
+ lcd.setAddress(0,2);
+ lcd.printf("1-SALVAR PONTOS");
+ lcd.setAddress(0,3);
+ lcd.printf("2-INICIAR PROGRAMA");
+ menu=0;
+ }
+ if (botao2 && menu==100){
+ lcd.cls();
+ menu=index;
+ lcd.setCursor(TextLCD::CurOff_BlkOff);
+ lcd.setAddress(0,0);
+ lcd.printf("1-SALVAR PONTO %i",menu+1);
+ lcd.setAddress(0,1);
+ lcd.printf("2-VOLTAR");
+ lcd.setAddress(0,2);
+ lcd.printf("3-CANCELAR ");
+ lcd.setAddress(0,3);
+ lcd.printf("4-CONCLUIR ");
+ }
+ if (botao4 && menu>0){
+ lcd.cls();
+ lcd.setAddress(0,0);
+ lcd.printf("PONTOS SALVOS");
+ lcd.setAddress(0,2);
+ lcd.printf("1-INICIAR PROGRAMA");
+ lcd.setAddress(0,3);
+ lcd.printf("2-VOLTAR A SALVAR");
+ menu=200;
+ }
+ if (botao1 && menu==200){
+ lcd.cls();
+ lcd.setAddress(0,0);
+ lcd.printf("SALVE SEU PONTO");
+ lcd.setAddress(0,1);
+ lcd.printf("DE RETIRADA");
+ lcd.setAddress(0,4);
+ lcd.printf("1-SALVAR PONTO");
+
+ menu= 201;
+ }
+ if (botao1 && menu==201){
+ salva_posicao();
+ lcd.cls();
+ lcd.setAddress(0,0);
+ lcd.printf("AGUARDE...");
+ (vai_caminho_desejado(listaX, listaY, listaZ, index);
+ lcd.cls();
+ lcd.setAddress(3,0);
+ lcd.printf("MENU PRINCIPAL");
+ lcd.setAddress(0,2);
+ lcd.printf("1-SALVAR PONTOS");
+ lcd.setAddress(0,3);
+ lcd.printf("2-INICIAR PROGRAMA");
+ menu=0;
+
+ }
+
+
+ }
}
-}
+
