Código para o menu no LCD
Dependencies: mbed SDFileSystemSD TextLCD
Fork of TextLCD_HelloWorld2 by
Diff: classes.h
- Revision:
- 38:6c94230e5ecd
- Parent:
- 37:30f7dd6f2ea5
- Child:
- 40:e70f811c69dc
diff -r 30f7dd6f2ea5 -r 6c94230e5ecd classes.h --- a/classes.h Wed May 30 15:58:38 2018 +0000 +++ b/classes.h Mon Jun 04 19:40:07 2018 +0000 @@ -182,7 +182,7 @@ error("Could not open file for write\n\r"); return 0; } - + t.reset(); t.start(); while(1){ @@ -424,33 +424,7 @@ movercursor(0,3,10); if (bot_enter!=penter){ if (linha==0){ - if (pontos==0 && maxpontos>10){ - cx_salva = 0; - cy_salva = 0; - cz_salva = 0; - pontos++; - maxpontos--; - func = 22; - } - else if (pontos>=1 && maxpontos>10){ - cx_salva = cx; - cy_salva = cy; - cz_salva = cz; - pontos++; - maxpontos--; - func = 22; - } - else if (maxpontos<=10){ - cx_salva = cx; - cy_salva = cy; - cz_salva = cz; - pontos++; - maxpontos--; - func = 5; - } - else if (maxpontos==0){ - func = 16; - } + func = 6; } else if (linha==1){ if (pontos>=1){ @@ -484,6 +458,8 @@ //func 3 void automatico(){ //tela modo automatico lcd.cls(); + f = 0; + sair = 0; bot_enter = penter; printf("Automatico\n\r"); lcd.printf("Selecione o programa"); @@ -497,7 +473,6 @@ void config() { lcd.cls(); bot_enter = penter; - //printf("%d,tela\n\r", penter); lcd.locate(1,0); lcd.printf("Definir velocidade"); lcd.locate(1,1); @@ -543,7 +518,7 @@ lcd.printf("%d", maxpontos); wait(1); if (pontos>0){ - func = 6; + func = 2; } else if (pontos==0){ func = 2; @@ -563,19 +538,117 @@ lcd.printf("Cola continua"); movercursor(1,3,2); if (bot_enter!=penter){ + if (Mach.readable()){ + readSerial(); + } if (linha==1){ cola = 0; - func = 2; + if (pontos==0 && maxpontos>10){ + cx_salva = 0; + cy_salva = 0; + cz_salva = 0; + pontos++; + maxpontos--; + machine.save_point(cola,1.0); + printf("salvei ponto\n\r"); + func = 22; + } + else if (pontos>=1 && maxpontos>10){ + cx_salva = cx; + cy_salva = cy; + cz_salva = cz; + pontos++; + maxpontos--; + machine.save_point(cola,1.0); + printf("salvei ponto\n\r"); + func = 22; + } + else if (maxpontos<=10){ + cx_salva = cx; + cy_salva = cy; + cz_salva = cz; + pontos++; + maxpontos--; + machine.save_point(cola,1.0); + printf("salvei ponto\n\r"); + func = 5; + } + else if (maxpontos==0){ + func = 16; + } } else if (linha==2) { cola = 1; - func = 2; + if (pontos==0 && maxpontos>10){ + cx_salva = 0; + cy_salva = 0; + cz_salva = 0; + pontos++; + maxpontos--; + machine.save_point(cola,1.0); + printf("salvei ponto\n\r"); + func = 22; + } + else if (pontos>=1 && maxpontos>10){ + cx_salva = cx; + cy_salva = cy; + cz_salva = cz; + pontos++; + maxpontos--; + machine.save_point(cola,1.0); + printf("salvei ponto\n\r"); + func = 22; + } + else if (maxpontos<=10){ + cx_salva = cx; + cy_salva = cy; + cz_salva = cz; + pontos++; + maxpontos--; + machine.save_point(cola,1.0); + printf("salvei ponto\n\r"); + func = 5; + } + else if (maxpontos==0){ + func = 16; + } } else if (linha==3) { cola = 2; - func = 2; - } - machine.save_point(cola,1.0); + if (pontos==0 && maxpontos>10){ + cx_salva = 0; + cy_salva = 0; + cz_salva = 0; + pontos++; + maxpontos--; + machine.save_point(cola,1.0); + printf("salvei ponto\n\r"); + func = 22; + } + else if (pontos>=1 && maxpontos>10){ + cx_salva = cx; + cy_salva = cy; + cz_salva = cz; + pontos++; + maxpontos--; + machine.save_point(cola,1.0); + printf("salvei ponto\n\r"); + func = 22; + } + else if (maxpontos<=10){ + cx_salva = cx; + cy_salva = cy; + cz_salva = cz; + pontos++; + maxpontos--; + machine.save_point(cola,1.0); + printf("salvei ponto\n\r"); + func = 5; + } + else if (maxpontos==0){ + func = 16; + } + } } } @@ -657,30 +730,14 @@ void executando(){ //tela de executando lcd.cls(); machine.start_program(); + printf("start program, %s\n\r", arquivo); lcd.locate(4,1); lcd.printf("Executando"); - tpontinhos.start(); + //tpontinhos.start(); while (exec == 1){ if (Mach.readable()){ readSerial(); } - if (tpontinhos.read()<0.5){ - lcd.locate(14,1); - lcd.printf(" "); - } - if (tpontinhos.read()>=0.5 && tpontinhos.read()<1.0){ - lcd.locate(14,1); - lcd.printf(". "); - } - if (tpontinhos.read()>=1 && tpontinhos.read()<1.5){ - lcd.locate(14,1); - lcd.printf(".. "); - } - if (tpontinhos.read()>0.5 && tpontinhos.read()<1.0){ - lcd.locate(14,1); - lcd.printf("..."); - tpontinhos.reset(); - } } //printf("saiu\n\r"); func = 11; @@ -971,7 +1028,7 @@ lcd.printf(" %.2f ", cz); } wait(1); - func = 6; + func = 2; } //func 23 @@ -1099,62 +1156,46 @@ //função ler arquivos void arquivos(){ + exec = 0; int nomearq; nomearq = sdcard.get_file_names(); - //printf("%s\n\r", filenames); int ftamanho = filenames.size(); int fmax = ftamanho - 1; - //printf("%d, %d\n\r", ftamanho, fmax); int fant = 1; - - //printf("%d\n\r", nomearq); while (sair==0){ - //while(bot_enter==penter){ - //printf("%d, %d\n\r", bot_enter, penter); - //printf("%d\n\r", f); - if (bot_cima==0){ - fant = f; - f--; - if (f<0){ - f = fmax; - } - bot_cima = 1; + if (bot_cima==0){ + fant = f; + f--; + if (f<0){ + f = fmax; } - if (bot_baixo==0){ - fant = f; - f++; - if (f>fmax){ - f = 0; - } - bot_baixo = 1; + bot_cima = 1; + } + if (bot_baixo==0){ + fant = f; + f++; + if (f>fmax){ + f = 0; } - arquivo = filenames[f]; - if (f!=fant){ - //printf("%d\n\r", f); - lcd.locate(0,1); - lcd.printf(" "); - lcd.locate(0,2); - lcd.printf(" "); - lcd.locate(0,1); - lcd.printf("%s", arquivo); - } - //printf("trocou\n\r"); - /*if(timer.read() > 1.0){ - sair = 1; - printf("SAINDO\n\r"); - timer.reset(); - timer.stop(); - break; - } */ - if (bot_enter!=penter){ - lcd.locate(10,3); - lcd.printf("Aguarde..."); - sdcard.send_gcode(arquivo); - func = 26; - printf("send gcode\n\r"); - break; - } - //} + bot_baixo = 1; + } + arquivo = filenames[f]; + if (f!=fant){ + lcd.locate(0,1); + lcd.printf(" "); + lcd.locate(0,2); + lcd.printf(" "); + lcd.locate(0,1); + lcd.printf("%s", arquivo); + } + if (bot_enter!=penter){ + lcd.locate(10,3); + lcd.printf("Aguarde..."); + sdcard.send_gcode(arquivo); + printf("send gcode, %s\n\r", arquivo); + func = 26; + break; + } fant = f; } } @@ -1276,6 +1317,7 @@ if (recv == 'p'){ points = 1; + printf("p\n\r"); } if(recv == 'u'){ @@ -1287,7 +1329,8 @@ printf("OK\n\r"); status = sdcard.save_GCODE(file_name, recv_buffer); return; - } else if(recv != 'u'){ + } + else if(recv != 'u'){ recv_buffer.push_back(recv); } }