Converter inteiro em string em Arduino

Yousef Zahid 12 outubro 2023
Converter inteiro em string em Arduino

Muitos programadores novatos acham difícil converter inteiros em strings e vice-versa devido a ter uma memória mecânica de um exemplo específico em um livro. Criaremos um roteiro simples, mas prático, para solucionar problemas como esses no futuro.

Em primeiro lugar, vamos definir os termos necessários antes de prosseguir com o código.

Um inteiro é uma palavra matemática que define um conjunto de números totalmente naturais. Por exemplo, um número negativo como -2 é um inteiro, 0 é um inteiro, embora não seja positivo nem negativo. Além disso, todos os números naturais positivos também são inteiros. No entanto, tome cuidado para que os números racionais, irracionais e imaginários não caiam sob seu guarda-chuva. Em uma linguagem de programação, a variável int armazena inteiros.

Uma string em C++, por outro lado, é apenas um array unidimensional de caracteres. Por exemplo, a palavra HU é uma sequência de dois caracteres. A variável string armazena caracteres. A classe String também existe, mas isso é um pouco complexo neste estágio.

Vamos explicar isso em um código simples.

Serial.begin(9600);   // Baud rate for communication, sending bits at a rate of
                      // 9600 bits/sec.
char a[] = {72, 85};  //  define two integer in an array.
Serial.println(a);    // Prints the output a.

Antes de começarmos a explicar, é necessário observar que este código requer um Arduino USB conectado ao PC para que o monitor serial exiba os resultados.

A taxa de bits é 9600, o que é necessário. Aumentá-lo pode interromper o fluxo e a saída ficará irregular. Todo o código é um número inteiro, caractere e strings em 3 linhas. Os 72 e 85, dois inteiros, são processados ​​usando a variável char e transformados em palavras usando o código ASCII. Depois de recuperar esses dados da biblioteca, o comando Serial.println envia a saída para o monitor serial. Esses dois caracteres ou alfabetos aqui formariam uma string, mas não necessariamente a definiriam.

O monitor imprimirá HU para exibição. Você pode tentar alterar o valor e ver o resultado por si mesmo.

int i = 72;      // Assigns an integer value to i
char b[] = {i};  // the integer value has been assign as a variable to b
Serial.println(b);

Agora, este exemplo não é o seu típico. É uma conversão simples de inteiro para caractere e você pode elaborar ainda mais o código para introduzir strings se quiser tornar-se complexo.

Explicação de inteiro, string e variável Char

O último exemplo é um pouco mais sofisticado:

int h = 72;  // Assigning integer.
int j = 85;
char c[] = {h,
            j};  // Inputting the variable h and j into the character variable c
String(z) = c;   // Producing a string.
Serial.println(z);

Vamos começar com a primeira linha, atribuindo um valor inteiro simples a h. Assim é para j. Além disso, a variável char c então subdimensiona essas duas variáveis ​​e as converte de inteiro em HEX.

Artigo relacionado - Arduino String

Artigo relacionado - Arduino Integer