Reference   Language (extended) | Libraries | Comparison | Changes

Librería SoftwareSerial

El hardware de Arduino tiene de serie soporte para las comunicaciones serie en los pines 0 y 1 (que también se conectan con el ordenador a través de la conexión USB). El soporte serie nativo tiene lugar mediante un pieza de hardware (montada en el chip) llamada UART. Este hardware permite al chip Atmega recibir comunicaciones serie incluso mientras trabaja en otras tareas, siempre y cuando haya espacio en el buffer serie de 64 bytes.

La librería SoftwareSerial ha sido desarrollada para permitir la comunicación serie a través de otros pines digitales de Arduino, utilizando software para replicar la funcionalidad (de ahí el nombre de "SoftwareSerial")

Limitaciones

Como no está soportada por hardware, la librería tiene unas pocas limitaciones:

  • Sólo funciona con velocidades de hasta 9600 baudios.
  • Serial.available() no funciona
  • Serial.read() esperará hasta que lleguen los datos.
  • Sólo se recibirán los datos recibidos mientras Serial.read() es invocada. Los datos recibidos en cualquier otro momento se perderán, ya que el chip no está "escuchando".

SoftwareSerial parece tener algunos problemillas con la temposrización y/o con el software. Echa un vistazo a este hilo del foro para ver la discusión.

appears to have some timing issues and/or software issues. Check this forum thread for discussion. Software Serial Discussion. En particular, si tienes problemas utilizando SoftwareSerial con un chip Atmega168 borra SoftwareSerial.o de tu directorio(carpeta) de Arduino

Ejemplo

 SoftwareSerialExample

Funciones

Página principal Referencia

Correcciones, sugerencias, y nueva documentación deberán ser publicadas en el Foro (castellano) o en el Foro (inglés).

El texto de la referencia de Arduino está publicado bajo la licencia Creative Commons Reconocimiento-Compartir bajo la misma licencia 3.0. Los ejemplos de código de la referencia están liberados al dominio público.

Share