a conversão de (char) para (int) está dando valores diferentes

estou fazendo um projeto que usa o teclado matricial 4x4 para Arduíno, e a biblioteca <Keypad.h> 
 

a leitura das teclas apertadas é dada em (char), e dos 3 codigos sugeridos :


value = atoi(inChar);

value = int(inChar);

value = (int)inChar;

apenas o codigo (value = int(inChar) realmente deu algum valor enquanto os outros  só davam zero.

e na hora de converter de char para int acontece o seguinte: 

se apertar numero 0 gera o valor = 48
se apertar numero 1 gera o valor = 49
se apertar numero 2 gera o valor = 50
se apertar numero 3 gera o valor = 51
se apertar numero 4 gera o valor = 52
se apertar numero 5 gera o valor = 53
se apertar numero 6 gera o valor = 54
se apertar numero 7 gera o valor = 55
se apertar numero 8 gera o valor = 56
se apertar numero 9 gera o valor = 57


se apertar numero * gera o valor = 42
se apertar numero # gera o valor = 35

se apertar numero A gera o valor = 65
se apertar numero B gera o valor = 66
se apertar numero C gera o valor = 67
se apertar numero D gera o valor = 68

CÓDIGO E BIBLIOTECA UTILIZADAS ENTÃO EM ANEXO




Exibições: 216

Anexos

As respostas para este tópico estão encerradas.

Respostas a este tópico

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço