Arduino Char para Int

Ammar Ali 12 outubro 2023
  1. Converta char em int usando o método simples em Arduino
  2. Converta char em int usando a função toInt() no Arduino
  3. Converta char em int usando a função Serial.parseInt() em Arduino
Arduino Char para Int

Este tutorial irá discutir três métodos para converter um char em um int. O primeiro método é o método simples em que podemos converter apenas um char de cada vez. O segundo método é usar a função toInt() e o terceiro é usar a função Serial.parseInt().

Converta char em int usando o método simples em Arduino

Este método só pode converter um único char em um int. Você precisa subtrair um zero do tipo char de char para convertê-lo em um int.

void loop() {
  char someChar = '2';  // variable to store char
  int someInt = someChar - '0';
}

No código acima, someChar é uma variável do tipo char para armazenar o char a ser convertido. Você pode alterar seu valor para a variável char fornecida. someInt é uma variável do tipo int para armazenar o resultado da conversão. Se a variável fornecida não for um único char, use os métodos abaixo.

Converta char em int usando a função toInt() no Arduino

Neste método, primeiro, você converterá o char fornecido em uma string e, em seguida, usará a função toInt() para converter a string em um int.

void loop() {
  char someChar = '3';
  String stringOne =
      String(someChar);  // converting a constant char into a String
  stringOne.toInt();
}

No código acima, someChar é uma variável do tipo char para armazenar o char fornecido. stringOne é uma variável do tipo String. Se a string não começar com um número válido, a conversão não será possível e um zero será retornado. Verifique o link para mais informações.

Converta char em int usando a função Serial.parseInt() em Arduino

Você pode usar este método se estiver lendo a entrada de uma porta serial de um Arduino e quiser converter a entrada recebida em um Int.

void loop() {
  if (Serial.available() > 0) {
    int valA = Serial.parseInt();
  }
}

A análise será interrompida se nenhum valor for lido ou se um não dígito for lido. Se nenhuma entrada válida for lida até o tempo limite, então 0 será retornado. Veja Serial.setTimeout() para definir o tempo limite do serial. Verifique este link para obter mais informações sobre a função Serial.parseInt().

Autor: Ammar Ali
Ammar Ali avatar Ammar Ali avatar

Hello! I am Ammar Ali, a programmer here to learn from experience, people, and docs, and create interesting and useful programming content. I mostly create content about Python, Matlab, and Microcontrollers like Arduino and PIC.

LinkedIn Facebook

Artigo relacionado - Arduino Integer