Boa tarde,
Estou desenvolvendo um projeto de pesquisa para faculdade, onde utilizarei um módulo gps e salvarei os dados gerados em um cartão sd. Entretanto, estou com dificuldade na parte inicial dos códigos (códigos.pdf), mas ao inicial, ele não prossegue para o "void loop", como demonstra a imagem abaixo:
O curioso é que quando retiro o seguinte trecho:
Serial.println("Iniciando cartão SD...");
if (!SD.begin(chipSelect))
{
Serial.println("Falha na inicializacao do SD!");
while (1);
}
Serial.println("Cartao SD iniciado com sucesso...");
Os dados gerados pelo módulo começam a serem gerados. Gostaria da ajuda de alguém para resolver esse problema.
*Obs.: Estou utilizando um DATA LOGGER SHIELD PARA ARDUINO COM RTC DS1307
Obrigado
Tags:
Esse "while (1);" é um comando para travar o processamento. Vai ficar em loop enquanto 1 for 1.
Coloque o trecho a seguir logo antes do while(1):
Serial.println("Travando o processamento pq não consigo dar continuidade sem inicializar o SD!");
Assim vai fazer mais sentido.
Mas a verdade é que
SD.begin(chipSelect)
Esta retornando False e não deveria.
Ok, vou mudar isso e ver se consigo prosseguir
Tentei mudar, mas continua não pulando para o "void loop"
Bom dia IJ,
coloque a instrução na primeira linha do loop():
Serial.println("Entrei no Loop");
E diga se imprimiu.
RV
eu já fiz isso, vou mandar o código(modificado.pdf) com está e o que está sendo lido. Os *** significa que entrou no loop, entretanto não está lendo os dados gerados pelo gps.
Qual "módulo" de GPS vc está usando?
RV
Boa tarde IJ,
vc esta usado a softserial para se comunicar como o modulo
do GPS usando os ports 11 e 12 do arduino (UNO/mini).
Está usando o shield de DATA LOG que tem um SD card,
e este SD card usa a SPI para se comunicar com o arduino.
No arduino (UNO/mini) a SPI usa os ports 11 MOSI, 12 MISO,
13 SDK, e o DATA LOG usa o 10 como SS.
Portanto está tendo um conflito de uso dos ports 11 e 12.
Mude os ports da sua serial para outros ports, (qualquer 2 de port 3 a 9),
e deverá funcionar sem problemas.
Se der certo de um retorno pra gente.
RV
Boa noite,
Deu certo sua informação sobre conflitos, pelo jeito era isso mesmo. O código não foi alterado em nada (código pronto), os dados estão sendo gerados corretamente agora, como mostra a imagem abaixo:
Obrigado, faz dias que estava sem resolver esse problema....
Boa noite,
Aprenda a usar o GPS primeiro, depois faça testes com o outro shield.
A antena precisa estar conectada no módulo e virada para o céu. Faça testes ao ar livre ! Não dentro de casa.
Use esse tutorial e informe os resultados:
http://blog.eletrogate.com/gps-neo-6m-com-arduino-aprenda-usar/
A interface Serial do GPS usa 3,3V . Tem que usar o divisor de tensão como no diagrama do tutorial.
Bem-vindo a
Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)
© 2024 Criado por Marcelo Rodrigues. Ativado por