Serial.print()
De ArduWiki
Contenido
Descripción
Vuelca o envía un dato (variable, número o cadena), al puerto serie. Dicho comando puede tomar diferentes formas, dependiendo de los parámetros que usemos para definir el formato de volcado de los datos.
Sintaxis
Serial.print("texto a mostrar"); Serial.print(variable [,formato]);
Parametros
- Variable
- variable a evaluar. Esta variable puede ser de cualquier tipo.
- formato
- por defecto es DEC, pero puedes también usar HEX, OCT o BIN.
Advertencias
- Es posible que print() muestre varios valores al mismo tiempo pero estos deben ser concatenados en una variable String previamente. Ver ejemplo 2.
Comentarios
Los literales de caracteres y cadenas también pueden representar caracteres especiales que son difíciles o imposibles de expresar de otra manera en el código fuente de un programa, como "nueva linea" (\n) o "tab" (\t). Estos caracteres especiales son todos precedidos por un carácter de barra diagonal inversa (\).
Código | Descripción |
---|---|
\n | nueva línea |
\r | retorno de carro |
\t | lengüeta |
\v | pestaña vertical |
\b | retroceso |
\f | alimentación de formulario (alimentación de página) |
\a | alerta (pitido) |
\' | comilla simple ( ') |
\" | comillas dobles ( ") |
\? | signo de interrogación ( ?) |
\\ | barra invertida ( \) |
Ejemplo 1
Observa la diferencia sustancial entre usar Serial.write() y print()
byte c = 'A'; //Serial lo mismo que c = 65
Serial.write(c); //A ***ojo al piojo***
Serial.print(c); //65
Serial.print(c, DEC); //65
Serial.print(c, HEX); //41
Serial.print(c, OCT); //101
Serial.print(c, BIN); //1000001
Ejemplo 2
En este ejemplo demostramos que a una cadena se le puede concatenar un numero sin problemas.
Serial.print("Sensor: " + analogReda(A0)); //No muestra nada
int sensor = analogRead(A0);
sensor = "Sensor: "+ sensor;
Serial.print(sensor); //Solo sale valor de analogRead(A0)
String sensor = "Sensor: ";
sensor = sensor + analogRead(A0);
Serial.print(sensor); //Ok
Ejemplo 3
void setup() {
Serial.begin(115200);
delay(100);
Serial.println("*** Estamos listo ***");
}
void loop() {
if (Serial.available()){
byte ent = Serial.read();
Serial.print("El caracter enviado fue: ");
Serial.write(ent);
Serial.print(" y su codigo ASCCI es: ");
Serial.print(ent);
Serial.print(" en HEXADECIMAL es: ");
Serial.println(ent, HEX);
}
}