السلام عليكم
ودى اخى طريقة اخرى لو حابب تستخدم اطراف اقل من بورت B
[IMG]

[/IMG]
كود:
#define dat portb.f1
#define shift portb.f0=1;portb.f0=0;
#define st portb.f2=1;portb.f2=0;
const char gg[]={63,6,91,79,102,109,125,7,127,111};
char x,y,k,i;
void main() {
portb=0;
trisb=0;
while(1)
{
for(x=0;x<100;x++)
{
for(i=0;i<200;i++)
{
k=(gg[x%10]+128);
for(y=0;y<8;y++)
{
dat=k/128;
shift
k=k<<1;
}
st
delay_ms(2);
k=gg[x/10];
dat=0;
for(y=0;y<8;y++)
{
shift
}
st
for(y=0;y<8;y++)
{
dat=k/128;
shift
k=k<<1;
}
st
delay_ms(2);
}
}
}
}