Projeto Mecatrônico
/
ProjetoMecatronico
testando
main_PM.cpp@28:c4733814201a, 2020-05-26 (annotated)
- Committer:
- enricoan
- Date:
- Tue May 26 20:52:31 2020 +0000
- Revision:
- 28:c4733814201a
- Parent:
- 27:45f8125a0c0b
- Child:
- 29:76d952358896
comentarios etc
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
enricoan | 20:81a44a25b21d | 1 | //local para inclusão de bibliotecas |
enricoan | 10:4f49e9859535 | 2 | #include "mbed.h" |
enricoan | 10:4f49e9859535 | 3 | #include "TextLCD.h" |
enricoan | 10:4f49e9859535 | 4 | #include "Keypad.h" |
enricoan | 10:4f49e9859535 | 5 | |
enricoan | 17:4d0b8ed791e0 | 6 | //local para a declaração de variáveis |
enricoan | 20:81a44a25b21d | 7 | float t_motor = 0.002; |
enricoan | 10:4f49e9859535 | 8 | float t_teclado = 0.01; |
enricoan | 19:ebe198368444 | 9 | int hor[] = {12,6,3,9}; |
enricoan | 19:ebe198368444 | 10 | int antihor[] = {3,6,12,9}; |
enricoan | 16:70baa0057a76 | 11 | int parado[] = {0,0,0,0}; |
enricoan | 16:70baa0057a76 | 12 | char tecla; |
enricoan | 18:3c40a8a17963 | 13 | float coord_x = 0; |
enricoan | 18:3c40a8a17963 | 14 | float coord_y = 0; |
enricoan | 18:3c40a8a17963 | 15 | float coord_z = 0; |
enricoan | 20:81a44a25b21d | 16 | int est_x = 0; |
enricoan | 20:81a44a25b21d | 17 | int est_y = 0; |
enricoan | 20:81a44a25b21d | 18 | int est_z = 0; |
enricoan | 17:4d0b8ed791e0 | 19 | |
enricoan | 17:4d0b8ed791e0 | 20 | //pinos usados pelos botões de fim de curso |
enricoan | 17:4d0b8ed791e0 | 21 | DigitalIn fdc_x(PC_10); |
enricoan | 17:4d0b8ed791e0 | 22 | DigitalIn fdc_y(PC_11); |
enricoan | 17:4d0b8ed791e0 | 23 | DigitalIn fdc_z(PC_12); |
enricoan | 20:81a44a25b21d | 24 | |
amandarm | 25:b0db528c1985 | 25 | //Iterrupção botão de emergência |
amandarm | 25:b0db528c1985 | 26 | InterruptIn emergencia_botao(PC_13); //trocar esse botão para onde está o botão de fato |
amandarm | 25:b0db528c1985 | 27 | |
amandarm | 25:b0db528c1985 | 28 | //pinos do relé |
amandarm | 25:b0db528c1985 | 29 | DigitalOut rele1(); //colocar pino do relé |
amandarm | 25:b0db528c1985 | 30 | DigitalOut rele2(); //colocar pino do relé |
amandarm | 25:b0db528c1985 | 31 | |
enricoan | 10:4f49e9859535 | 32 | //botões para movimentação eixo a eixo |
enricoan | 10:4f49e9859535 | 33 | DigitalIn x_mais(PA_0); |
enricoan | 10:4f49e9859535 | 34 | DigitalIn x_menos(PA_1); |
enricoan | 10:4f49e9859535 | 35 | DigitalIn y_mais(PC_0); |
enricoan | 10:4f49e9859535 | 36 | DigitalIn y_menos(PC_1); |
enricoan | 10:4f49e9859535 | 37 | DigitalIn z_mais(PC_2); |
enricoan | 10:4f49e9859535 | 38 | DigitalIn z_menos(PC_3); |
enricoan | 10:4f49e9859535 | 39 | |
enricoan | 10:4f49e9859535 | 40 | //pinos da placa usados na biblioteca do LCD |
enricoan | 10:4f49e9859535 | 41 | TextLCD lcd(D4, D5, D6, D7, D8, D9); |
enricoan | 10:4f49e9859535 | 42 | |
enricoan | 16:70baa0057a76 | 43 | //pinos do teclado |
enricoan | 16:70baa0057a76 | 44 | Keypad teclado(PA_6, PA_7, PB_6, PC_7, PB_7, PC_13, PC_14, PC_15); |
enricoan | 16:70baa0057a76 | 45 | |
enricoan | 10:4f49e9859535 | 46 | //pinos de saída para os motores |
enricoan | 10:4f49e9859535 | 47 | //eixo x |
Hiroball | 11:dc557e461dfd | 48 | BusOut eixox(PA_15,PA_14,PA_13,PA_12); |
enricoan | 10:4f49e9859535 | 49 | //eixo y |
Hiroball | 11:dc557e461dfd | 50 | BusOut eixoy(PA_11,PA_10,PB_2,PB_1); |
enricoan | 10:4f49e9859535 | 51 | //eixo z |
Hiroball | 11:dc557e461dfd | 52 | BusOut eixoz(PC_9,PC_8,PB_8,PC_6); |
enricoan | 10:4f49e9859535 | 53 | |
amandarm | 22:dd336b95db5d | 54 | //funções para as telas da IHM |
amandarm | 22:dd336b95db5d | 55 | |
amandarm | 22:dd336b95db5d | 56 | void funcao_inicio(){ |
amandarm | 25:b0db528c1985 | 57 | lcd.cls(); |
amandarm | 22:dd336b95db5d | 58 | lcd.printf("1-Novo programa"); |
amandarm | 22:dd336b95db5d | 59 | lcd.locate(0,1); |
amandarm | 22:dd336b95db5d | 60 | lcd.printf("2-Usar programa salvo"); |
amandarm | 22:dd336b95db5d | 61 | lcd.locate(0,2); |
amandarm | 22:dd336b95db5d | 62 | } |
amandarm | 22:dd336b95db5d | 63 | |
amandarm | 22:dd336b95db5d | 64 | void funcao_tela_zera(){ |
amandarm | 25:b0db528c1985 | 65 | lcd.cls(); |
amandarm | 25:b0db528c1985 | 66 | lcd.printf("Zeramento:"); |
amandarm | 25:b0db528c1985 | 67 | lcd.locate(0,1); |
amandarm | 25:b0db528c1985 | 68 | lcd.printf("Confira se não há"); |
amandarm | 25:b0db528c1985 | 69 | lcd.locate(0,2); |
amandarm | 25:b0db528c1985 | 70 | lcd.printf("objetos sobre a mesa"); |
amandarm | 25:b0db528c1985 | 71 | lcd.locate(0,3); |
amandarm | 25:b0db528c1985 | 72 | lcd.printf("A-Próximo B-Voltar"); |
amandarm | 22:dd336b95db5d | 73 | } |
amandarm | 22:dd336b95db5d | 74 | |
amandarm | 22:dd336b95db5d | 75 | void funcao_pega1(){ |
amandarm | 25:b0db528c1985 | 76 | lcd.cls(); |
amandarm | 25:b0db528c1985 | 77 | lcd.printf("Configuração de pega"); |
amandarm | 25:b0db528c1985 | 78 | lcd.locate(0,1); |
amandarm | 25:b0db528c1985 | 79 | lcd.printf("1-Forma do pega"); |
amandarm | 25:b0db528c1985 | 80 | lcd.locate(0,2); |
amandarm | 25:b0db528c1985 | 81 | lcd.printf("2-Volume do pega"); |
amandarm | 25:b0db528c1985 | 82 | lcd.locate(0,3); |
amandarm | 25:b0db528c1985 | 83 | lcd.printf(" B-Voltar"); |
amandarm | 22:dd336b95db5d | 84 | } |
amandarm | 22:dd336b95db5d | 85 | |
amandarm | 22:dd336b95db5d | 86 | void funcao_pega2(){ |
amandarm | 25:b0db528c1985 | 87 | lcd.cls(); |
amandarm | 25:b0db528c1985 | 88 | lcd.printf("Configuração de pega"); |
amandarm | 25:b0db528c1985 | 89 | lcd.locate(0,1); |
amandarm | 25:b0db528c1985 | 90 | lcd.printf("3-Posição do pega"); |
amandarm | 25:b0db528c1985 | 91 | lcd.locate(0,2); |
amandarm | 25:b0db528c1985 | 92 | lcd.printf(""); |
amandarm | 25:b0db528c1985 | 93 | lcd.locate(0,3); |
amandarm | 25:b0db528c1985 | 94 | lcd.printf(" B-Voltar"); |
amandarm | 22:dd336b95db5d | 95 | } |
amandarm | 22:dd336b95db5d | 96 | |
amandarm | 22:dd336b95db5d | 97 | void funcao_pega_forma(){ |
amandarm | 25:b0db528c1985 | 98 | lcd.cls(); |
amandarm | 22:dd336b95db5d | 99 | lcd.printf("Forma do pega"); |
amandarm | 22:dd336b95db5d | 100 | lcd.locate(0,1); |
amandarm | 22:dd336b95db5d | 101 | lcd.printf("1 - Quadrado"); |
amandarm | 22:dd336b95db5d | 102 | lcd.locate(0,2); |
amandarm | 22:dd336b95db5d | 103 | lcd.printf("2 - Circular"); |
amandarm | 22:dd336b95db5d | 104 | lcd.locate(0,3); |
amandarm | 22:dd336b95db5d | 105 | lcd.printf(" B-Voltar"); |
amandarm | 22:dd336b95db5d | 106 | } |
amandarm | 22:dd336b95db5d | 107 | |
amandarm | 22:dd336b95db5d | 108 | void funcao_pega_volume(){ |
amandarm | 25:b0db528c1985 | 109 | lcd.cls(); |
amandarm | 22:dd336b95db5d | 110 | lcd.printf("Insira o volume"); |
amandarm | 22:dd336b95db5d | 111 | lcd.locate(0,1); |
amandarm | 22:dd336b95db5d | 112 | lcd.printf("Em ml:"); |
amandarm | 22:dd336b95db5d | 113 | lcd.locate(0,2); |
amandarm | 22:dd336b95db5d | 114 | lcd.printf(""); |
amandarm | 22:dd336b95db5d | 115 | lcd.locate(0,3); |
amandarm | 22:dd336b95db5d | 116 | lcd.printf("A-Próximo B-Voltar"); |
amandarm | 22:dd336b95db5d | 117 | } |
amandarm | 22:dd336b95db5d | 118 | |
amandarm | 22:dd336b95db5d | 119 | void funcao_pega_forma_quad(){ |
amandarm | 25:b0db528c1985 | 120 | lcd.cls(); |
amandarm | 22:dd336b95db5d | 121 | lcd.printf("Dimensões do pega"); |
amandarm | 22:dd336b95db5d | 122 | lcd.locate(0,1); |
amandarm | 22:dd336b95db5d | 123 | lcd.printf("Comprimento em mm"); |
amandarm | 22:dd336b95db5d | 124 | lcd.locate(0,2); |
amandarm | 22:dd336b95db5d | 125 | lcd.printf(""); |
amandarm | 22:dd336b95db5d | 126 | lcd.locate(0,3); |
amandarm | 22:dd336b95db5d | 127 | lcd.printf("A-Próximo B-Voltar"); |
amandarm | 22:dd336b95db5d | 128 | } |
amandarm | 22:dd336b95db5d | 129 | |
amandarm | 22:dd336b95db5d | 130 | void funcao_pega_forma_red(){ |
amandarm | 25:b0db528c1985 | 131 | lcd.cls(); |
amandarm | 22:dd336b95db5d | 132 | lcd.printf("Dimensões do pega"); |
amandarm | 22:dd336b95db5d | 133 | lcd.locate(0,1); |
amandarm | 22:dd336b95db5d | 134 | lcd.printf("Diamentro em mm"); |
amandarm | 22:dd336b95db5d | 135 | lcd.locate(0,2); |
amandarm | 22:dd336b95db5d | 136 | lcd.printf(""); |
amandarm | 22:dd336b95db5d | 137 | lcd.locate(0,3); |
amandarm | 22:dd336b95db5d | 138 | lcd.printf("A-Próximo B-Voltar"); |
amandarm | 22:dd336b95db5d | 139 | } |
amandarm | 22:dd336b95db5d | 140 | void funcao_pega_pos_x(){ //desativar os botões de Y |
amandarm | 25:b0db528c1985 | 141 | lcd.cls(); |
amandarm | 22:dd336b95db5d | 142 | lcd.printf("Posicione pega em X"); |
amandarm | 22:dd336b95db5d | 143 | lcd.locate(0,1); |
amandarm | 22:dd336b95db5d | 144 | lcd.printf("Use botões até chegar"); |
amandarm | 22:dd336b95db5d | 145 | lcd.locate(0,2); |
amandarm | 22:dd336b95db5d | 146 | lcd.printf("na posição desejada"); |
amandarm | 22:dd336b95db5d | 147 | lcd.locate(0,3); |
amandarm | 22:dd336b95db5d | 148 | lcd.printf("A-Confirma B-Voltar"); |
amandarm | 22:dd336b95db5d | 149 | } |
amandarm | 22:dd336b95db5d | 150 | |
amandarm | 22:dd336b95db5d | 151 | void funcao_pega_pos_y(){ //desativar os botões de X |
amandarm | 25:b0db528c1985 | 152 | lcd.cls(); |
amandarm | 22:dd336b95db5d | 153 | lcd.printf("Posicione pega em Y"); |
amandarm | 22:dd336b95db5d | 154 | lcd.locate(0,1); |
amandarm | 22:dd336b95db5d | 155 | lcd.printf("Use botões até chegar"); |
amandarm | 22:dd336b95db5d | 156 | lcd.locate(0,2); |
amandarm | 22:dd336b95db5d | 157 | lcd.printf("na posição desejada"); |
amandarm | 22:dd336b95db5d | 158 | lcd.locate(0,3); |
amandarm | 22:dd336b95db5d | 159 | lcd.printf("A-Confirma B-Voltar"); |
amandarm | 22:dd336b95db5d | 160 | } |
amandarm | 22:dd336b95db5d | 161 | |
amandarm | 22:dd336b95db5d | 162 | void funcao_solta1(){ |
amandarm | 25:b0db528c1985 | 163 | lcd.cls(); |
amandarm | 22:dd336b95db5d | 164 | lcd.printf("Configuração solta"); |
amandarm | 22:dd336b95db5d | 165 | lcd.locate(0,1); |
amandarm | 22:dd336b95db5d | 166 | lcd.printf("1-Dimensão solta"); |
amandarm | 22:dd336b95db5d | 167 | lcd.locate(0,2); |
amandarm | 22:dd336b95db5d | 168 | lcd.printf("2-Volume da solta"); |
amandarm | 22:dd336b95db5d | 169 | lcd.locate(0,3); |
amandarm | 22:dd336b95db5d | 170 | lcd.printf(" B-Voltar"); |
amandarm | 22:dd336b95db5d | 171 | } |
amandarm | 22:dd336b95db5d | 172 | |
amandarm | 22:dd336b95db5d | 173 | void funcao_solta2(){ |
amandarm | 25:b0db528c1985 | 174 | lcd.cls(); |
amandarm | 22:dd336b95db5d | 175 | lcd.printf("Configuração solta"); |
amandarm | 22:dd336b95db5d | 176 | lcd.locate(0,1); |
amandarm | 22:dd336b95db5d | 177 | lcd.printf("3-Posição solta"); |
amandarm | 22:dd336b95db5d | 178 | lcd.locate(0,2); |
amandarm | 22:dd336b95db5d | 179 | lcd.printf(""); |
amandarm | 22:dd336b95db5d | 180 | lcd.locate(0,3); |
amandarm | 22:dd336b95db5d | 181 | lcd.printf(" B-Voltar"); |
amandarm | 22:dd336b95db5d | 182 | } |
amandarm | 22:dd336b95db5d | 183 | |
amandarm | 22:dd336b95db5d | 184 | void funcao_solta_dimensao(){ |
amandarm | 25:b0db528c1985 | 185 | lcd.cls(); |
amandarm | 22:dd336b95db5d | 186 | lcd.printf("Insira o diametro"); |
amandarm | 22:dd336b95db5d | 187 | lcd.locate(0,1); |
amandarm | 22:dd336b95db5d | 188 | lcd.printf("de solta, em mm:"); |
amandarm | 22:dd336b95db5d | 189 | lcd.locate(0,2); |
amandarm | 22:dd336b95db5d | 190 | lcd.printf(""); |
amandarm | 22:dd336b95db5d | 191 | lcd.printf(0,3); |
amandarm | 22:dd336b95db5d | 192 | lcd.printf("A-Próximo B-Voltar"); |
amandarm | 22:dd336b95db5d | 193 | } |
amandarm | 22:dd336b95db5d | 194 | |
amandarm | 22:dd336b95db5d | 195 | void funcao_solta_vol(){ |
amandarm | 25:b0db528c1985 | 196 | lcd.cls(); |
amandarm | 22:dd336b95db5d | 197 | lcd.printf("Determinar volume"); |
amandarm | 22:dd336b95db5d | 198 | lcd.locate(0,1); |
amandarm | 22:dd336b95db5d | 199 | lcd.printf("1-Todos mesmo volume"); |
amandarm | 22:dd336b95db5d | 200 | lcd.locate(0,2); |
amandarm | 22:dd336b95db5d | 201 | lcd.printf("2-Pino a pino"); |
amandarm | 22:dd336b95db5d | 202 | lcd.locate(0,3); |
amandarm | 22:dd336b95db5d | 203 | lcd.printf("A-Próximo B-Voltar"); |
amandarm | 22:dd336b95db5d | 204 | } |
amandarm | 22:dd336b95db5d | 205 | |
amandarm | 22:dd336b95db5d | 206 | void funcao_solta_vol_igual(){ |
amandarm | 25:b0db528c1985 | 207 | lcd.cls(); |
amandarm | 22:dd336b95db5d | 208 | lcd.printf("Insira o volume"); |
amandarm | 22:dd336b95db5d | 209 | lcd.locate(0,1); |
amandarm | 22:dd336b95db5d | 210 | lcd.printf("em ml:"); |
amandarm | 22:dd336b95db5d | 211 | lcd.locate(0,2); |
amandarm | 22:dd336b95db5d | 212 | lcd.printf(""); |
amandarm | 22:dd336b95db5d | 213 | lcd.locate(0,3); |
amandarm | 22:dd336b95db5d | 214 | lcd.printf("A-Próximo B-Voltar"); |
amandarm | 22:dd336b95db5d | 215 | } |
amandarm | 22:dd336b95db5d | 216 | |
amandarm | 22:dd336b95db5d | 217 | void funcao_solta_vol_cada(){ |
amandarm | 25:b0db528c1985 | 218 | lcd.cls(); |
amandarm | 22:dd336b95db5d | 219 | lcd.printf("Seleção: * * * "); |
amandarm | 22:dd336b95db5d | 220 | lcd.locate(0,1); |
amandarm | 22:dd336b95db5d | 221 | lcd.printf("Volume: * * * "); |
amandarm | 22:dd336b95db5d | 222 | lcd.locate(0,2); |
amandarm | 22:dd336b95db5d | 223 | lcd.printf("A-Confirma * * * "); |
amandarm | 22:dd336b95db5d | 224 | lcd.locate(0,3); |
amandarm | 22:dd336b95db5d | 225 | lcd.printf("B-Corrigir C-Próximo"); |
amandarm | 22:dd336b95db5d | 226 | } |
amandarm | 22:dd336b95db5d | 227 | |
amandarm | 22:dd336b95db5d | 228 | void funcao_solta_pos_x(){ //desativar os botões de Y |
amandarm | 25:b0db528c1985 | 229 | lcd.cls(); |
amandarm | 22:dd336b95db5d | 230 | lcd.printf("Posicione pega em X"); |
amandarm | 22:dd336b95db5d | 231 | lcd.locate(0,1); |
amandarm | 22:dd336b95db5d | 232 | lcd.printf("Use botões até chegar"); |
amandarm | 22:dd336b95db5d | 233 | lcd.locate(0,2); |
amandarm | 22:dd336b95db5d | 234 | lcd.printf("na posição desejada"); |
amandarm | 22:dd336b95db5d | 235 | lcd.locate(0,3); |
amandarm | 22:dd336b95db5d | 236 | lcd.printf("A-Confirma B-Voltar"); |
amandarm | 22:dd336b95db5d | 237 | } |
amandarm | 22:dd336b95db5d | 238 | |
amandarm | 22:dd336b95db5d | 239 | void funcao_solta_pos_y(){ //desativar os botões de X |
amandarm | 25:b0db528c1985 | 240 | lcd.cls(); |
amandarm | 22:dd336b95db5d | 241 | lcd.printf("Posicione pega em Y"); |
amandarm | 22:dd336b95db5d | 242 | lcd.locate(0,1); |
amandarm | 22:dd336b95db5d | 243 | lcd.printf("Use botões até chegar"); |
amandarm | 22:dd336b95db5d | 244 | lcd.locate(0,2); |
amandarm | 22:dd336b95db5d | 245 | lcd.printf("na posição desejada"); |
amandarm | 22:dd336b95db5d | 246 | lcd.printf(0,3); |
amandarm | 22:dd336b95db5d | 247 | lcd.printf("A-Confirma B-Voltar"); |
amandarm | 22:dd336b95db5d | 248 | } |
amandarm | 22:dd336b95db5d | 249 | |
amandarm | 22:dd336b95db5d | 250 | void funcao_confirma(){ |
amandarm | 25:b0db528c1985 | 251 | lcd.cls(); |
amandarm | 22:dd336b95db5d | 252 | lcd.printf("Revisão Parametros"); |
amandarm | 22:dd336b95db5d | 253 | lcd.locate(0,1); |
amandarm | 22:dd336b95db5d | 254 | lcd.printf("1-Pega:"); |
amandarm | 22:dd336b95db5d | 255 | lcd.locate(0,2); |
amandarm | 22:dd336b95db5d | 256 | lcd.printf("2-Pinos solta:"); |
amandarm | 22:dd336b95db5d | 257 | lcd.locate(0,3); |
amandarm | 22:dd336b95db5d | 258 | lcd.printf("A-Confirma B-Voltar"); |
amandarm | 22:dd336b95db5d | 259 | } |
amandarm | 22:dd336b95db5d | 260 | |
amandarm | 22:dd336b95db5d | 261 | void funcao_nome_prog(){ |
amandarm | 25:b0db528c1985 | 262 | lcd.cls(); |
amandarm | 22:dd336b95db5d | 263 | lcd.printf("Nome do programa"); |
amandarm | 22:dd336b95db5d | 264 | lcd.locate(0,1); |
amandarm | 22:dd336b95db5d | 265 | lcd.printf("Insira um código"); |
amandarm | 22:dd336b95db5d | 266 | lcd.locate(0,2); |
amandarm | 22:dd336b95db5d | 267 | lcd.printf("para seu programa:"); |
amandarm | 22:dd336b95db5d | 268 | lcd.locate(0,3); |
amandarm | 22:dd336b95db5d | 269 | lcd.printf("A-Confirma B-Voltar"); |
amandarm | 22:dd336b95db5d | 270 | } |
amandarm | 22:dd336b95db5d | 271 | |
amandarm | 22:dd336b95db5d | 272 | void funcao_acomp(){ //colocar os valores adequados na tela |
amandarm | 25:b0db528c1985 | 273 | lcd.cls(); |
amandarm | 22:dd336b95db5d | 274 | lcd.printf("Prog em execução"); |
amandarm | 22:dd336b95db5d | 275 | lcd.locate(0,1); |
amandarm | 22:dd336b95db5d | 276 | lcd.printf("Tempo: xx min yy s"); |
amandarm | 22:dd336b95db5d | 277 | lcd.locate(0,2); |
amandarm | 22:dd336b95db5d | 278 | lcd.printf("Progresso: zz%"); |
amandarm | 22:dd336b95db5d | 279 | lcd.locate(0,3); |
amandarm | 22:dd336b95db5d | 280 | lcd.printf("A-Pausar"); |
amandarm | 22:dd336b95db5d | 281 | } |
amandarm | 22:dd336b95db5d | 282 | |
amandarm | 22:dd336b95db5d | 283 | void funcao_pausa(){ |
amandarm | 25:b0db528c1985 | 284 | lcd.cls(); |
amandarm | 22:dd336b95db5d | 285 | lcd.printf("Prog pausado"); |
amandarm | 22:dd336b95db5d | 286 | lcd.locate(0,1); |
amandarm | 22:dd336b95db5d | 287 | lcd.printf("Progresso: zz%"); |
amandarm | 22:dd336b95db5d | 288 | lcd.locate(0,2); |
amandarm | 22:dd336b95db5d | 289 | lcd.printf(""); |
amandarm | 22:dd336b95db5d | 290 | lcd.locate(0,3); |
amandarm | 22:dd336b95db5d | 291 | lcd.printf("A-Continuar B-Parar"); |
amandarm | 22:dd336b95db5d | 292 | } |
amandarm | 22:dd336b95db5d | 293 | |
amandarm | 25:b0db528c1985 | 294 | void funcao_salvo1(){ |
amandarm | 25:b0db528c1985 | 295 | lcd.cls(); |
amandarm | 22:dd336b95db5d | 296 | lcd.printf("1-xx"); |
amandarm | 22:dd336b95db5d | 297 | lcd.locate(0,1); |
amandarm | 22:dd336b95db5d | 298 | lcd.printf("2-yy"); |
amandarm | 22:dd336b95db5d | 299 | lcd.locate(0,2); |
amandarm | 22:dd336b95db5d | 300 | lcd.printf("3-zz"); |
amandarm | 22:dd336b95db5d | 301 | lcd.locate(0,3); |
amandarm | 22:dd336b95db5d | 302 | lcd.printf("A-Próxima B-Anterior"); |
amandarm | 22:dd336b95db5d | 303 | } |
amandarm | 22:dd336b95db5d | 304 | |
amandarm | 25:b0db528c1985 | 305 | void funcao_salvo2(){ |
amandarm | 25:b0db528c1985 | 306 | lcd.cls(); |
amandarm | 22:dd336b95db5d | 307 | lcd.printf("4-xx"); |
amandarm | 22:dd336b95db5d | 308 | lcd.locate(0,1); |
amandarm | 22:dd336b95db5d | 309 | lcd.printf("5-yy"); |
amandarm | 22:dd336b95db5d | 310 | lcd.locate(0,2); |
amandarm | 22:dd336b95db5d | 311 | lcd.printf("6-zz"); |
amandarm | 22:dd336b95db5d | 312 | lcd.locate(0,3); |
amandarm | 22:dd336b95db5d | 313 | lcd.printf("A-Próxima B-Anterior"); |
amandarm | 22:dd336b95db5d | 314 | } |
amandarm | 22:dd336b95db5d | 315 | |
amandarm | 22:dd336b95db5d | 316 | void funcao_salvo_agree1(){ |
amandarm | 25:b0db528c1985 | 317 | lcd.cls(); |
amandarm | 22:dd336b95db5d | 318 | lcd.printf("Confirmar programa"); |
amandarm | 22:dd336b95db5d | 319 | lcd.locate(0,1); |
amandarm | 22:dd336b95db5d | 320 | lcd.printf("1-Posição pega"); |
amandarm | 22:dd336b95db5d | 321 | lcd.locate(0,2); |
amandarm | 22:dd336b95db5d | 322 | lcd.printf("2-Posição solta"); |
amandarm | 22:dd336b95db5d | 323 | lcd.locate(0,3); |
amandarm | 22:dd336b95db5d | 324 | lcd.printf(" B-Voltar"); |
amandarm | 22:dd336b95db5d | 325 | } |
amandarm | 22:dd336b95db5d | 326 | |
amandarm | 22:dd336b95db5d | 327 | void funcao_salvo_agree2(){ |
amandarm | 25:b0db528c1985 | 328 | lcd.cls(); |
amandarm | 22:dd336b95db5d | 329 | lcd.printf("Confirmar programa"); |
amandarm | 22:dd336b95db5d | 330 | lcd.locate(0,1); |
amandarm | 22:dd336b95db5d | 331 | lcd.printf("3-Volume pega"); |
amandarm | 22:dd336b95db5d | 332 | lcd.locate(0,2); |
amandarm | 22:dd336b95db5d | 333 | lcd.printf("4-Volume solta"); |
amandarm | 22:dd336b95db5d | 334 | lcd.locate(0,3); |
amandarm | 22:dd336b95db5d | 335 | lcd.printf(" B-Voltar"); |
amandarm | 22:dd336b95db5d | 336 | } |
amandarm | 22:dd336b95db5d | 337 | |
amandarm | 22:dd336b95db5d | 338 | void funcao_salvo_agree_pos_aviso(){ |
amandarm | 25:b0db528c1985 | 339 | lcd.cls(); |
amandarm | 22:dd336b95db5d | 340 | lcd.printf("A pipeta irá na pega"); |
amandarm | 22:dd336b95db5d | 341 | lcd.locate(0,1); |
amandarm | 22:dd336b95db5d | 342 | lcd.printf("Certifique-se que não"); |
amandarm | 22:dd336b95db5d | 343 | lcd.locate(0,2); |
amandarm | 22:dd336b95db5d | 344 | lcd.printf("há objetos na mesa"); |
amandarm | 22:dd336b95db5d | 345 | lcd.locate(0,3); |
amandarm | 22:dd336b95db5d | 346 | lcd.printf("A-Confirma B-Voltar"); |
amandarm | 22:dd336b95db5d | 347 | } |
amandarm | 22:dd336b95db5d | 348 | |
amandarm | 22:dd336b95db5d | 349 | void funcao_salvo_agree_pos_certo(){ |
amandarm | 25:b0db528c1985 | 350 | lcd.cls(); |
amandarm | 22:dd336b95db5d | 351 | lcd.printf("Posicão correta?"); |
amandarm | 22:dd336b95db5d | 352 | lcd.locate(0,1); |
amandarm | 22:dd336b95db5d | 353 | lcd.printf("1-Sim"); |
amandarm | 22:dd336b95db5d | 354 | lcd.locate(0,2); |
amandarm | 22:dd336b95db5d | 355 | lcd.printf("2-Ajustar"); |
amandarm | 22:dd336b95db5d | 356 | lcd.locate(0,3); |
amandarm | 22:dd336b95db5d | 357 | lcd.printf(" B-Voltar"); |
amandarm | 22:dd336b95db5d | 358 | } |
amandarm | 22:dd336b95db5d | 359 | |
amandarm | 22:dd336b95db5d | 360 | void funcao_salvo_agree_solta_aviso(){ |
amandarm | 25:b0db528c1985 | 361 | lcd.cls(); |
amandarm | 22:dd336b95db5d | 362 | lcd.printf("A pipeta irá na solta"); |
amandarm | 22:dd336b95db5d | 363 | lcd.locate(0,1); |
amandarm | 22:dd336b95db5d | 364 | lcd.printf("Certifique-se que não"); |
amandarm | 22:dd336b95db5d | 365 | lcd.locate(0,2); |
amandarm | 22:dd336b95db5d | 366 | lcd.printf("há objetos na mesa"); |
amandarm | 22:dd336b95db5d | 367 | lcd.locate(0,3); |
amandarm | 22:dd336b95db5d | 368 | lcd.printf("A-Confirma B-Voltar"); |
amandarm | 22:dd336b95db5d | 369 | } |
amandarm | 22:dd336b95db5d | 370 | |
amandarm | 22:dd336b95db5d | 371 | void funcao_salvo_agree_pega_vol(){ |
amandarm | 25:b0db528c1985 | 372 | lcd.cls(); |
amandarm | 22:dd336b95db5d | 373 | lcd.printf("Insira o volume pega"); |
amandarm | 22:dd336b95db5d | 374 | lcd.locate(0,1); |
amandarm | 22:dd336b95db5d | 375 | lcd.printf("Em ml:"); |
amandarm | 22:dd336b95db5d | 376 | lcd.locate(0,2); |
amandarm | 22:dd336b95db5d | 377 | lcd.printf(""); |
amandarm | 22:dd336b95db5d | 378 | lcd.locate(0,3); |
amandarm | 22:dd336b95db5d | 379 | lcd.printf("A-Confirma B-Voltar"); |
amandarm | 22:dd336b95db5d | 380 | } |
amandarm | 22:dd336b95db5d | 381 | |
amandarm | 22:dd336b95db5d | 382 | void funcao_salvo_agree_solta_vol(){ |
amandarm | 25:b0db528c1985 | 383 | lcd.cls(); |
amandarm | 22:dd336b95db5d | 384 | lcd.printf("1-x 2-y 3-z"); |
amandarm | 22:dd336b95db5d | 385 | lcd.locate(0,1); |
amandarm | 22:dd336b95db5d | 386 | lcd.printf("4-x 5-y 6-z"); |
amandarm | 22:dd336b95db5d | 387 | lcd.locate(0,2); |
amandarm | 22:dd336b95db5d | 388 | lcd.printf("7-x 8-y 9-z"); |
amandarm | 22:dd336b95db5d | 389 | lcd.locate(0,3); |
amandarm | 22:dd336b95db5d | 390 | lcd.printf("A-Confirma B-Voltar"); |
amandarm | 22:dd336b95db5d | 391 | } |
amandarm | 22:dd336b95db5d | 392 | |
amandarm | 25:b0db528c1985 | 393 | //Função de iterrupção |
amandarm | 25:b0db528c1985 | 394 | void emergencia() |
amandarm | 25:b0db528c1985 | 395 | { |
amandarm | 25:b0db528c1985 | 396 | while(emergencia_botao == 0){ |
enricoan | 28:c4733814201a | 397 | //rele1 = 0; |
amandarm | 25:b0db528c1985 | 398 | eixox = 0b0000; |
amandarm | 25:b0db528c1985 | 399 | eixoy = 0b0000; |
amandarm | 25:b0db528c1985 | 400 | eixoz = 0b0000; |
amandarm | 25:b0db528c1985 | 401 | lcd.cls(); |
amandarm | 25:b0db528c1985 | 402 | lcd.printf("Botão Emergência"); |
amandarm | 25:b0db528c1985 | 403 | lcd.locate(0,1); |
amandarm | 25:b0db528c1985 | 404 | lcd.printf(" acionado "); |
amandarm | 25:b0db528c1985 | 405 | lcd.locate(0,2); |
amandarm | 25:b0db528c1985 | 406 | lcd.printf("Operação pausada"); |
enricoan | 28:c4733814201a | 407 | //lcd.locate(0,3); |
enricoan | 28:c4733814201a | 408 | //lcd.printf("); |
amandarm | 25:b0db528c1985 | 409 | } |
amandarm | 25:b0db528c1985 | 410 | } |
amandarm | 25:b0db528c1985 | 411 | |
amandarm | 27:45f8125a0c0b | 412 | //Função de zeramento |
amandarm | 27:45f8125a0c0b | 413 | |
amandarm | 27:45f8125a0c0b | 414 | void zeramento(){ |
amandarm | 27:45f8125a0c0b | 415 | while (fdc_x != 0){for(int i = 0; i < 4; i++){eixox = hor[i];wait(t_motor);est_x = 1;}} |
amandarm | 27:45f8125a0c0b | 416 | while (fdc_y != 0){for(int i = 0; i < 4; i++){eixoy = hor[i];wait(t_motor);est_y = 1;}} |
amandarm | 27:45f8125a0c0b | 417 | while (fdc_z != 0){for(int i = 0; i < 4; i++){eixoz = hor[i];wait(t_motor);est_z = 1;}} |
amandarm | 27:45f8125a0c0b | 418 | printf("\n%i",est_x); |
amandarm | 27:45f8125a0c0b | 419 | printf("\n%i",est_y); |
amandarm | 27:45f8125a0c0b | 420 | printf("\n%i",est_z); |
amandarm | 27:45f8125a0c0b | 421 | } |
amandarm | 27:45f8125a0c0b | 422 | |
amandarm | 26:4123b9462158 | 423 | //Variáveis para operação IHM |
amandarm | 26:4123b9462158 | 424 | |
enricoan | 28:c4733814201a | 425 | const char *status_tela = "inicio"; |
amandarm | 25:b0db528c1985 | 426 | |
enricoan | 10:4f49e9859535 | 427 | int main() { |
enricoan | 20:81a44a25b21d | 428 | printf("\n%i",est_x); |
enricoan | 20:81a44a25b21d | 429 | printf("\n%i",est_y); |
enricoan | 20:81a44a25b21d | 430 | printf("\n%i",est_z); |
enricoan | 16:70baa0057a76 | 431 | lcd.printf("Bem-vindo ao Pipemax"); |
Hiroball | 11:dc557e461dfd | 432 | lcd.locate(0,1); |
enricoan | 16:70baa0057a76 | 433 | lcd.printf("o seu sistema"); |
Hiroball | 11:dc557e461dfd | 434 | lcd.locate(0,2); |
enricoan | 16:70baa0057a76 | 435 | lcd.printf("automatizado"); |
Hiroball | 11:dc557e461dfd | 436 | lcd.locate(0,3); |
enricoan | 16:70baa0057a76 | 437 | lcd.printf("de pipetagem"); |
enricoan | 28:c4733814201a | 438 | wait(1); |
enricoan | 28:c4733814201a | 439 | lcd.cls(); |
amandarm | 27:45f8125a0c0b | 440 | lcd.printf("Por favor, aceite"); |
amandarm | 27:45f8125a0c0b | 441 | lcd.locate(0,1); |
amandarm | 27:45f8125a0c0b | 442 | lcd.printf("o zeramento do seu"); |
amandarm | 27:45f8125a0c0b | 443 | lcd.locate(0,2); |
amandarm | 27:45f8125a0c0b | 444 | lcd.printf("sistema"); |
amandarm | 27:45f8125a0c0b | 445 | lcd.locate(0,3); |
amandarm | 27:45f8125a0c0b | 446 | lcd.printf("A - próximo"); |
amandarm | 27:45f8125a0c0b | 447 | tecla = teclado.ReadKey(); |
enricoan | 28:c4733814201a | 448 | if(tecla == 'A'){ |
amandarm | 27:45f8125a0c0b | 449 | zeramento(); |
amandarm | 27:45f8125a0c0b | 450 | } |
amandarm | 27:45f8125a0c0b | 451 | else{ |
enricoan | 28:c4733814201a | 452 | lcd.cls(); |
amandarm | 27:45f8125a0c0b | 453 | lcd.printf("Enquanto não for"); |
amandarm | 27:45f8125a0c0b | 454 | lcd.locate(0,1); |
amandarm | 27:45f8125a0c0b | 455 | lcd.printf("feito o zeramente o "); |
amandarm | 27:45f8125a0c0b | 456 | lcd.locate(0,2); |
amandarm | 27:45f8125a0c0b | 457 | lcd.printf("sistema não pode operar"); |
amandarm | 27:45f8125a0c0b | 458 | lcd.locate(0,3); |
amandarm | 27:45f8125a0c0b | 459 | lcd.printf("A - próximo"); |
enricoan | 28:c4733814201a | 460 | if (tecla == 'A'){ |
amandarm | 27:45f8125a0c0b | 461 | zeramento(); |
amandarm | 27:45f8125a0c0b | 462 | } |
amandarm | 27:45f8125a0c0b | 463 | } |
amandarm | 27:45f8125a0c0b | 464 | |
Hiroball | 11:dc557e461dfd | 465 | while(1) { |
enricoan | 16:70baa0057a76 | 466 | int solta = 1; |
enricoan | 16:70baa0057a76 | 467 | tecla = teclado.ReadKey(); //read the current key pressed |
enricoan | 16:70baa0057a76 | 468 | if(tecla == '\0') solta = 1; //set the flag when all keys are released |
enricoan | 16:70baa0057a76 | 469 | if((tecla != '\0') && (solta == 1)) { //if a key is pressed AND previous key was released |
enricoan | 16:70baa0057a76 | 470 | printf("%c\n", tecla); |
enricoan | 16:70baa0057a76 | 471 | solta = 0; //clear the flag to indicate that key is still pressed |
enricoan | 16:70baa0057a76 | 472 | wait(0.1);} |
enricoan | 19:ebe198368444 | 473 | /* tentativa de fazer o motor parar ao apertar algum dos fins de curso |
enricoan | 18:3c40a8a17963 | 474 | if(fdc_x == 0 || fdc_y == 0 || fdc_z == 0){ |
enricoan | 18:3c40a8a17963 | 475 | for(int i = 0; i < 4; i++){eixox = parado[i];wait(t_motor);est_x = 1;} |
enricoan | 18:3c40a8a17963 | 476 | for(int i = 0; i < 4; i++){eixoy = parado[i];wait(t_motor);est_y = 1;} |
enricoan | 18:3c40a8a17963 | 477 | for(int i = 0; i < 4; i++){eixoz = parado[i];wait(t_motor);est_z = 1;} |
enricoan | 19:ebe198368444 | 478 | */ |
amandarm | 27:45f8125a0c0b | 479 | |
enricoan | 19:ebe198368444 | 480 | if (x_mais == 0 && est_x == 1){for(int i = 0; i < 4; i++){eixox = parado[i];wait(t_motor);coord_x += 0;lcd.cls();lcd.printf("Limite de x atingido");}} |
enricoan | 19:ebe198368444 | 481 | if (y_mais == 0 && est_y == 1){for(int i = 0; i < 4; i++){eixoy = parado[i];wait(t_motor);coord_y += 0;lcd.cls();lcd.printf("Limite de y atingido");}} |
amandarm | 27:45f8125a0c0b | 482 | if (z_mais == 0 && est_z == 1){for(int i = 0; i < 4; i++){eixoz = parado[i];wait(t_motor);coord_z += 0;lcd.cls();lcd.printf("Limite de z atingido");}} |
amandarm | 27:45f8125a0c0b | 483 | |
enricoan | 19:ebe198368444 | 484 | if (x_menos == 0){for(int i = 0; i < 4; i++){eixox = antihor[i];wait(t_motor);coord_x -= (5.625*5/32)/360;est_x = 0; |
enricoan | 16:70baa0057a76 | 485 | lcd.cls(); |
enricoan | 18:3c40a8a17963 | 486 | lcd.printf("X: %4.1f", coord_x); |
enricoan | 18:3c40a8a17963 | 487 | lcd.locate(0,1); |
enricoan | 18:3c40a8a17963 | 488 | lcd.printf("Y: %4.1f", coord_y); |
enricoan | 18:3c40a8a17963 | 489 | lcd.locate(0,2); |
enricoan | 18:3c40a8a17963 | 490 | lcd.printf("Z: %4.1f", coord_z);}} |
enricoan | 19:ebe198368444 | 491 | if (y_menos == 0){for(int i = 0; i < 4; i++){eixoy = antihor[i];wait(t_motor);coord_y -= (5.625*5/32)/360;est_y = 0; |
enricoan | 19:ebe198368444 | 492 | lcd.cls(); |
enricoan | 19:ebe198368444 | 493 | lcd.printf("X: %4.1f", coord_x); |
enricoan | 19:ebe198368444 | 494 | lcd.locate(0,1); |
enricoan | 19:ebe198368444 | 495 | lcd.printf("Y: %4.1f", coord_y); |
enricoan | 19:ebe198368444 | 496 | lcd.locate(0,2); |
enricoan | 19:ebe198368444 | 497 | lcd.printf("Z: %4.1f", coord_z);}} |
enricoan | 19:ebe198368444 | 498 | if (z_menos == 0){for(int i = 0; i < 4; i++){eixoz = antihor[i];wait(t_motor);coord_z -= (5.625*5/32)/360;est_z = 0; |
enricoan | 18:3c40a8a17963 | 499 | lcd.cls(); |
enricoan | 18:3c40a8a17963 | 500 | lcd.printf("X: %4.1f", coord_x); |
enricoan | 16:70baa0057a76 | 501 | lcd.locate(0,1); |
enricoan | 18:3c40a8a17963 | 502 | lcd.printf("Y: %4.1f", coord_y); |
enricoan | 18:3c40a8a17963 | 503 | lcd.locate(0,2); |
enricoan | 18:3c40a8a17963 | 504 | lcd.printf("Z: %4.1f", coord_z);}} |
enricoan | 19:ebe198368444 | 505 | |
enricoan | 19:ebe198368444 | 506 | if (x_mais == 0){for(int i = 0; i < 4; i++){eixox = hor[i];wait(t_motor);coord_x += (5.625*5/32)/360;est_x = 0; |
enricoan | 19:ebe198368444 | 507 | lcd.cls(); |
enricoan | 19:ebe198368444 | 508 | lcd.printf("X: %4.1f", coord_x); |
enricoan | 19:ebe198368444 | 509 | lcd.locate(0,1); |
enricoan | 19:ebe198368444 | 510 | lcd.printf("Y: %4.1f", coord_y); |
enricoan | 19:ebe198368444 | 511 | lcd.locate(0,2); |
enricoan | 19:ebe198368444 | 512 | lcd.printf("Z: %4.1f", coord_z);}} |
enricoan | 19:ebe198368444 | 513 | if (y_mais == 0){for(int i = 0; i < 4; i++){eixoy = hor[i];wait(t_motor);coord_y += (5.625*5/32)/360;est_y = 0; |
enricoan | 18:3c40a8a17963 | 514 | lcd.cls(); |
enricoan | 18:3c40a8a17963 | 515 | lcd.printf("X: %4.1f", coord_x); |
enricoan | 18:3c40a8a17963 | 516 | lcd.locate(0,1); |
enricoan | 18:3c40a8a17963 | 517 | lcd.printf("Y: %4.1f", coord_y); |
enricoan | 18:3c40a8a17963 | 518 | lcd.locate(0,2); |
enricoan | 18:3c40a8a17963 | 519 | lcd.printf("Z: %4.1f", coord_z);}} |
enricoan | 19:ebe198368444 | 520 | if (z_mais == 0){for(int i = 0; i < 4; i++){eixoz = hor[i];wait(t_motor);coord_z += (5.625*5/32)/360;est_z = 0; |
enricoan | 19:ebe198368444 | 521 | lcd.cls(); |
enricoan | 19:ebe198368444 | 522 | lcd.printf("X: %4.1f", coord_x); |
enricoan | 19:ebe198368444 | 523 | lcd.locate(0,1); |
enricoan | 19:ebe198368444 | 524 | lcd.printf("Y: %4.1f", coord_y); |
enricoan | 19:ebe198368444 | 525 | lcd.locate(0,2); |
enricoan | 19:ebe198368444 | 526 | lcd.printf("Z: %4.1f", coord_z);}} |
enricoan | 18:3c40a8a17963 | 527 | |
enricoan | 16:70baa0057a76 | 528 | if (x_mais || x_menos || y_mais || y_menos || z_mais || z_menos != 0){ |
enricoan | 16:70baa0057a76 | 529 | for(int i = 0; i < 4; i++){eixox = parado[i];} |
enricoan | 16:70baa0057a76 | 530 | for(int i = 0; i < 4; i++){eixoy = parado[i];} |
enricoan | 16:70baa0057a76 | 531 | for(int i = 0; i < 4; i++){eixoz = parado[i];} |
enricoan | 16:70baa0057a76 | 532 | } |
enricoan | 19:ebe198368444 | 533 | |
enricoan | 18:3c40a8a17963 | 534 | /* |
enricoan | 18:3c40a8a17963 | 535 | lcd.cls(); |
enricoan | 18:3c40a8a17963 | 536 | lcd.printf("X: %4.1f", coord_x); |
enricoan | 18:3c40a8a17963 | 537 | lcd.locate(0,1); |
enricoan | 18:3c40a8a17963 | 538 | lcd.printf("Y: %4.1f", coord_y); |
enricoan | 18:3c40a8a17963 | 539 | lcd.locate(0,2); |
enricoan | 18:3c40a8a17963 | 540 | lcd.printf("Z: %4.1f", coord_z); |
enricoan | 18:3c40a8a17963 | 541 | */ |
enricoan | 18:3c40a8a17963 | 542 | |
amandarm | 26:4123b9462158 | 543 | tecla = teclado.ReadKey(); |
enricoan | 28:c4733814201a | 544 | if(tecla =='1' && status_tela == "inicio"){ |
amandarm | 26:4123b9462158 | 545 | funcao_pega1(); |
amandarm | 26:4123b9462158 | 546 | wait(50); |
amandarm | 26:4123b9462158 | 547 | funcao_pega2(); |
amandarm | 26:4123b9462158 | 548 | status_tela = "novo"; |
amandarm | 26:4123b9462158 | 549 | } |
enricoan | 28:c4733814201a | 550 | else if(tecla == '2' && status_tela == "inicio"){ |
amandarm | 26:4123b9462158 | 551 | funcao_salvo1(); |
amandarm | 26:4123b9462158 | 552 | wait(50); |
amandarm | 26:4123b9462158 | 553 | funcao_salvo2(); |
amandarm | 26:4123b9462158 | 554 | status_tela = "salvo"; |
amandarm | 26:4123b9462158 | 555 | } |
amandarm | 26:4123b9462158 | 556 | tecla = teclado.ReadKey(); |
enricoan | 28:c4733814201a | 557 | if(tecla =='1' && status_tela =="novo"){ |
amandarm | 26:4123b9462158 | 558 | funcao_pega_forma(); |
amandarm | 26:4123b9462158 | 559 | status_tela ="forma"; |
amandarm | 26:4123b9462158 | 560 | } |
enricoan | 28:c4733814201a | 561 | else if(tecla =='2' && status_tela == "novo"){ |
amandarm | 26:4123b9462158 | 562 | funcao_pega_volume(); |
amandarm | 26:4123b9462158 | 563 | status_tela = "volume"; |
amandarm | 26:4123b9462158 | 564 | } |
enricoan | 28:c4733814201a | 565 | else if(tecla == '3' && status_tela == "novo"){ |
amandarm | 26:4123b9462158 | 566 | funcao_pega_pos_x(); |
amandarm | 26:4123b9462158 | 567 | status_tela = "pos_x"; |
amandarm | 26:4123b9462158 | 568 | } |
enricoan | 28:c4733814201a | 569 | else if(tecla == 'B' && status_tela == "novo"){ |
amandarm | 26:4123b9462158 | 570 | funcao_inicio(); |
amandarm | 26:4123b9462158 | 571 | status_tela = "inicio"; |
amandarm | 26:4123b9462158 | 572 | } |
enricoan | 28:c4733814201a | 573 | else if(tecla == '1' && status_tela == "salvo"){ |
amandarm | 26:4123b9462158 | 574 | funcao_salvo_agree1(); |
amandarm | 26:4123b9462158 | 575 | status_tela = "confirmacao"; |
amandarm | 26:4123b9462158 | 576 | } |
enricoan | 28:c4733814201a | 577 | else if(tecla =='2' && status_tela == "salvo"){ |
amandarm | 26:4123b9462158 | 578 | funcao_salvo_agree1(); |
amandarm | 26:4123b9462158 | 579 | status_tela = "confirmacao"; |
amandarm | 26:4123b9462158 | 580 | } |
enricoan | 28:c4733814201a | 581 | else if(tecla =='B' && status_tela == "salvo"){ |
amandarm | 26:4123b9462158 | 582 | funcao_inicio(); |
amandarm | 26:4123b9462158 | 583 | status_tela = "inicio"; |
amandarm | 26:4123b9462158 | 584 | } |
amandarm | 26:4123b9462158 | 585 | tecla = teclado.ReadKey(); |
enricoan | 28:c4733814201a | 586 | if(tecla == '1' && status_tela == "forma"){ |
amandarm | 26:4123b9462158 | 587 | funcao_pega_forma_quad(); |
amandarm | 26:4123b9462158 | 588 | status_tela ="forma_quad"; |
amandarm | 26:4123b9462158 | 589 | } |
enricoan | 28:c4733814201a | 590 | else if(tecla == '2' && status_tela == "forma"){ |
amandarm | 26:4123b9462158 | 591 | funcao_pega_forma_red(); |
amandarm | 26:4123b9462158 | 592 | status_tela = "forma_quad"; |
amandarm | 26:4123b9462158 | 593 | } |
enricoan | 28:c4733814201a | 594 | else if(tecla == 'B' && status_tela == "forma"){ |
amandarm | 26:4123b9462158 | 595 | funcao_pega_forma(); |
amandarm | 26:4123b9462158 | 596 | status_tela = "novo"; |
amandarm | 26:4123b9462158 | 597 | } |
amandarm | 26:4123b9462158 | 598 | |
amandarm | 26:4123b9462158 | 599 | tecla = teclado.ReadKey(); |
enricoan | 28:c4733814201a | 600 | if(tecla == 'A' && status_tela == "forma_quad"){ |
amandarm | 26:4123b9462158 | 601 | funcao_pega1(); |
amandarm | 26:4123b9462158 | 602 | wait(50); |
amandarm | 26:4123b9462158 | 603 | funcao_pega2(); |
amandarm | 26:4123b9462158 | 604 | status_tela ="inicio"; |
amandarm | 26:4123b9462158 | 605 | } |
enricoan | 28:c4733814201a | 606 | else if(tecla == 'B' && status_tela == "forma_quad"){ |
amandarm | 26:4123b9462158 | 607 | funcao_pega_forma(); |
amandarm | 26:4123b9462158 | 608 | status_tela = "forma"; |
amandarm | 26:4123b9462158 | 609 | } |
enricoan | 28:c4733814201a | 610 | else if(tecla == 'A' && status_tela == "forma_red"){ |
amandarm | 26:4123b9462158 | 611 | funcao_pega1(); |
amandarm | 26:4123b9462158 | 612 | wait(50); |
amandarm | 26:4123b9462158 | 613 | funcao_pega2(); |
amandarm | 26:4123b9462158 | 614 | status_tela ="inicio"; |
amandarm | 26:4123b9462158 | 615 | } |
enricoan | 28:c4733814201a | 616 | else if(tecla == 'B' && status_tela == "forma_red"){ |
amandarm | 26:4123b9462158 | 617 | funcao_pega_forma(); |
amandarm | 26:4123b9462158 | 618 | status_tela = "forma"; |
amandarm | 26:4123b9462158 | 619 | } |
enricoan | 28:c4733814201a | 620 | else if(tecla == 'A' && status_tela == "volume"){ |
amandarm | 26:4123b9462158 | 621 | funcao_pega1(); |
amandarm | 26:4123b9462158 | 622 | wait(50); |
amandarm | 26:4123b9462158 | 623 | funcao_pega2(); |
amandarm | 26:4123b9462158 | 624 | status_tela ="inicio"; |
amandarm | 26:4123b9462158 | 625 | } |
enricoan | 28:c4733814201a | 626 | else if( tecla == 'B' && status_tela == "volume"){ |
amandarm | 26:4123b9462158 | 627 | funcao_pega_forma(); |
amandarm | 26:4123b9462158 | 628 | status_tela = "forma"; |
amandarm | 26:4123b9462158 | 629 | } |
enricoan | 28:c4733814201a | 630 | else if(tecla == 'A' && status_tela == "pos_x"){ |
amandarm | 26:4123b9462158 | 631 | funcao_pega_pos_y(); //colocar programação que contém o posicionamento do eixo y |
amandarm | 26:4123b9462158 | 632 | status_tela = "pos_y"; |
amandarm | 26:4123b9462158 | 633 | } |
enricoan | 28:c4733814201a | 634 | else if(tecla == 'B' && status_tela == "pos_x"){ |
amandarm | 26:4123b9462158 | 635 | funcao_pega_forma(); |
amandarm | 26:4123b9462158 | 636 | status_tela = "forma"; |
amandarm | 26:4123b9462158 | 637 | } |
amandarm | 26:4123b9462158 | 638 | |
amandarm | 26:4123b9462158 | 639 | tecla = teclado.ReadKey(); |
enricoan | 28:c4733814201a | 640 | if(tecla == 'A' && status_tela == "pos_y"){ |
amandarm | 26:4123b9462158 | 641 | funcao_pega1(); |
amandarm | 26:4123b9462158 | 642 | wait(50); |
amandarm | 26:4123b9462158 | 643 | funcao_pega2(); |
amandarm | 26:4123b9462158 | 644 | status_tela ="inicio"; |
amandarm | 26:4123b9462158 | 645 | } |
enricoan | 28:c4733814201a | 646 | else if(tecla == 'B' && status_tela == "pos_y"){ |
amandarm | 26:4123b9462158 | 647 | funcao_pega_forma(); |
amandarm | 26:4123b9462158 | 648 | status_tela = "forma"; |
amandarm | 26:4123b9462158 | 649 | } |
Hiroball | 11:dc557e461dfd | 650 | } |
enricoan | 10:4f49e9859535 | 651 | } |