Serial.Readbytes funcionam em Arduino

Serial.Readbytes funcionam em Arduino
Serial.ReadBytes () é uma função em Arduino que permite a leitura de um número especificado de bytes do tampão serial e salvando -os em um buffer de matriz. Esta função pode ser usada para ler dados binários, como leituras de sensores, de um dispositivo externo conectado à placa Arduino.

Esta função terminará se o comprimento definido dos caracteres tiver sido lido ou se o tempo limite (serial.setTimeout ()). Se retornar 0, isso significa que nenhum dado válido está disponível.

Sintaxe
A seguir, a sintaxe da série.Função ReadBytes ():

Serial.Readbytes (buffer, comprimento)

Parâmetros

amortecedor: A matriz de buffer para armazenar os bytes recebidos. Os tipos de dados permitidos são Char Array ou Byte.

comprimento: Isso se refere ao número específico de bytes que devem ser recuperados do buffer serial. O tipo de dados permitido é int.

Retorna

O número de bytes lido do buffer serial.

Código de exemplo

O código a seguir explica o uso de série.Função ReadBytes () em Arduino.

const int buffer_size = 50;
char buf [buffer_size];
Void Setup ()
Serial.começar (9600);
Serial.setTimeout (5000); // Defina o período de tempo limite para 5000 milissegundos (5 segundos)

Void Loop ()
// Aguarde os dados de entrada
enquanto (serial.disponível () == 0)
// fazer nada

// Leia os bytes de entrada:
int rlen = serial.readbytes (buf, buffer_size);
// imprime os dados recebidos
Serial.print ("Eu recebi:");
para (int i = 0; i < rlen; i++)
Serial.impressão (buf [i]);

No código acima, a função setup () define o período de tempo limite para 5 segundos usando Serial.setTimeout (5000).

Na função loop (), o programa entra um pouco de loop que aguarda dados de entrada, verificando se Serial.disponível() é maior que 0. Enquanto o loop garante que o programa aguarde até que os dados estejam disponíveis antes de tentar lê -los, e ele sairá assim que os dados forem recebidos.

Depois que os dados recebidos são detectados, o programa lê os bytes usando serial.readbytes () e os armazena no BUF variedade. Os dados recebidos são impressos no monitor serial usando um loop que itera sobre a matriz BUF.

Saída
Aqui na saída, podemos ver o número de bytes lidos pela função.

Conclusão

A série.ReadBytes () é uma função em Arduino que permite a leitura de um número especificado de bytes do tampão serial e salvando -os em um buffer de matriz. Ele fornece bytes de leitura total, ou -1 se não houver dados disponíveis e retorne 0 se nenhuma entrada válida estiver lá. Esta função é comumente usada em programas Arduino que requerem comunicação com dispositivos externos sobre uma conexão serial.