Função Arduino Highbyte

Função Arduino Highbyte

Arduino tornou a eletrônica e a programação mais acessíveis a um público mais amplo. Arduino tem várias funções diferentes para manipular dados de bytes. Uma dessas funções é Highbyte (). Esta função extrai os bytes altos dos dados de entrada fornecidos. Este artigo abordará a função Arduino Highbyte () em detalhes.

função highbyte () em Arduino

A função highbyte () faz parte da biblioteca de referência de idiomas Arduino que permite ao usuário extrair o byte alto de uma variável de 16 bits. Um byte é uma unidade de dados que pode armazenar um valor de 0 a 255. Uma variável de 16 bits, por outro lado, pode armazenar um valor de 0 a 65.535.

Explicação da função Arduino Highbyte ()

A função Highbyte () extrai o byte mais significativo (o byte alto) de uma variável de 16 bits. O byte alto é o byte que contém os bits mais significativos da variável, enquanto o byte baixo contém os bits menos significativos. A função Highbyte () é útil ao lidar com variáveis ​​de 16 bits, como valores de conversor analógico-digital (ADC), valores de PWM e valores do timer.

Sintaxe da função Highbyte ()

A sintaxe da função Highbyte () é a seguinte:

Highbyte (x)

Onde x é a variável de 16 bits cujo byte alto queremos extrair.

Parâmetro

A função leva apenas um parâmetro, que é o valor de 16 bits para extrair o byte alto de.

Retornar

O valor de retorno da função Highbyte () é um valor de 8 bits, que representa o alto byte do valor de entrada de 16 bits. O valor de retorno é um número inteiro não assinado entre 0 e 255.

Exemplos de função Highbyte ()

Aqui está um exemplo completo de código Arduino que demonstra o uso da função Highbyte ():

Void Setup ()
// Inicialize a comunicação serial a 9600 bits por segundo:
Serial.começar (9600);

Void Loop ()
// Crie um valor inteiro de 16 bits:
não assinado int myValue = 0xabcd;
// extraia o byte alto do valor de 16 bits:
Char highbytevalue não assinado = Highbyte (MyValue);
// Imprima o valor original e o valor de byte alto para o monitor serial:
Serial.print ("Valor original:");
Serial.impressão (myvalue, hexadecimal);
Serial.print (", alto valor de byte:");
Serial.println (highbytevalue, hex);
// Aguarde 1 segundo antes de repetir o loop:
atraso (1000);

Neste exemplo, a função Setup () inicializa a comunicação serial com uma taxa de transmissão de 9600. A função loop () cria um valor inteiro de 16 bits MyValue, extrai seu byte alto usando o função highbyte (), e então imprime o valor original e o valor de byte alto para o monitor serial usando a série.Função print (). A função de atraso () é usada para pausar o loop por 1 segundo antes de repetir.

Quando você envia este código para uma placa Arduino e abre o monitor serial, você deve ver o valor original 0xabcd e o valor de byte alto 0xab impresso repetidamente, uma vez a cada segundo.

Conclusão

A função Highbyte () é uma função essencial no Arduino que permite ao usuário extrair o byte mais significativo de uma variável de 16 bits. É útil ao lidar com variáveis ​​de 16 bits, como valores de ADC, valores de PWM e valores do timer. Para obter mais detalhes sobre o parâmetro da função highbyte (), o valor de retorno e a sintaxe Leia o artigo.