Bom dia a todos, estou com problemas numa aplicação.

Preciso que o Arduino MEGA colete informações de um Arduino mini PRO.
As ligações que eu fiz estão na imagem em anexo e o código de teste coloquei no final.

O que acontece?
O Arduino MEGA aparentemente não faz nada, mas se eu desconectar rapidamente o RX1 (19) ele mostra todos os dados recebidos de uma só vez, ao conectar novamente ele para de imprimir os dados até que eu desconecte de novo.
Alguém já teve um problema parecido?

Código do Arduino MEGA
void setup() { 
    Serial.begin(9600);  
    Serial1.begin(9600);
    pinMode(8, OUTPUT);
    digitalWrite(8,LOW);
}

void loop() {
    if(Serial1.available()){
        Serial.println(Serial1.readString());
    }
}

Código do Arduino mini PRO
void setup() {
    Serial.begin(9600);  
    Serial1.begin(9600);
    pinMode(8, OUTPUT);
    digitalWrite(8,HIGH);
}

void loop() {
    Serial.println(millis());
    delay(100);
}

Exibições: 323

Anexos

Responder esta

Respostas a este tópico

Oi E2A, bom dia.

Veja este tutorial sobre comunicação com arduino usando RS485.

Tem um code completo. Veja se ajuda.

https://arduino-info.wikispaces.com/SoftwareSerialRS485Example

Eu já testei este code e funcionou aqui.

Rui

Eu vi esse code agora pouco em outro tópico aqui, pesquisando>
Vou testar em casa e dou um feedback aqui.

Obrigado.

Boa tarde, fiz testes em casa com a conexão do link sugerido...
Foi ai que percebi que esta funcionando como eu já tinha conseguido.

Fiz novos testes e percebi que eu seu trocar no arduino slaveSerial1.readString() por Serial1.read() ele funciona sem problemas, porém eu prefiro usar o readString para facilitar o código e aplicação do mesmo.

Alguém sabe como resolver isso?

Obrigado ai galera, mas consegui achar o erro.

Usei para escrever
bEsc = Serial.read();
Serial.write(bEsc);

E para ler
bLer = Serial1.read();
Serial.write(bLer);

Dessa forma consegui usar corretamente o Serial usando "char" padrão.

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço