Moderadores: andre_luis, 51, guest2003, Renie
#DEFINE DISPL1 Pin_b4
#DEFINE DISPL2 Pin_b5
byte const tabela[]={ 0b00110000,//0
0b00110001,//1
0b00110010,//2
0b00110011,//3
0b00110100,//4
0b00110101,//5
0b00110110,//6
0b00110111,//7
0b00111000,//8
0b00111001,};//9
void main()
{
int contagem;
contagem = 0;
output_high(DISPL1);// ligado ao Strobe do 1º display
output_high(DISPL2);// ligado ao Strobe do 2º display
while(true)
{
contagem ++;
delay_ms(200);
if(contagem == 25)
{
output_b(tabela[contagem/10]);
output_low(DISPL1);
output_high(DISPL1);
output_b(tabela[contagem%10]);
output_low(DISPL2);
output_high(DISPL2);
contagem = 0;
}
}
}
#define HEX2BCD(hex) ((((hex) / 10) << 4) + ((hex) % 10))
PORTB=HEX2BCD(contagem);
#DEFINE DISPL1 Pin_b4
#DEFINE DISPL2 Pin_b5
byte const tabela[]={ 0b11110000,//0
0b11110001,//1
0b11110010,//2
0b11110011,//3
0b11110100,//4
0b11110101,//5
0b11110110,//6
0b11110111,//7
0b11111000,//8
0b11111001,};//9
void main()
{
int contagem;
contagem = 0;
//Coloquei esta função para inicializar os 4511.
output_b(0x0f);
output_low(DISPL1);// ligado ao Strobe do 1º display
output_low(DISPL2);// ligado ao Strobe do 2º display
output_high(DISPL1);// ligado ao Strobe do 1º display
output_high(DISPL2);// ligado ao Strobe do 2º display
while(true)
{
output_b(tabela[contagem/10]);
output_low(DISPL1);
output_high(DISPL1);
output_b(tabela[contagem%10]);
output_low(DISPL2);
output_high(DISPL2);
delay_ms(200);
contagem ++;
if (contagem>25) contagem=0;
}
}
#define HEX2BCD(hex) ((((hex) / 10) << 4) + ((hex) % 10))
void main()
{
int contagem;
contagem = 0;
while(true)
{
output_b(HEX2BCD(contagem));
delay_ms(200);
contagem ++;
if (contagem>25) contagem=0;
}
}
int dado;
char cen,dez,un;
dado=567;
cen=dado/100; //5
dez=(dado-cen*100)/10; //6
un=dado-cen*100-dez*10; //7
Usuários navegando neste fórum: Nenhum usuário registrado e 1 visitante