标题: 请高手指教 [打印本页]

作者: zxf88188    时间: 2015-3-6 11:37
标题: 请高手指教
    这是在论坛下载的流行拖尾程序,稍作修改后p1口和p0口同步运行,想要使p1口和p0口循环运行,(p0-p1-p0-p1),  不知程序怎么写了,请那位高手指教,深表感谢!

#include<reg52.h>
#define uint unsigned int
#define uchar unsigned char
void delay1ms(unsignet int count)
uchar abit=16; //流到哪位
uchar atimer0_n;
uchar code abit8[9]={1,2,4,8,16,32,64,128,0};
uchar nn;
char a,b,c,d;
main()
{        TMOD = 0x11;       
        TL0 = 0x00;                //2.5ms
        TH0 = 0xF7;       
        TF0 = 0;               
        TR0 = 1;       
        EA=1;ET0=1;
        while(1)
        {
         a=abit;
         if(a>7||a<0)
                a=8;
         b=abit-1;
         if(b>7||b<0)
                 b=8;
         c=abit-2;
         if(c>7||c<0)
                 c=8;
                 d=abit-3;
         if(d>7||d<0)
                 d=8;                       
        atimer0_n++;
        if(atimer0_n==355)
        atimer0_n=0;
        if(atimer0_n<5)
                P0=0x00-abit8[a];
        if(atimer0_n<40)
                P0=0x00-abit8[b];
        if(atimer0_n<150)
                P0=0x00-abit8[c];       
        if(atimer0_n<355)
                P0=0x00-abit8[d];
                P1=~0x00-abit8[a];
        if(atimer0_n<40)
                P1=~0x00-abit8[b];
        if(atimer0_n<150)
                P1=~0x00-abit8[c];       
        if(atimer0_n<355)
                P1=~0x00-abit8[d];                               
        }                       
                                       
        }

atimer0 () interrupt 1
{       
        TL0 = 0x00;                //50ms
        TH0 = 0x4C;
        nn++;
        if(nn==2)
        {
                nn=0;abit--;
                 if(abit==0)
                 abit=16;
        }
       


作者: zxf88188    时间: 2015-3-7 16:58
解决了,是括号位置错了




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1