Converter decimal para String (tabela ASCII)

Eu estou usando um módulo de micro SD e quero ler os valores que estão escritos no arquivo. Os valorem vem em decimal e queria converter em uma string e juntar no final para formar uma palavra.
Esse é o meu código:

#include <SPI.h>
#include <SD.h>

#define CS 6 // Porta SD

File arquivo;

String decimal;
String conversao ;

 void setup() {   
    Serial.begin(9600);
    if(!SD.begin(CS)){ 
  Serial.println("Erro");
}else{
  Serial.println("Certo");

  arquivo = SD.open("teste.txt");
  }


for(int i = 0; i != 5;i++){

decimal += arquivo.read();
Serial.println(decimal);
Serial.println("---------------");
delay(100);
 }

}
void loop() {
}

e qual é a sua pergunta ?

Esta línea lee caracteres de un archivo y agrega sus códigos. No creo que esto sea lo que querías.

Não sei como converte de um valor decimal para uma string. Por exemplo, se eu tiver na variável o valor "97" e quero passar o caractere que corresponde ao valor "97" no caso o "a". (da tabela ascii)
No caso eu recebo cada caracter de cada vez em decimal, e queria converter cada um e juntar em uma string.

Você pode usar atoi() ou strtol(), mas como você possui uma String, também pode chamar decimal.toInt() .

Sim, porem quando em imprimo no serial sai em decimal, eu quero que o valor seja convertido, no arquivo esta escrito: teste;
image

Acredito que não tenha entendido minha pergunta, eu consigo transformar de DEC para HEX porem não consigo para Chr.
Vou te dar um exemplo:
image
Na imagem da tabela ascii tem o valor "64" em DEC, e convertendo em Chr fica o caracter "@", essa é minha duvida, como eu transformo "64" em "@" ?

byte x = 64;
Serial.print(x);        // ==> 64
Serial.print((char) x); // ==> @
Serial.write(x);        // ==> @

Muito obrigado, isso é exatamente o que eu preciso.

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.