![](/media/cache/group/default_image.jpg.50x50_q85.jpg)
tarea#3
Dependencies: FPointer TextLCD keypad mbed
Fork of Tarea2_Teclado by
main.cpp@1:c1571c87c8ee, 2014-03-28 (annotated)
- Committer:
- jaruiz
- Date:
- Fri Mar 28 22:33:04 2014 +0000
- Revision:
- 1:c1571c87c8ee
- Parent:
- 0:54e8dab91b77
- Child:
- 2:4c3de5a37f24
jj
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
lcorralesc1 | 0:54e8dab91b77 | 1 | //Programa para hacer control PID simple, ingresa parámetros con teclado 4x4. Imprime resultados en LCD 16x2 |
lcorralesc1 | 0:54e8dab91b77 | 2 | |
lcorralesc1 | 0:54e8dab91b77 | 3 | #include "mbed.h" |
lcorralesc1 | 0:54e8dab91b77 | 4 | #include "TextLCD.h" |
lcorralesc1 | 0:54e8dab91b77 | 5 | #include"keypad.h" //Librería del teclado 4x4 |
lcorralesc1 | 0:54e8dab91b77 | 6 | #include"FPointer.h" //Librería complementaria para libreria keypad |
lcorralesc1 | 0:54e8dab91b77 | 7 | |
lcorralesc1 | 0:54e8dab91b77 | 8 | TextLCD lcd(PTB10, PTB11, PTE2, PTE3, PTE4, PTE5); // rs, e, d4-d7 |
lcorralesc1 | 0:54e8dab91b77 | 9 | Keypad keypad(PTA2,PTD4,PTD3,PTD7,PTA13,PTD5,PTD0,PTD2); //Entradas del teclado |
lcorralesc1 | 0:54e8dab91b77 | 10 | |
lcorralesc1 | 0:54e8dab91b77 | 11 | AnalogIn Vin(PTB0); //Voltaje de alimentación |
lcorralesc1 | 0:54e8dab91b77 | 12 | AnalogOut Vout(PTE30); //Marcar la salida analógica |
lcorralesc1 | 0:54e8dab91b77 | 13 | |
lcorralesc1 | 0:54e8dab91b77 | 14 | //ASIGNACION DE VARIABLES |
lcorralesc1 | 0:54e8dab91b77 | 15 | Timer t; |
lcorralesc1 | 0:54e8dab91b77 | 16 | int cero; |
lcorralesc1 | 0:54e8dab91b77 | 17 | int flag; |
lcorralesc1 | 0:54e8dab91b77 | 18 | int q; |
lcorralesc1 | 0:54e8dab91b77 | 19 | int k; |
lcorralesc1 | 0:54e8dab91b77 | 20 | int C1=0x0E; //configurar el lcd para mostrar el guin bajo |
lcorralesc1 | 0:54e8dab91b77 | 21 | int C2=0x0C; //configurar el lcd para QUITAR el guion bajo |
lcorralesc1 | 0:54e8dab91b77 | 22 | float sp=0; //set point |
lcorralesc1 | 0:54e8dab91b77 | 23 | float kp=0; //ganancia proporcional |
lcorralesc1 | 0:54e8dab91b77 | 24 | float ki=0; //ganancia integral |
lcorralesc1 | 0:54e8dab91b77 | 25 | float kd=0; //ganancia derivativa |
lcorralesc1 | 0:54e8dab91b77 | 26 | int ind=0; //vector de caracteres. |
lcorralesc1 | 0:54e8dab91b77 | 27 | float err, med, yr, ap, ai, ad, err_v, cycle; //Variable de control PID |
lcorralesc1 | 0:54e8dab91b77 | 28 | float pid; |
lcorralesc1 | 0:54e8dab91b77 | 29 | |
lcorralesc1 | 0:54e8dab91b77 | 30 | //MATRIZ DEL TECLADO |
lcorralesc1 | 0:54e8dab91b77 | 31 | float Keytable[] = {1,2,3,11, |
lcorralesc1 | 0:54e8dab91b77 | 32 | 4,5,6,12, |
lcorralesc1 | 0:54e8dab91b77 | 33 | 7,8,9,13, |
lcorralesc1 | 0:54e8dab91b77 | 34 | 0,0,0,0}; |
lcorralesc1 | 0:54e8dab91b77 | 35 | |
lcorralesc1 | 0:54e8dab91b77 | 36 | //Se crea una función que incremente los valores |
lcorralesc1 | 0:54e8dab91b77 | 37 | void increment(int j){ |
lcorralesc1 | 0:54e8dab91b77 | 38 | if(j==0){ |
lcorralesc1 | 0:54e8dab91b77 | 39 | if (q!=1 && sp<10){ |
lcorralesc1 | 0:54e8dab91b77 | 40 | sp=ind; |
lcorralesc1 | 0:54e8dab91b77 | 41 | q=1; |
lcorralesc1 | 0:54e8dab91b77 | 42 | } |
jaruiz | 1:c1571c87c8ee | 43 | else { |
jaruiz | 1:c1571c87c8ee | 44 | sp=10*sp+ind; |
jaruiz | 1:c1571c87c8ee | 45 | } |
lcorralesc1 | 0:54e8dab91b77 | 46 | if(sp>999)sp=999; |
jaruiz | 1:c1571c87c8ee | 47 | |
jaruiz | 1:c1571c87c8ee | 48 | |
lcorralesc1 | 0:54e8dab91b77 | 49 | lcd.locate(3,0); lcd.printf(" "); |
lcorralesc1 | 0:54e8dab91b77 | 50 | lcd.locate(3,0); lcd.printf("%.0f",sp); |
lcorralesc1 | 0:54e8dab91b77 | 51 | |
jaruiz | 1:c1571c87c8ee | 52 | Vout=2.5; |
jaruiz | 1:c1571c87c8ee | 53 | wait(0.2); |
jaruiz | 1:c1571c87c8ee | 54 | Vout=0; |
jaruiz | 1:c1571c87c8ee | 55 | } |
lcorralesc1 | 0:54e8dab91b77 | 56 | else if(j==1){ |
lcorralesc1 | 0:54e8dab91b77 | 57 | if (q!=1 && kp<10){ |
lcorralesc1 | 0:54e8dab91b77 | 58 | kp=ind; |
lcorralesc1 | 0:54e8dab91b77 | 59 | q=1; |
lcorralesc1 | 0:54e8dab91b77 | 60 | } |
lcorralesc1 | 0:54e8dab91b77 | 61 | else{ |
lcorralesc1 | 0:54e8dab91b77 | 62 | kp=10*kp+ind; |
lcorralesc1 | 0:54e8dab91b77 | 63 | } |
lcorralesc1 | 0:54e8dab91b77 | 64 | if(kp>999)kp=999; |
lcorralesc1 | 0:54e8dab91b77 | 65 | lcd.locate(11,0); lcd.printf(" "); |
lcorralesc1 | 0:54e8dab91b77 | 66 | lcd.locate(11,0); lcd.printf("%.0f",kp); |
lcorralesc1 | 0:54e8dab91b77 | 67 | } |
lcorralesc1 | 0:54e8dab91b77 | 68 | else if(j==2){ |
lcorralesc1 | 0:54e8dab91b77 | 69 | if (q!=1 && ki<10){ |
lcorralesc1 | 0:54e8dab91b77 | 70 | ki=ind; |
lcorralesc1 | 0:54e8dab91b77 | 71 | q=1; |
lcorralesc1 | 0:54e8dab91b77 | 72 | } |
lcorralesc1 | 0:54e8dab91b77 | 73 | else{ |
lcorralesc1 | 0:54e8dab91b77 | 74 | ki=10*ki+ind; |
lcorralesc1 | 0:54e8dab91b77 | 75 | } |
lcorralesc1 | 0:54e8dab91b77 | 76 | if(ki>999)ki=999; |
lcorralesc1 | 0:54e8dab91b77 | 77 | lcd.locate(3,1); lcd.printf(" "); |
lcorralesc1 | 0:54e8dab91b77 | 78 | lcd.locate(3,1); lcd.printf("%.0f",ki); |
lcorralesc1 | 0:54e8dab91b77 | 79 | } |
lcorralesc1 | 0:54e8dab91b77 | 80 | else{ |
lcorralesc1 | 0:54e8dab91b77 | 81 | if (q!=1 && kd<10){ |
lcorralesc1 | 0:54e8dab91b77 | 82 | kd=ind; |
lcorralesc1 | 0:54e8dab91b77 | 83 | q=1; |
lcorralesc1 | 0:54e8dab91b77 | 84 | } |
lcorralesc1 | 0:54e8dab91b77 | 85 | else{ |
lcorralesc1 | 0:54e8dab91b77 | 86 | kd=10*kd+ind; |
lcorralesc1 | 0:54e8dab91b77 | 87 | } |
lcorralesc1 | 0:54e8dab91b77 | 88 | if(kd>999)kd=999; |
lcorralesc1 | 0:54e8dab91b77 | 89 | lcd.locate(11,1); lcd.printf(" "); |
lcorralesc1 | 0:54e8dab91b77 | 90 | lcd.locate(11,1); lcd.printf("%.0f",kd); |
lcorralesc1 | 0:54e8dab91b77 | 91 | } |
lcorralesc1 | 0:54e8dab91b77 | 92 | ind=0; cero=0; |
lcorralesc1 | 0:54e8dab91b77 | 93 | } |
lcorralesc1 | 0:54e8dab91b77 | 94 | |
lcorralesc1 | 0:54e8dab91b77 | 95 | uint32_t cbAfterInput(uint32_t index) { |
lcorralesc1 | 0:54e8dab91b77 | 96 | ind=Keytable[index]; |
lcorralesc1 | 0:54e8dab91b77 | 97 | cero=index; |
lcorralesc1 | 0:54e8dab91b77 | 98 | return 0; |
lcorralesc1 | 0:54e8dab91b77 | 99 | } |
lcorralesc1 | 0:54e8dab91b77 | 100 | |
lcorralesc1 | 0:54e8dab91b77 | 101 | void def_posicion(int j){ |
lcorralesc1 | 0:54e8dab91b77 | 102 | if (j==0){ |
lcorralesc1 | 0:54e8dab91b77 | 103 | lcd.locate(3,0); lcd.printf("%.0f",sp); |
lcorralesc1 | 0:54e8dab91b77 | 104 | lcd.locate(3,0); |
lcorralesc1 | 0:54e8dab91b77 | 105 | } |
lcorralesc1 | 0:54e8dab91b77 | 106 | else if(j==1){ |
lcorralesc1 | 0:54e8dab91b77 | 107 | lcd.locate(11,0); lcd.printf("%.0f",kp); |
lcorralesc1 | 0:54e8dab91b77 | 108 | lcd.locate(11,0); |
lcorralesc1 | 0:54e8dab91b77 | 109 | } |
lcorralesc1 | 0:54e8dab91b77 | 110 | else if (j==2){ |
lcorralesc1 | 0:54e8dab91b77 | 111 | lcd.locate(3,1); lcd.printf("%.0f",ki); |
lcorralesc1 | 0:54e8dab91b77 | 112 | lcd.locate(3,1); |
lcorralesc1 | 0:54e8dab91b77 | 113 | } |
lcorralesc1 | 0:54e8dab91b77 | 114 | else { |
lcorralesc1 | 0:54e8dab91b77 | 115 | lcd.locate(11,1); lcd.printf("%.0f",kd); |
lcorralesc1 | 0:54e8dab91b77 | 116 | lcd.locate(11,1); |
lcorralesc1 | 0:54e8dab91b77 | 117 | } |
lcorralesc1 | 0:54e8dab91b77 | 118 | } |
lcorralesc1 | 0:54e8dab91b77 | 119 | |
lcorralesc1 | 0:54e8dab91b77 | 120 | //Dado que hay parámetros que no varía en el display en esta parte del código, se crea una función que los mantenga. |
lcorralesc1 | 0:54e8dab91b77 | 121 | void star_patch1(void){ |
lcorralesc1 | 0:54e8dab91b77 | 122 | lcd.cls(); |
lcorralesc1 | 0:54e8dab91b77 | 123 | lcd.locate(8,0); |
lcorralesc1 | 0:54e8dab91b77 | 124 | lcd.printf("Kp=%.0f",kp); |
lcorralesc1 | 0:54e8dab91b77 | 125 | lcd.locate(0,1); |
lcorralesc1 | 0:54e8dab91b77 | 126 | lcd.printf("Ki=%.0f",ki); |
lcorralesc1 | 0:54e8dab91b77 | 127 | lcd.locate(8,1); |
lcorralesc1 | 0:54e8dab91b77 | 128 | lcd.printf("Kd=%.0f",kd); |
lcorralesc1 | 0:54e8dab91b77 | 129 | lcd.writeCommand(C1); //cursor se vea y sea intermitente |
lcorralesc1 | 0:54e8dab91b77 | 130 | lcd.locate(0,0); |
lcorralesc1 | 0:54e8dab91b77 | 131 | lcd.printf("Sp=%.0f",sp); |
lcorralesc1 | 0:54e8dab91b77 | 132 | } |
lcorralesc1 | 0:54e8dab91b77 | 133 | |
lcorralesc1 | 0:54e8dab91b77 | 134 | void star_patch2(void){ // uso nuevamente función que imprime los caracteres que no van a variar en el display |
lcorralesc1 | 0:54e8dab91b77 | 135 | lcd.writeCommand(C2); |
lcorralesc1 | 0:54e8dab91b77 | 136 | lcd.cls(); |
lcorralesc1 | 0:54e8dab91b77 | 137 | lcd.printf("Iniciamos el PID |m|"); |
lcorralesc1 | 0:54e8dab91b77 | 138 | wait(2); |
lcorralesc1 | 0:54e8dab91b77 | 139 | lcd.cls(); |
lcorralesc1 | 0:54e8dab91b77 | 140 | lcd.printf("Er%=f",err); |
lcorralesc1 | 0:54e8dab91b77 | 141 | lcd.locate(8,0); lcd.printf("Me=%.0f",med); |
lcorralesc1 | 0:54e8dab91b77 | 142 | lcd.locate(0,1); lcd.printf("Sp=%.0f",sp); |
lcorralesc1 | 0:54e8dab91b77 | 143 | lcd.locate(8,1); lcd.printf("Co=%.0f",pid); |
lcorralesc1 | 0:54e8dab91b77 | 144 | wait(3); |
lcorralesc1 | 0:54e8dab91b77 | 145 | } |
lcorralesc1 | 0:54e8dab91b77 | 146 | |
lcorralesc1 | 0:54e8dab91b77 | 147 | int main(){ |
lcorralesc1 | 0:54e8dab91b77 | 148 | ini: |
lcorralesc1 | 0:54e8dab91b77 | 149 | ind=0; |
lcorralesc1 | 0:54e8dab91b77 | 150 | star_patch1(); |
lcorralesc1 | 0:54e8dab91b77 | 151 | keypad.CallAfterInput(&cbAfterInput); |
lcorralesc1 | 0:54e8dab91b77 | 152 | keypad.Start(); |
lcorralesc1 | 0:54e8dab91b77 | 153 | ini1: |
lcorralesc1 | 0:54e8dab91b77 | 154 | if(ind==12){ |
lcorralesc1 | 0:54e8dab91b77 | 155 | if (k<3) k++; |
lcorralesc1 | 0:54e8dab91b77 | 156 | else k=0; |
lcorralesc1 | 0:54e8dab91b77 | 157 | def_posicion(k); |
lcorralesc1 | 0:54e8dab91b77 | 158 | ind=0; |
lcorralesc1 | 0:54e8dab91b77 | 159 | q=0; |
jaruiz | 1:c1571c87c8ee | 160 | Vout=2.5; |
jaruiz | 1:c1571c87c8ee | 161 | wait(0.1); |
jaruiz | 1:c1571c87c8ee | 162 | Vout=0; |
jaruiz | 1:c1571c87c8ee | 163 | wait(0.05); |
jaruiz | 1:c1571c87c8ee | 164 | Vout=2.5; |
jaruiz | 1:c1571c87c8ee | 165 | wait(0.1); |
jaruiz | 1:c1571c87c8ee | 166 | Vout=0; |
lcorralesc1 | 0:54e8dab91b77 | 167 | } |
lcorralesc1 | 0:54e8dab91b77 | 168 | if(ind==13){ |
jaruiz | 1:c1571c87c8ee | 169 | Vout=2.5; |
jaruiz | 1:c1571c87c8ee | 170 | wait(0.07); |
jaruiz | 1:c1571c87c8ee | 171 | Vout=0; |
jaruiz | 1:c1571c87c8ee | 172 | wait(0.03); |
jaruiz | 1:c1571c87c8ee | 173 | Vout=2.5; |
jaruiz | 1:c1571c87c8ee | 174 | wait(0.07); |
jaruiz | 1:c1571c87c8ee | 175 | Vout=0; |
jaruiz | 1:c1571c87c8ee | 176 | wait(0.03); |
jaruiz | 1:c1571c87c8ee | 177 | Vout=2.5; |
jaruiz | 1:c1571c87c8ee | 178 | wait(0.07); |
jaruiz | 1:c1571c87c8ee | 179 | Vout=0; |
lcorralesc1 | 0:54e8dab91b77 | 180 | ind=0; |
lcorralesc1 | 0:54e8dab91b77 | 181 | goto PID; |
jaruiz | 1:c1571c87c8ee | 182 | |
lcorralesc1 | 0:54e8dab91b77 | 183 | } |
lcorralesc1 | 0:54e8dab91b77 | 184 | if(ind==11){ |
jaruiz | 1:c1571c87c8ee | 185 | Vout=2.5; |
jaruiz | 1:c1571c87c8ee | 186 | wait(0.1); |
jaruiz | 1:c1571c87c8ee | 187 | Vout=0; |
jaruiz | 1:c1571c87c8ee | 188 | wait(0.05); |
jaruiz | 1:c1571c87c8ee | 189 | Vout=2.5; |
jaruiz | 1:c1571c87c8ee | 190 | wait(0.1); |
jaruiz | 1:c1571c87c8ee | 191 | Vout=0; |
lcorralesc1 | 0:54e8dab91b77 | 192 | if (k==0){ |
lcorralesc1 | 0:54e8dab91b77 | 193 | sp=0; |
lcorralesc1 | 0:54e8dab91b77 | 194 | lcd.locate(3,0); lcd.printf(" "); |
lcorralesc1 | 0:54e8dab91b77 | 195 | lcd.locate(3,0); lcd.printf("%.0f",sp); |
lcorralesc1 | 0:54e8dab91b77 | 196 | } |
lcorralesc1 | 0:54e8dab91b77 | 197 | else if(k==1){ |
lcorralesc1 | 0:54e8dab91b77 | 198 | kp=0; |
lcorralesc1 | 0:54e8dab91b77 | 199 | lcd.locate(11,0); lcd.printf(" "); |
lcorralesc1 | 0:54e8dab91b77 | 200 | lcd.locate(11,0); lcd.printf("%.0f",kp); |
lcorralesc1 | 0:54e8dab91b77 | 201 | } |
lcorralesc1 | 0:54e8dab91b77 | 202 | else if (k==2){ |
lcorralesc1 | 0:54e8dab91b77 | 203 | ki=0; |
lcorralesc1 | 0:54e8dab91b77 | 204 | lcd.locate(3,1); lcd.printf(" "); |
lcorralesc1 | 0:54e8dab91b77 | 205 | lcd.locate(3,1); lcd.printf("%.0f",ki); |
lcorralesc1 | 0:54e8dab91b77 | 206 | } |
lcorralesc1 | 0:54e8dab91b77 | 207 | else { |
lcorralesc1 | 0:54e8dab91b77 | 208 | kd=0; |
lcorralesc1 | 0:54e8dab91b77 | 209 | lcd.locate(11,1); lcd.printf(" "); |
lcorralesc1 | 0:54e8dab91b77 | 210 | lcd.locate(11,1); lcd.printf("%.0f",kd); |
lcorralesc1 | 0:54e8dab91b77 | 211 | } |
lcorralesc1 | 0:54e8dab91b77 | 212 | q=0; ind=0; |
lcorralesc1 | 0:54e8dab91b77 | 213 | } |
lcorralesc1 | 0:54e8dab91b77 | 214 | if (ind!=0 && ind!=12 && ind!=13 && ind!=11 || cero==13 ){ |
lcorralesc1 | 0:54e8dab91b77 | 215 | increment(k); |
lcorralesc1 | 0:54e8dab91b77 | 216 | } |
lcorralesc1 | 0:54e8dab91b77 | 217 | goto ini1; |
lcorralesc1 | 0:54e8dab91b77 | 218 | |
lcorralesc1 | 0:54e8dab91b77 | 219 | PID: |
lcorralesc1 | 0:54e8dab91b77 | 220 | star_patch2(); |
lcorralesc1 | 0:54e8dab91b77 | 221 | |
lcorralesc1 | 0:54e8dab91b77 | 222 | while (1){ |
lcorralesc1 | 0:54e8dab91b77 | 223 | |
lcorralesc1 | 0:54e8dab91b77 | 224 | med=Vin.read()*1000; |
lcorralesc1 | 0:54e8dab91b77 | 225 | err =sp-med; |
lcorralesc1 | 0:54e8dab91b77 | 226 | ap = kp*err; |
lcorralesc1 | 0:54e8dab91b77 | 227 | ai =(ki*0.001*err)+ai; //calculo de la integral del error |
lcorralesc1 | 0:54e8dab91b77 | 228 | // VERIFICAMOS QUE LA ACCION INTEGRAL NO SEA MUY GRANDE!!! |
lcorralesc1 | 0:54e8dab91b77 | 229 | if(ai>0.5){ |
lcorralesc1 | 0:54e8dab91b77 | 230 | ai=0.5; |
lcorralesc1 | 0:54e8dab91b77 | 231 | } |
lcorralesc1 | 0:54e8dab91b77 | 232 | ad = kd*(err-err_v); //calculo de la accion derivativa |
lcorralesc1 | 0:54e8dab91b77 | 233 | pid =(ap+ai+ad); |
lcorralesc1 | 0:54e8dab91b77 | 234 | |
lcorralesc1 | 0:54e8dab91b77 | 235 | //MOSTRAMOS LAS VARIABLES |
lcorralesc1 | 0:54e8dab91b77 | 236 | if (pid > 999)pid=1000; |
lcorralesc1 | 0:54e8dab91b77 | 237 | if (pid<0)pid=0; |
lcorralesc1 | 0:54e8dab91b77 | 238 | |
lcorralesc1 | 0:54e8dab91b77 | 239 | |
lcorralesc1 | 0:54e8dab91b77 | 240 | Vout.write(pid/1000); |
lcorralesc1 | 0:54e8dab91b77 | 241 | if(flag==0){ |
lcorralesc1 | 0:54e8dab91b77 | 242 | t.start(); |
lcorralesc1 | 0:54e8dab91b77 | 243 | flag=1; |
lcorralesc1 | 0:54e8dab91b77 | 244 | } |
lcorralesc1 | 0:54e8dab91b77 | 245 | if (t>0.3){ |
lcorralesc1 | 0:54e8dab91b77 | 246 | lcd.locate(3,0); |
lcorralesc1 | 0:54e8dab91b77 | 247 | lcd.printf(" "); |
lcorralesc1 | 0:54e8dab91b77 | 248 | lcd.locate(3,0); |
lcorralesc1 | 0:54e8dab91b77 | 249 | lcd.printf("%.0f",err); |
lcorralesc1 | 0:54e8dab91b77 | 250 | lcd.locate(11,0); |
lcorralesc1 | 0:54e8dab91b77 | 251 | lcd.printf(" "); |
lcorralesc1 | 0:54e8dab91b77 | 252 | lcd.locate(11,0); |
lcorralesc1 | 0:54e8dab91b77 | 253 | lcd.printf("%.0f",med); |
lcorralesc1 | 0:54e8dab91b77 | 254 | lcd.locate(3,1); |
lcorralesc1 | 0:54e8dab91b77 | 255 | lcd.printf(" "); |
lcorralesc1 | 0:54e8dab91b77 | 256 | lcd.locate(3,1); |
lcorralesc1 | 0:54e8dab91b77 | 257 | lcd.printf("%.0f",sp); |
lcorralesc1 | 0:54e8dab91b77 | 258 | lcd.locate(11,1); |
lcorralesc1 | 0:54e8dab91b77 | 259 | lcd.printf(" "); |
lcorralesc1 | 0:54e8dab91b77 | 260 | lcd.locate(11,1); |
lcorralesc1 | 0:54e8dab91b77 | 261 | lcd.printf("%.2f ",pid/1000); |
lcorralesc1 | 0:54e8dab91b77 | 262 | t.reset(); |
lcorralesc1 | 0:54e8dab91b77 | 263 | flag=0; |
lcorralesc1 | 0:54e8dab91b77 | 264 | wait(.3); |
lcorralesc1 | 0:54e8dab91b77 | 265 | } |
lcorralesc1 | 0:54e8dab91b77 | 266 | |
lcorralesc1 | 0:54e8dab91b77 | 267 | //ACTUALIZACION DE LAS VARIABLES |
lcorralesc1 | 0:54e8dab91b77 | 268 | err_v = err; |
lcorralesc1 | 0:54e8dab91b77 | 269 | if(ind==13)goto ini; |
lcorralesc1 | 0:54e8dab91b77 | 270 | } |
lcorralesc1 | 0:54e8dab91b77 | 271 | } |