Imprimir matriz de caracteres en Arduino
-
Definir usando
int
e Imprimir matriz de caracteres usandoSerial.println()
en Arduino -
Definir usando
char
e Imprimir un array de caracteres usandoSerial.println()
en Arduino
Este tutorial discutirá la impresión de un array de caracteres utilizando un bucle en Arduino.
Definir usando int
e Imprimir matriz de caracteres usando Serial.println()
en Arduino
En Arduino, si inicializamos un array usando la palabra clave int
, debemos usar un bucle para imprimir sus elementos.
Los elementos del array de caracteres se colocan en ciertos índices y, para imprimirlos, necesitamos obtener cada uno de ellos individualmente. Podemos hacer eso usando un bucle en Arduino.
Por ejemplo, podemos usar un bucle for
que comienza en el índice 0 y termina en la longitud del arreglo, que podemos obtener usando la función length()
. Dentro del bucle, obtendremos cada elemento del arreglo usando su índice y lo imprimiremos usando la función Serial.print()
o Serial.println()
.
La función Serial.print()
imprime el valor en una sola línea, pero la función Serial.println()
imprime el valor y mueve el cursor a la siguiente línea.
Por ejemplo, definamos un array de caracteres e imprimámosla en la ventana del monitor serie usando un bucle en Arduino.
Ejemplo:
int ch[] = {'a', 'b', 'c'};
void setup() {
Serial.begin(9600);
for (int i = 0; i < 3; i++) {
char c = char(ch[i]);
Serial.println(c);
}
}
void loop() {}
Producción :
a
b
c
Supongamos que usamos int
para definir un array de caracteres. En ese caso, los elementos serán convertidos a su representación ASCII, y para imprimirlos, tenemos que volver a convertirlos a char usando la función char()
; por eso usamos la función char()
en el código anterior.
Si no usamos la función char()
en el código anterior, se imprimirán los valores ASCII de los caracteres.
Definir usando char
e Imprimir un array de caracteres usando Serial.println()
en Arduino
También podemos definir un array char usando la palabra clave char
, y no tenemos que usar un bucle para imprimirla. Tampoco tenemos que usar la función char()
porque la matriz ya está en el tipo de datos char.
Por ejemplo, definamos un bucle usando la palabra clave char
e imprimámoslo en el monitor serial.
Ejemplo:
char ch[] = {'a', 'b', 'c'};
void setup() {
Serial.begin(9600);
Serial.println(ch);
}
void loop() {}
Producción :
abc
Si queremos imprimir cada elemento en una línea separada, debemos usar un bucle como lo hicimos en el ejemplo anterior. También podemos definir un array de caracteres como una cadena.
Por ejemplo, para definir el array char anterior como una cadena, podemos utilizar la siguiente línea de código.
char ch[] = "abc";
En los ejemplos anteriores, podemos obtener cualquier elemento del array char utilizando su índice. Por ejemplo, para obtener el primer elemento del array, usaremos la siguiente línea de código.
char c = ch[0];
Usamos 0 porque el primer elemento se coloca en el índice 0, y el carácter se almacenará en la variable c
. También podemos reemplazar los caracteres presentes en el array.
Necesitamos obtener el elemento que queremos reemplazar usando su índice y reemplazarlo con el nuevo.
Por ejemplo, para reemplazar el primer elemento del array anterior, usaremos la siguiente línea de código.
ch[0] = 'd';
También podemos usar un bucle para reemplazar más de un elemento del array.