Pessoal, estou tentando fazer meu módulo GPS EM-411 comunicar com o PC, e fiz um código simples para ler a serial e uso o monitor da IDE para ver o que o módulo está mandando.

Porém ele somente manda lixo.

Pensei que o meu GPS estava com problema, ai peguei e fiz um loop de enviar comando para serial e também vem lixo.

O código que faz isto está aqui:

#include <SoftwareSerial.h>


SoftwareSerial GPS = SoftwareSerial(50,52);

void setup(){
  GPS.begin(4800);
  Serial.begin(9600);
}

void loop() {
  Serial.println();
  Serial.println("Give me another byte:");
  Serial.println();
}

O que estou fazendo de errado?

abs

Exibições: 394

Responder esta

Respostas a este tópico

Bom, ou seu GPS está mandando dados em binario e não caracteres ASCII ou vc esta usando o baud rate

incorreto, no datasheet desse modulo, você tem que usar 4,800 bps

Não vi no seu codigo onde ele escreve na serial o que veio pela softserial...

Deveria estar escrevendo só o 

Give me another byte:

Give me another byte:

Give me another byte:...

Se esta escrevendo lixo deve ser erro mesmo de velocidade. Seu PC está em uma velocidade que não 9600.

Veja esse tuto, é mto bom:

https://forum.sparkfun.com/viewtopic.php?f=13&t=35004

Mas, para testes acima, eu não conectei o GPS, somente estou deixando o Arduino.

Para ver se a serial funciona e mesmo assim vem lixo...

O que pode ser o erro? 

E se vc tira as linhas do softserial ? Aih funciona ?

Os exemplos de serial funcionam ?

Rodei aqui e resultado foi:

Valeu povo pelas respostas...

Sobre o print acima, a minha máquina deve estar com a USB com problemas e somente aparecia lixo...Baixei para 4800 e funcionou...

Ai sobre aparecer -1, é que fiz a cagada de inverter o TX e RX...

Consegui fazer funcionar...

Agora a luta vai ser, como pego um dados da serial e comparar se este dado é "$"...

Valeu

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço