找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1507|回复: 8
打印 上一主题 下一主题
收起左侧

请教知识关于数码管

[复制链接]
跳转到指定楼层
楼主
ID:237181 发表于 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);

       
}

求教 谢谢各路大神
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:232280 发表于 2017-10-4 00:11 来自手机 | 只看该作者
手机打不了代码,while函数应该包括main函数的全部,另外你数组里面放个0当然是只显示1了你要他显示其它的得加个for循环来改变数组里的变量
回复

使用道具 举报

板凳
ID:123289 发表于 2017-10-4 00:47 | 只看该作者
while(1); 是什么意思呢?
回复

使用道具 举报

地板
ID:236841 发表于 2017-10-5 09:23 | 只看该作者
while(1)是一个死循环。因为条件1永远满足,程序永远在循环体中间循环。
回复

使用道具 举报

5#
ID:227577 发表于 2017-10-6 15:42 | 只看该作者
应该加一个循环,你这个程序执行到while之后就一直在while,不会再运行了
回复

使用道具 举报

6#
ID:130231 发表于 2017-10-6 19:33 | 只看该作者
void main()
{
         u8 i=1000;
    LSA=0;
         LSB=0;
         LSC=0;
         P0=erjiguan[0];

         while(1);

         
}
回复

使用道具 举报

7#
ID:130231 发表于 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];
}
}
改成这样试试。
回复

使用道具 举报

8#
ID:478073 发表于 2019-2-25 03:42 | 只看该作者
while同for 差不多,给条件,执行任务

评分

参与人数 1黑币 +10 收起 理由
jinsheng7533967 + 10 回帖助人的奖励!

查看全部评分

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表