[51单片机] 数码管显示老报错,大神们给看下

[复制链接]
1475|4
 楼主| 咸鱼之身 发表于 2018-6-1 11:42 | 显示全部楼层 |阅读模式
# include<reg52.h>
# define uchar unsigned char
# define uint unsigned int
       
sbit key1 = P3^2;
sbit key2 = P3^3;
sbit smg0 = P2^0;
sbit smg1 = P2^1;
sbit smg2 = P2^2;
sbit smg3 = P2^3;
uchar i = 0;

void delay_ms(uint ms)
{
        uint x,y;
        for(x=ms;x>0;x--)
                for(y=120;y>0;y--);
}

uchar code table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,
                                        0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e};

void display()
{
        smg1 = 1;
        smg2 = 1;
        smg3 = 1;
        if (key1 == 0)
        {
                for(i=0;i<16;i++)
                {
                        smg0 = 0;
                        P0 = table[i];
                        delay_ms(1000);

                }

       
}

void main()
{
        while(1)
        {
                display();
               
        }
}
 楼主| 咸鱼之身 发表于 2018-6-1 11:43 | 显示全部楼层

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
Cjy_JDxy 发表于 2018-6-1 11:46 | 显示全部楼层
void display()
{
        smg1 = 1;
        smg2 = 1;
        smg3 = 1;
        if (key1 == 0)
        {
                for(i=0;i<16;i++)
                {
                        smg0 = 0;
                        P0 = table[i];
                        delay_ms(1000);

                }

        
}
少了一个大括号
 楼主| 咸鱼之身 发表于 2018-6-1 14:29 | 显示全部楼层
Cjy_JDxy 发表于 2018-6-1 11:46
void display()
{
        smg1 = 1;

哇,谢谢啊 我大意了!
gx_huang 发表于 2018-6-1 14:45 | 显示全部楼层
这个和大意无关,人工输入难免错误。
如何根据提示,找出可能的问题,方**的方法。
有时候,由于中文输入某个字符,但是又不显示出来,也会搞你一会的。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

6

主题

82

帖子

2

粉丝
快速回复 在线客服 返回列表 返回顶部