Diferencia entre revisiones de «Serial.begin()»

De ArduWiki
Saltar a: navegación, buscar
(Ejemplo 1)
(Ejemplo 1)
Línea 76: Línea 76:
  
 
== Ejemplo 1 ==
 
== Ejemplo 1 ==
 +
Este ejemplo imprime por consola los numero de 0 a 254 y para.
 +
 
<syntaxhighlight lang="c++">
 
<syntaxhighlight lang="c++">
 
void setup(){
 
void setup(){
 
   Serial.begin(115200);
 
   Serial.begin(115200);
}
 
void loop(){
 
 
   for (byte n=0; n<255; n++){
 
   for (byte n=0; n<255; n++){
 
       Serial.println(n);
 
       Serial.println(n);
 
   }
 
   }
 +
}
 +
void loop(){
 +
  //Nada
 
}
 
}
 
</syntaxhighlight>
 
</syntaxhighlight>

Revisión del 23:48 28 mar 2019

Abre el puerto serie y fija la velocidad en baudios para la transmisión de datos en serie. El valor típico de velocidad para comunicarse con una computadora es 9600, aunque otras velocidades pueden ser soportadas: 300, 600, 1200, 2400, 4800, 9600, 14400, 19200, 28800, 38400, 57600 o 115200.

Nota: No obstante, puede especificar otras velocidad de comunicación a través de los pines 0 y 1, por ejemplo con un componente que requiere una velocidad en baudios particular.


El valor predeterminado es 8N1 (8 bits de datos, sin paridad, un bit de parada). Pero con este parámetros se pueden configurar otras opciones.

Sintaxis

Serial.begin(velocidad [, configuracion]);

Parametros

velocidad
Debes usar uno de estos valores 300, 600, 1200, 2400, 4800, 9600, 14400, 19200, 28800, 38400, 57600 o 115200.
configuración
El valor predeterminado es 8N1 (8 bits de datos, sin paridad, un bit de parada). Pero con este parámetros se pueden configurar otras opciones.
Configuración serie
Código Datos Paridad Parada
5N1 5 Ninguna 1
6N1 6
7N1 7
8N1 8
5N2 5 2
6N2 6
7N2 7
8N2 8
5E1 5 Par 1
6E1 6
7E1 7
8E1 8
5E2 5 2
6E2 6
7E2 7
8E2 8
5O1 5 Impar 1
6O1 6
7O1 7
8O1 8
5O2 5 2
6O2 6
7O2 7
8O2 8

Retorno

Nada.

Advertencia

  • Aunque es posible poner la velocidad en 115200 si envias muchos datos se perderan algunos a esta velocidad.
  • Cuando se usa la comunicación serie los puertos digital 0 (RX) y 1 (TX) no puede usarse al mismo tiempo.
  • Para microcontroladores a 16 MHz, es posible iniciar una comunicación serial de hasta 2 Mbps (2000000 bps); sin embargo no se recomienda ya que es prácticamente imposible evitar pérdidas a esta velocidad.

Ejemplo 1

Este ejemplo imprime por consola los numero de 0 a 254 y para.

void setup(){
   Serial.begin(115200);
   for (byte n=0; n<255; n++){
      Serial.println(n);
   }
}
void loop(){
   //Nada
}

Ejemplo 2

Luego de iniciar la comunicación es posible comprobar si existe el puerto serie que devolverá una verdadero o falso según el caso.

void setup(){
   Serial.begin(9600);
   while (!Serial){
      ;  //Esperar a que se conecte el puerto serie.
   }
}
void loop(){
   for (byte n=33; n<127; n++){
      Serial.write(n);
      Serial.println();
   }
}

Vea también

Referencias