标题: 求指点,求教 [打印本页]

作者: 魅影没肺    时间: 2013-5-30 19:33
标题: 求指点,求教
想要实现的内容是二极管500ms循环亮,数码管每2s变化一个数字。程序如下:#include<reg52.h>
#include<intrins.h>
#define unint unsigned int
#define unchar unsigned char
void delay(unint z);
unchar code table[]={
0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,
0x39,0x5e,0x79,0x71};
unint temp,aa,num;
unchar ;
sbit dula=P2^6;
sbit wela=P2^7;
sbit p1=P1^4;

void main()
{       
        aa=0;
        num=0;
        TMOD=0x01;
        TH0=(65536-50000)/256;
        TL0=(65536-50000)%256;
        EA=1;
        ET0=1;
        TR0=1;
        p1=0;
        dula=1;
        P0=0x3f;
        dula=0;
        wela=1;
        P0=0x00;
        wela=0;
        temp=0x7f;
        P0=temp;
        while(1)
        {
               
                delay(1000);
                temp=_cror_(temp,1);
                P0=temp;

       
        }
}
void delay(unint z)
{
        unint x,y;
        for(x=z;x>0;x--)
                for(y=110;y>0;y--);
}
void time() interrupt 1
{
        TH0=(65536-50000)/256;
        TL0=(65536-50000)%256;
        aa++;
                if(aa==40)
                {        dula=1;
                        num++;
                        P0=table[num];
                        if(num==16)
                        num=0;
                        dula=0;
                        aa=0;
                }
       

                               
}
分开执行没问题,合到一起二极管就不能按顺序执行了。。真心求教!!
作者: admin    时间: 2013-5-30 21:41
这个是在本站的开发板上面运行的?





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