Ir ao conteúdo

Posts recomendados

Postado

Ola amigos sou novo em programação estou tentando fazer um programa em c para o pic estou usando compilador ccs um pic 16f877a e um lcd .

problema e o seguinte e fazer o valor de uma variavel que esta em decimal e que vai ser incrementada por um botão ,de 0 ate 99 ser mostrada no display, o que não esta acontecendo, ao invés de me mostrar o valor decimal ele me mostra ascii.

ex.

int passo=65; //variavel a ser incrementada valor decimal

o display me mostra assim

passo A

e conforme vou incrementando a variavel ele vai me mostrando caracteres em ascii queria saber como resolver isto :confused:

Postado

Caro magnoedu

Quando eu utilizo o LCD no compilador MICRO-C, faço da seguinte maneira:

//inicializo LCD e seto todos os devidos pinos.

//crio uma variavel para receber o valor em STRING do suposto INT

//sendo o INT uma variavel de 16 bits, seu maior valor sera

//655535, algo do tipo, nao me lembro.

//A variavel string vai receber 6 caracteres do INT e precisa de mais um "nulo" para

//"concluir o tratamento"

unsigned char ValorReceberString[7];

IntToStr(passo,&ValorReceberString[0]);

//agora voce mostra no LCD ValorReceberString

Att, denadai

  • 2 meses depois...
Postado

Para números de zero a nove é so somar ao seu valor 48 em decimal.

Mas para números maiores que nove, o valor tem que ser convertido para BCD e depois somado 48 para cada digito.

Muito complicado. O modo acima é o mais viável. Converte um inteiro para String, aí o Lcd mostra sem problema.

( http://py1acb.blogspot.com/ ).

  • 5 anos depois...
  • Membro VIP
Postado

Boa Leo!

Só pra constar, a gulosa função print vai comer uma boa parte da memória do amigo ou melhor, da flash do mc. Como não se sabe qual é e isto não está em pauta, então tudo bem.

Postado
5 minutos atrás, Isadora Ferraz disse:

Boa Leo!

Só pra constar, a gulosa função print vai comer uma boa parte da memória do amigo ou melhor, da flash do mc. Como não se sabe qual é e isto não está em pauta, então tudo bem.

 

De facto esse um dado importante, essas funções consomem boa memória. Mas resolve rapidamente o problema.

  • Curtir 1
Visitante
Este tópico está impedido de receber 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...