www.pudn.com > jtd.rar > ss.c


#include 
#include 
#define PB XBYTE[0x1B01]		//B口地址 
#define PC XBYTE[0x1B02]		//C口地址 
#define PCT XBYTE[0x1B03]		//控制口地址 
int m,n,i,j,k,c; 
void Delay6(); 
void Delay02(); 
 
 
void main(void) 
{ 
    PCT=0x80;					//8255设置方式0,A、B、C口均为输出口 
    PB=0x40; PC=0x92;			//初始化:点亮四个红灯,绿灯、黄灯全灭 
    //Delay6(); 
    while(1) 
    { 
        PB=0xC0; PC=0x30;			//东西路口绿灯全亮,南北路口红灯全灭 
        //Delay02(); 
        Delay6(); 
        PB=0x40; PC=0x10;			//四个口红灯全亮,绿灯不亮 
        for(m=8;m>0;m--)				//闪烁8次 
        { 
            PB=0x40; PC=0x51;			//东西路口黄灯亮 
            Delay02(); 
            PB=0x40; PC=0x10;			//东西路口黄灯灭 
            Delay02(); 
        } 
        PB=0x40;PC=0x92;			//四个红灯全亮,绿灯不亮 
        Delay02(); 
        PB=0x10; PC=0x86;			//东西路口红灯亮,南北路口绿灯亮 
        Delay6();// Delay6(); 
        PB=0x00; PC=0x82;			//东西路口红灯亮,南北路口绿灯灭 
        for(n=8;n>0;n--)				//闪烁8次 
        { 
            PB=0x20; PC=0x8A;			//南北路口黄灯亮 
            Delay02(); 
            PB=0x00; PC=0x82;			//南北路口黄灯灭 
            Delay02(); 
        } 
        PB=0x40; PC=0x92;			//四个红灯全亮,其它灯全灭 
        Delay02(); 
    }					//循环 
} 
 
void Delay02()					//延时0.2s 
{ 
    for(i=2;i>0;i--) 
    { 
        for(j=200;j>0;j--) 
        { 
            for(k=126;k>0;k--); 
        } 
    } 
} 
void Delay6()					//延时6s 
{ 
    for(c=10;c>0;c--) 
    { 
        Delay02(); 
    } 
}