كود:
char text[8];
char x,i,u;
char flag_sw1=0,flag_sw2=0,flag_sw3=0,flag_sw4=0;
unsigned int time_sw1,time_sw2,time_sw3,time_sw4;
void InitTimer0()
{
OPTION_REG = 0x84;
TMR0 = 100;
INTCON = 0xA0;
}
void Interrupt()
{
if (TMR0IF_bit)
{
TMR0IF_bit = 0;
TMR0 = 100;
for(x=0;x<8;x++){
portb.f0=text[x];
portb.f1=0;portb.f1=1;}
portb.f2=0;portb.f2=1;
if(flag_sw1==1)time_sw1++;
if(flag_sw2==1)time_sw2++;
if(flag_sw3==1)time_sw3++;
}
}
void main()
{
InitTimer0();
trisb=0;
portb=0;
trisa=0xff;
porta=0;
i=0;
while(1){
if(porta.f0==1)flag_sw1=1;
if(porta.f1==1)flag_sw2=1;
if(porta.f2==1)flag_sw3=1;
if(time_sw1>40){time_sw1=0;flag_sw1=0;i=~i;text[0]=i;}
if(time_sw2>40){time_sw2=0;flag_sw2=0;i=~i;text[1]=i;}
if(time_sw3>40){time_sw3=0;flag_sw3=0;;i=~i;text[2]=i;}
}}