Ir ao conteúdo

IntToString


PatriciaSouza

Posts recomendados

Postado

Estou aprendendo, ainda, o uso de C em Microcontroladores. Me desculpe pela pergunta boba, mas se puderem ajudar, agradeceria.

Tenho que colocar uma int no LCD, referente a uma variável qualquer e não consigo fazê-la, para passar de int a string.

Gostaria que vocês pudessem me ajudar com o uso do comando intToString que ainda não me familiarizei..

(pic 16f877a)

___________________________________________________________

:angry: Rumo ao apredizado:lol:

Postado

Eu tive este mesmo problema mas para outro microcontrolador e ele não tinha função printf, o msp430.

Resolvi fazendo o seguinte, usando a função itoa que é nativa do C.

e para mostrar floats eu usei a seguinte lógica

A=10.14

se você colocar

B=(int)A , significa uma conversão forçada então B será o valor inteiro de A, no caso 10.

Daí fiz assim.

C=(A*100)-B*100 //1014-1000=14 que é a outra parte da fração

converti os 2 inteiros para string e concatenei elas com um ponto no meio

Postado
caso esteja usando o microC se faz assim a conversão


char txt[7];
char numero;

.....

inttostr(numero, txt); // converte

lcd_out(1, 1, txt); // mostra no display

Exatamente o que consta no help, a função do vetor neste caso seria somente para indicar o numero de "casas" que um número ocuparia? (Por exemplo, 100= três algarismos)

neto_e_khelen, infelizmente o MikroC não tem printf! :( (E até fiquei a pensar se com um simples comando ele mostraria uma int no display, já que esse display chato só gosta de string!!

001gruder001 muito legal sua solução através da lógica! Um dia terei (nãaao) terei uma lógica tão surpreendente assim!!

Postado
Exatamente o que consta no help, a função do vetor neste caso seria somente para indicar o numero de "casas" que um número ocuparia? (Por exemplo, 100= três algarismos)

não, esse vetor vai ter a quantidade de nmeros dependente do tipo de variavel e não da quantidade de algarismos do numero

para int o vetor deve ter 7 posições para char 4 etc.....

ex para char


char numero;
char txt[4];

bytetostr(numero, txt);

ex para int


int numero;
char txt[7];

inttostr(numero, txt);

e repare que a conversão não se limita a INTtostr, caso esteja convertendo variavel tipo char deve ser BYTEtostr, se float FLOATtostr etc........

neto_e_khelen, infelizmente o MikroC não tem printf! (E até fiquei a pensar se com um simples comando ele mostraria uma int no display, já que esse display chato só gosta de string!!

esse comando mostra no display no microC


lcd_out(1, 1, txt);

funcionamento

lcd_out //significa que você esta enviando uma informação para o display mostrar

(1, 1, txt); // o primeiro 1 significa que a mensagem aparecera na linha 1, o segundo significa que aparecera na coluna 1 e o txt é a informação que vai aparecer, que no caso é a informação que esta contida no vetor txt

abrçs

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!