SoftwareSerial-BLUETOOTH-HC-05

Buenas noches, estoy usando un Arduino Mega 2560 con un HC-05 quisiera saber si hay algunos pines para conectar los puertos RX y TX del HC-05 que no sean los pines 10 y 11,ya que veo que algunas paginas dicen que se debería poder con los pines 10, 11, 12, 13, 14, 15,3 y 2 pero cuando yo lo intento no me responde el modulo .y en los tutoriales dicen lo mismo pero siempre usan los pines 10 y 11.
SoftwareSerial miBT(10,11); // pin 10 como RX, pin 11 como TX

void setup(){
Serial.begin(9600); // comunicacion de monitor serial a 9600 bps
Serial.println("Listo"); // escribe Listo en el monitor
miBT.begin(38400); // comunicacion serie entre Arduino y el modulo a 38400 bps
}

void loop(){
if (miBT.available()) // si hay informacion disponible desde modulo
Serial.write(miBT.read()); // lee Bluetooth y envia a monitor serial de Arduino

if (Serial.available()) // si hay informacion disponible desde el monitor serial
miBT.write(Serial.read()); // lee monitor serial y envia a Bluetooth

}

Su publicacion se MUEVE a su ubicacion actual ya que es mas adecuada.

La Mega tiene 4 puertos serie por hardware, no necesitas en absoluto usar SoftwareSerial.
Usan los pines

 0(RX), 1(TX)  - Serial
19(RX), 18(TX) - Serial1
17(RX), 16(TX) - Serial2
15(RX), 14(TX) - Serial3

Serial - Arduino Reference

Saludos

Hola este seria el codigo que uso que solo funciona cuando uso 10 y 11,por favor podrias decirme que tengo que agregar o quitar para poder usar los pines (0,1);(14,15)..........(18,19).
#include <SoftwareSerial.h> // libreria que permite establecer pines digitales
// para comunicacion serie

SoftwareSerial miBT(10,11); // pin 10 como RX, pin 11 como TX

void setup(){
Serial.begin(9600); // comunicacion de monitor serial a 9600 bps
Serial.println("Listo"); // escribe Listo en el monitor
miBT.begin(38400); // comunicacion serie entre Arduino y el modulo a 38400 bps
}

void loop(){
if (miBT.available()) // si hay informacion disponible desde modulo
Serial.write(miBT.read()); // lee Bluetooth y envia a monitor serial de Arduino

if (Serial.available()) // si hay informacion disponible desde el monitor serial
miBT.write(Serial.read()); // lee monitor serial y envia a Bluetooth

}

Si, con todo gusto, pero edita tu post y postea el código como corresponde de acuerdo a las Normas del foro, punto 7. :wink:

devi usare
a porta seriale 1 pin 18-pin 19

tienes que usar el puerto serial 1 pin 18-pin 19
acabo de hacer una solicitud
si necesitas preguntar

@leonardanic Te dejo el código corregido para la Mega

#define miBT Serial1 // usa pines 18 y 19
// #define miBT Serial2 // usa pines 16 y 17
// #define miBT Serial3 // usa pines 14 y 15

void setup(){

  Serial.begin(57600); // comunicacion de monitor serial a 57600 bps
  Serial.println("Listo"); // escribe Listo en el monitor
  miBT.begin(9600); // comunicacion serie con el modulo a 9600 bps por defecto
//  miBT.begin(38400); // comunicacion con el modulo en modo comandos AT
}

void loop(){

  if (miBT.available()) // si hay informacion disponible desde modulo
    Serial.write(miBT.read()); // lee Bluetooth y envia a monitor serial de Arduino
  if (Serial.available()) // si hay informacion disponible desde el monitor serial
    miBT.write(Serial.read()); // lee monitor serial y envia a Bluetooth
}

Dejé preparadas las 3 posibilidades.
Si quieres usar el Serial1 lo dejas como está, si quieres el Serial2 descomentas esa línea (borras "//") y comentas la primera (con "//"), lo mismo si quieres usar Serial3.

Esta línea

#define miBT Serial1

le indica al compilador de arduino que reemplace las apariciones de "miBT" por "Serial1" al momento de compilar.

Te lo comenté en el código, por defecto el módulo se conecta a 9600 bps y salvo que tu le hayas cambiado la velocidad, solo en modo AT se conecta a 38400 bps.
Y por experiencia, pon el Serial (y la consola) a mayor velocidad que el módulo.

Saludos

PD: Por favor, no olvides editar tu post para que el código se vea como el que te he adjuntado.

1 Like

Moderador:
Por favor, lee las Normas del foro y edita tu código/error usando etiquetas de código.
Ve a edición, luego selecciona todo el código que has publicado, lo cortas y click en </>


No hace falta que venga un moderador y te pida lo que usuarios del foro de mucho tiempo te solicitan!
Simplemente edita tus posts como te acabo de indicar.
Además usa autoformato del IDE para que el código luzca con separación y se entienda. Todo lo que tu no haces debemos hacerlo nosotros para entender lo que has querido hacer.

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.