Bom dia a todos!, sou o mais novo integrante do Forúm, e venho pedir a ajuda de vocês caros colegas..
Estou com esse projeto Consulta e armazenamento de variáveis através de SMS c/ GBoard, sensores DHT11 e sensor HL-69.
A ideia é que quando enviar um SMS 'Consulta', ele me responda os valores das variáveis e também armazene os dados em um arquivo TXT no cartão microSD
Acontece que tenho as duas partes do código criadas por separado, e sim funcionam, o tema é q ao juntar os códigos a GBoard so imprime sujeira so Debug e também reinicia.
Se alguém puder analizar o código e conceder uma ajuda, ficarei muito Grato!
Obrigado desde já!...
Eu não conheço as bibliotecas que está a utilizar. Não seria má ideia mostrar os dois sketchs que deram origem a este para perceber se existe algum "erro estúpido".
EDIT: Depois de olhar com alguma atenção para o código, chego à conclusão que o programa é tão simples que há muito poucas coisas que "podem correr mal". O que significa exactamente:
ao juntar os códigos a GBoard so imprime sujeira so Debug e também reinicia.
Consegue mostrar algum exemplo? O que é o "Debug"? Em que condições reinicia (quando recebe a SMS)?
Veja que ambos código funcionam quando separados.
Mas eu preciso juntar esses dois códigos, pois como expliquei, quando eu enviar um SMS "Consulta",
me responderá a temperatura e a umidade do solo, e também preciso guardar esses dados em um cartão microSD
Mas quando eu juntei os códigos, simplesmente a GBoard Trava, pois eu carrego o código nela, e fico controlando oque ela
fazendo a través do Serial, e vejo que ela trava.
Ja no inicio do código ela trava, me parece que ela não consegue iniciar o cartão
parece q é nessa parte
res=file.initFAT();
delay(1000);
if (res!=NO_ERROR)
{
Serial.print("***** ERROR: ");
Serial.println(verboseError(res));
while (true) {};
}
Serial.println("Crearemos un archivo TXT con nombre de 'BIGFILE.TXT'. Para salvar los datos de los sensores.");
Serial.println();
Sim, tenho cartão Kingston e outro SanDisk de 2GB ambos, formatados em FAT16.
Bem, verifiquei o código e realmente faltava "dht.comeco()", mas já o inclui, e testei e funciona tudo OK.
Salva direitinho o TXT dentro do cartão com os dados das variáveis dos sensores.
Agora estou tentando outras coisas como trocar a fonte de alimentação da GBoard de 12v para 24v.
Veja que quando eu carrego o código (sms+sensores+SD), a GBoard liga normalmente,
então quando a ligo sem cartão de memoria no slot, obtenho a mensagem de erro configurada no código (anexo 1)
Já quando a ligo com cartão de memoria no slot, obtenho isso no Monitor Serial. (anexo 2)
Estive realizando testes durante todo o día, e utilizei a biblioteca SD.h também
Tanto a tinyFAT quanto a SD funcionaram muito bem,
realizei leituras dos sensores e guardei no cartão com ambas bibliotecas.
Mas outra vez ao juntar os códigos de guardar no cartão com o de enviar sms
não obtive sucesso..
Realizei buscas e mais buscas, e nada de soluções
Poderia ser falta de memoria RAM durante a execução do código???
Como faço pra saber se não me falta memoria RAM?
pois com todos os testes que realizei realmente tudo indica que seja isso o problema, pois testei os códigos parte por parte
e pude iniciar GSM+SD em parte, pois quando coloquei todo o código de leitura dos sensores aí a GBoard trava...
Normalmente o que eu faço para ver se está a acontecer algo do género é colocar um serial print no final do setup. Se esse serial print aparecer sem que eu tenha carregado no reset, então é muito provavel que falte memória.