hola amigos estoy haciendo una pequeña prueba de un tablero de que contabilizara 24 segundos de forma descendente bueno he hecho algo pero no me resulto como lo esperaba no se si aya alguna forma de hacer que mientras muestro las unidades tambien muestre el numero de las decenas por ejemplo arranco en 24 pero solo se enciende el 2 en un diplay mientras que el otro esta apagado como podria hacer a mi se me ocurre usar otro pic mas grande pero me han dado el 16f84a ojala me puedan apoyar adjunto mi codigo y mi diagrama en proteus
#include <16f84a.h>
#FUSES xt,NOWDT,NOPROTECT,NOPUT //funcionamiento
#use delay (clock=4000000)
#use fast_io(a)
#use fast_io(b)
byte CONST seg_u[10]={0x5b,0x06,0x3f};
byte CONST seg_d[10]={0x66,0x4f,0x5b,0x06,0x3f};
byte CONST seg_d2[10]={0x67,0x7f,0x07,0x7d,0x6d,0x66,0x4f,0x5b,0x06,0x3f};
void main()
{
//inicializacion
byte unid=0,dec=0;
set_tris_a(0b00000000);
set_tris_b(0x00);
output_a(0);
output_b(0);
//procesp
for(;;)
{
for(dec=0;dec<3;dec++)
{
output_a(0b00001000);
output_b(seg_u[dec]);
delay_ms(500);
if(seg_u[dec]==0x5b)
{
for(unid=0;unid<5;unid++)
{
output_a(0b00000100);
output_b(seg_d[unid]);
delay_ms(500);
}
}
else
if(seg_u[dec]==0x06)
{
for(unid=0;unid<10;unid++)
{
output_a(0b00000100);
output_b(seg_d2[unid]);
delay_ms(500);
}
}
}
}
}