** Esto lo escribi y cuando fue a publicarlo, aparecio tu respuesta, asi que no lo modifique para nada **
No te da mas la RAM ?
- Envialo a la flash
const char text1[33]="GET /carpeta123/carpeta12.php?n="; //Esto en flash
const char text2[12]=" HTTP/1.0\r\n"; // Esto en flash
char salida[30];
USARTWriteString(text1);
sprintf(salida,"%s&numero=%s&passw=%s",&cliente,&counter,&cpasword);
USARTWriteString(salida);
USARTWriteString(text2);
Esto obviamente si es posible leer de la flash, si hay lugar en la flash y tambien si no te importa la demora que ocasione leer de la Flash, aunque creo que nunca va a importar con esas funciones lo de la demora
- Otra es intentar "reutilizar" algun buffer que tengas y que no sea necesario
- Si vas a mantener numeros, para el counter por ejemplo o el cliente. mejor mantenelo en variables con numeros enteros, y que luego el mismo sprintf los formatee. Ejemplo:
counter[15]
Eso ocupa 15 bytes, encima es complejo de realizar operaciones aritmeticas como suma por ejemplo(trata de sumarle 1 a ese contador). Tendrias 14 digitos decimales para ese valor.
99.999.999.999.999 , bastante grande para un contador creo
32 bits = Hasta 4.294.967.296 ( Solo 10 digitos y no por completo para tenerlos todos en 9, pero... Creo que es suficiente para un contador)
Y ocupas solo 4 bytes. Contra esos 15.
Igual el cliente. Maximo 24 bits. No creo que manejes una base de datos de 16 millones de personas. parece un poco exagerado, o tal ves 16 bits es suficiente como para 65k de personas
EDIT, algo que me acabo de dar cuenta... un password por GET y sin encriptar ? :/