Estou usando o Arduino Due para comunicar com um módulo bluetooth HC-05, eu consegui realizar a comunicação apenas nas portas TX2/RX2 e TX3/RX3. Tentei usar as TX0/RX0 e TX1/RX1 porém não obtive sucesso. O led já começava LIGADO e não havia nenhuma resposta do módulo bluetooth mesmo ele estando pareado e operando nas demais portas seriais como informado.
Segue abaixo a programação.
void setup()
{
Serial.begin(38400); // Default Baud rate of HC-05
pinMode(8, OUTPUT); //Pin Led
}
void loop()
{
char c;
if (Serial.available())
{
c = Serial.read();
if (c == 'l' || c == 'L')
{
digitalWrite (8, HIGH);
}
if (c == 'd' || c == 'D')
{
digitalWrite (8, LOW);
}
Nao conheço o Due mas penso que nao deves usar a porta TX0 nem a RX0 devido ao teu PC usar essa porta para carregar novos firmwares através do atmega 16U2 .Também se tiveres no teu código algum Serial.print que esperas ver na consola do teu pc não podes usar a mesma serial para ambos.Como o Due tem 4 portas serie deves colocar o teu Bluetooth em qualquer uma das portas que não a TX0/RX1.
No codigo que postaste acima estas a usar a TX0 pelo que para outras portas devias ter usado :
Serial1.begin(38400); // Para usares a porta TX1/RX1
...
Serial2.begin(38400); //Para usares a porta TX2/RX2
...
Serial3.begin(38400); // Para usares a porta TX3/RX3
Obrigado pela resposta.
Mas então não há nenhuma opção de usar esses pinos seriais para comunicação? Já tentei utilizar uma fonte externa e mesmo assim sem avanços.
Mas então não há nenhuma opção de usar esses pinos seriais para comunicação? Já tentei utilizar uma fonte externa e mesmo assim sem avanços.
Claro que há.Só não podes é usar em simultâneo mais que um periferico (se queres comunicação ao pc não a podes usar para mais nada).Mas nota o DUE tem 4 portas, por isso podes bem usar as outras 3 livres.