普中开源电子分享网

 找回密码
 立即注册
搜索
查看: 6292|回复: 2

[已解决] 单个数码管依次循环显示0-F

[复制链接]

1

主题

1

帖子

7

积分

新手上路

Rank: 1

积分
7
发表于 2021-1-15 09:20:58 | 显示全部楼层 |阅读模式
1金钱
大佬们麻烦帮我看下程序哪里出了问题,楼主是刚学单片机一天的小白,想秃了头数码管还是只显示0

#include "reg52.h"
#include<intrins.h>
typedef unsigned int u16;
typedef unsigned char u8;
u8 code smgduan[17]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
void delay(u16 i)
{
        while(i--);
}
void main()
{       
        u8 i;
        P0=~smgduan[0];
        delay(50000);
        while(1);
        {
                for(i=0;i<17;i++);
                {
                        P0=~smgduan[i];
                        delay(50000);
                }
        }
}

最佳答案

把while(1)后面的分号去掉 把for后面的分号去掉 就好了

回复

使用道具 举报

20

主题

1344

帖子

8379

积分

论坛元老

Rank: 8Rank: 8

积分
8379
发表于 2021-1-17 10:15:29 | 显示全部楼层
把while(1)后面的分号去掉
把for后面的分号去掉
就好了
回复

使用道具 举报

20

主题

1344

帖子

8379

积分

论坛元老

Rank: 8Rank: 8

积分
8379
发表于 2021-1-18 11:02:42 | 显示全部楼层
把while(1)后面的分号去掉
把for后面的分号去掉
就好了
回复

使用道具 举报

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

本版积分规则

关闭

站长推荐上一条 /1 下一条

Archiver|手机版|小黑屋|普中开源电子分享网 粤ICP备16123577号-2

GMT+8, 2024-4-25 22:54 , Processed in 0.101656 second(s), 32 queries .

Powered by 论坛搭建 X3.4

Copyright © 2001-2021, Tencent Cloud.

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