Usando un Arduino para leer datos de un dispositivo en serie y luego enviarlos por Bluetooth

6

Por lo tanto, desde un punto de vista general de alto nivel, necesito capturar datos de un dispositivo serie y luego enviarlos a través de Bluetooth. Tengo un módem bluetooth elegido. Entiendo cómo conectarlo al arduino. Sin embargo, no sé cómo conectar un dispositivo serial que hablará con el arduino.

Parece que estoy tratando de hacer demasiadas conexiones en serie de simultaneidad.

    
pregunta

6 respuestas

11

Un protocolo serie utiliza principalmente una configuración maestro / esclavo con diferentes esquemas de direccionamiento:

La biblioteca NewSoftSerial por Mikal Hart permite al usuario implementar una rutina de software impulsado por interrupciones (a diferencia del hardware, como los periféricos UART) para las comunicaciones en serie. Úselo si lo necesita, pero tenga en cuenta que depurar las interrupciones en conflicto es más desafiante que depurar las rutinas de sondeo (que aparentemente es lo que hacen las bibliotecas predeterminadas).

    
respondido por el tyblu
4

Tal vez eche un vistazo a serie de software : permite varias conexiones en serie. Cualquiera de los pines digitales en el Arduino puede usarse para la comunicación en serie, y los pines en serie normales pueden continuar usándose para su módem Bluetooth.

    
respondido por el finster
2

Sí, usar el software serial (como también lo vinculé anteriormente) es su respuesta, es bastante sólido siempre y cuando no esté haciendo muchas otras cosas pesadas en el arduino al mismo tiempo y la velocidad de transmisión es algo sensato. Es su elección si usa el UART de hardware para el módem o el dispositivo, y el que conecta al puerto serie del software.

Supongo que está utilizando UART para los dos dispositivos, pero si es así, ¿sabe que no necesita un arduino en el bucle? simplemente conecte el dispositivo directamente a la entrada / salida del módem blutooth (asegúrese de que ambos utilicen voltajes TTL o de otro modo compatibles) y puede recoger los datos en el otro extremo del enlace bluetooth utilizando SPP (como haría de todos modos) asumir)

Jim

    
respondido por el Jim
0

Por lo que recuerdo, debería poder utilizar USART y SPI o USART e I2C en el arduino al mismo tiempo. Si puede darnos más detalles sobre el Blue-tooth y el dispositivo serial, alguien debería poder darle una respuesta definitiva.

    
respondido por el jsolarski
0

El método más rápido (aunque limitado) sería simplemente conectar el dispositivo que desea leer (asumiendo que es un flujo serial asíncrono) al RX del AVR, luego el pin AVR TX al pin RX del módulo BT. Luego, puede simplemente leer desde el UART, hacer el procesamiento que desee (o no hacer nada), y luego volver a escribir en el UART.

La principal limitación es que la velocidad en baudios de la radio BT y su dispositivo deben coincidir. Sin embargo, puede ajustar la velocidad en baudios en la mayoría de las radios BT. También te quedas atascado con las comunicaciones de una sola dirección.

Si no está procesando, puede conectarlos directamente.

    
respondido por el Nick T
0

Una opción más simple sería usar un módulo Bluetooth con interfaz serial y conectarlo a la línea serial que desea reenviar. No es necesario agregar / programar un Arduino.

    
respondido por el Igor Stoppa

Lea otras preguntas en las etiquetas