Arduino ha hecho que la electrónica y la programación sean más accesibles para un público más amplio. Arduino tiene varias funciones diferentes para manipular los datos de bytes. Una de esas funciones es Highbyte (). Esta función extrae los bytes altos de los datos de entrada dados. Este artículo cubrirá la función Arduino Highbyte () en detalle.
función highbyte () en arduino
La función highbyte () es parte de la biblioteca de referencia de idioma Arduino que permite al usuario extraer el byte alto de una variable de 16 bits. Un byte es una unidad de datos que puede almacenar un valor de 0 a 255. Una variable de 16 bits, por otro lado, puede almacenar un valor de 0 a 65,535.
Explicación de la función Arduino Highbyte ()
La función HighByte () extrae el byte más significativo (el byte alto) de una variable de 16 bits. El byte alto es el byte que contiene los bits más significativos de la variable, mientras que el byte bajo contiene los bits menos significativos. La función HighByte () es útil cuando se trata de variables de 16 bits, como valores de convertidor analógico a digital (ADC), valores de PWM y valores de temporizador.
Sintaxis de la función highbyte ()
La sintaxis de la función Highbyte () es la siguiente:
Highbyte (x)
Donde x es la variable de 16 bits cuyo alto byte queremos extraer.
Parámetro
La función toma solo un parámetro, que es el valor de 16 bits para extraer el byte alto de.
Devolver
El valor de retorno de la función HighByte () es un valor de 8 bits, que representa el alto byte del valor de entrada de 16 bits. El valor de retorno es un entero sin firmar entre 0 y 255.
Ejemplos de función highbyte ()
Aquí hay un ejemplo completo del código Arduino que demuestra el uso de la función HighByte ():
setup () void
// Inicializar la comunicación en serie a 9600 bits por segundo:
De serie.comenzar (9600);
bucle void ()
// Crear un valor entero de 16 bits:
unsigned int myValue = 0xabcd;
// Extraiga el byte alto del valor de 16 bits:
unsigned char highbyTevalue = highbyte (myValue);
// imprime el valor original y el valor de alto byte en el monitor en serie:
De serie.imprimir ("Valor original:");
De serie.imprimir (myValue, hex);
De serie.imprimir (", valor de alto byte:");
De serie.println (highbyTevalue, hex);
// espera 1 segundo antes de repetir el bucle:
retraso (1000);
En este ejemplo, la función Setup () inicializa la comunicación en serie con una tasa de baudios de 9600. La función bucle () crea un valor entero de 16 bits myValue, extrae su alto byte usando el función highbyte (), y luego imprime tanto el valor original como el alto valor de bytes en el monitor en serie utilizando la serie.impresión () función. La función de retraso () se usa para pausar el bucle durante 1 segundo antes de repetir.
Cuando sube este código a una placa Arduino y abre el monitor en serie, debe ver el valor original 0xabcd y el alto valor de byte 0xab Impreso repetidamente, una vez cada segundo.
Conclusión
La función HighByte () es una función esencial en Arduino que permite al usuario extraer el byte más significativo de una variable de 16 bits. Es útil cuando se trata de variables de 16 bits, como valores ADC, valores de PWM y valores de temporizador. Para obtener más detalles sobre el parámetro de función HighByte (), el valor de retorno y la sintaxis lean el artículo.