Moderadores: 51, guest2003, Renie, gpenga
//---------------------------------------------------------------------------
unsigned char hex2bcd(unsigned char hex)
{
unsigned char bcd;
bcd = ((hex / 10) << 4) + (hex % 10);
return(bcd);
}//hex2bcd
//---------------------------------------------------------------------------
unsigned char bcd2hex(unsigned char DataBCD){
return ((DataBCD / 16) * 10 + DataBCD % 16);
}
//---------------------------------------------------------------------------
//------ bcd2ascii ------
unsigned char digito[2];
digito[0] = (bcd >> 4) + 0x30;
digito[1] = ((bcd & 0x0F ) | (unsigned char)0x30);
char BCD2ASCII ( char * dado )
{
char var;
var = *dado;
*dado = (var & 0x0F) + '0';
return ( (var & 0xF0) >> 4 + '0' );
}
void main ( void )
{
char dezenas, dado_BCD;
dado_BCD = 0x78;
dezenas = BCD2ASCII ( &dado_BCD );
// UNIDADES EM dado_BCD; DEZENAS EM dezenas;
while(1);
}
Usuários navegando neste fórum: Nenhum usuário registrado e 1 visitante