标题: 请教知识关于数码管 [打印本页]

作者: 835877741    时间: 2017-10-3 22:48
标题: 请教知识关于数码管
为什么我编写好程序,可是我的数码管只能显示1这个数字,显示不了其他数字。
我的程序:
#include <reg52.h>
sbit LSA=P2^2;
sbit LSB=P2^3;
sbit LSC=P2^4;
typedef unsigned char u8;
u8 erjiguan []={    0x3F  ,0x5E, 0x06 , 0x5b , 0x4f , 0x66 , 0x6d,
                     0x7d , 0x07 , 0x7f  , 0x6f , 0x77 , 0x7c ,
                     0x39 ,  0x79 , 0x71  };



void main()
{
        u8 i=1000;
   LSA=0;
        LSB=0;
        LSC=0;
        P0=erjiguan[0];

        while(1);

       
}

求教 谢谢各路大神

作者: GOD丿小男孩    时间: 2017-10-4 00:11
手机打不了代码,while函数应该包括main函数的全部,另外你数组里面放个0当然是只显示1了你要他显示其它的得加个for循环来改变数组里的变量
作者: yzwzfyz    时间: 2017-10-4 00:47
while(1); 是什么意思呢?
作者: dart86    时间: 2017-10-5 09:23
while(1)是一个死循环。因为条件1永远满足,程序永远在循环体中间循环。
作者: dianzidianlu    时间: 2017-10-6 15:42
应该加一个循环,你这个程序执行到while之后就一直在while,不会再运行了
作者: zqy181818    时间: 2017-10-6 19:33
void main()
{
         u8 i=1000;
    LSA=0;
         LSB=0;
         LSC=0;
         P0=erjiguan[0];

         while(1);

         
}

作者: zqy181818    时间: 2017-10-6 19:45
void main()
{
         u8 i=0;
    LSA=0;
         LSB=0;
         LSC=0;
         P0=erjiguan[0];
while(1)
{
for(i=0;i<17;i++)
P0=erjiguan[i];
}
}
改成这样试试。
作者: 春风十里吹    时间: 2019-2-25 03:42
while同for 差不多,给条件,执行任务




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