Moderadores: andre_luis, 51, guest2003, Renie
unsigned int cont;
cont = 0;
cont = (unsigned int)TMR1H;
cont = cont << 8;
cont = cont + (unsigned int)TMR1L;

cont=((unsigned int)(TMR1H <<8) & 0XFF00) | (TMR1L & 0XFF); cont = (TMR1H << 8);
cont &= 0xFF00; // Talvez não precise, se o deslocamento for com zeros a direita.
cont += TMR1L;
andre_teprom escreveu:Seguindo o raciocínio do xultz, tenta assim :
- Código: Selecionar todos
cont=((unsigned int)(TMR1H <<8) & 0XFF00) | (TMR1L & 0XFF);
Outra opção, é forçar tudo para unsigned int, e depois ir retirando o cast aos poucos para saber onde estava o erro.
+++

lellis escreveu:no hitech fiz com sucesso com o ad sem esta idiotice de casting
ad=ADRESH*256+ADRESL
talvez voce também possa fazê-lo no teu
cont=TMR1H*256+TMR1L
não poderia ser + simples e entendível





Usuários navegando neste fórum: Bing [Bot] e 1 visitante