找回密码
 立即注册

QQ登录

只需一步,快速开始

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

哪位大佬可以帮忙看一下这个怎么解决吗C(33)实际参数太少,C(33)不同的参数长度。谢谢

[复制链接]
跳转到指定楼层
楼主
ID:870438 发表于 2020-12-29 18:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 1529689548 于 2020-12-29 18:09 编辑

#include<reg52.h>           
#define uchar unsigned char
#define uint unsigned int
sbit key1=P3^4;
sbit key2=P3^5;
sbit key3=P3^6;
sbit key4=P3^7;
uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7c,0x07,0x7f,0x67};
uchar code table2[]={0xbf,0x86,0xdb,0xcf,0xe6,0xed,0xfc,0x87,0xff,0xe7};
void delayms(uint);
void display(uchar,uchar,uchar,uchar);
void keyscan();
uchar num1,num2,bai,shi,ge;
uint num;

void main()
{
TMOD=0x11;
TH0=(65536-45872)/256;
TL0=(65536-45872)%256;
TH1=(65536-45872)/256;
TL1=(65536-45872)%256;
EA=1;
ET0=1;
ET1=0;
while(1)
{
keyscan();
bai=num/100;
shi=(num-100*bai)/10;
ge=num-100*bai-shi*10;

display(bai,shi,ge);
}
}
void display(uchar bai,uchar shi,uchar ge)
{
     P1=0xfe;
     P2=table[bai];
     delayms(10);
     P1=0xff;
     P1=0xfd;
     P2=table2[shi];
     delayms(10);
     P1=0xff;
     P1=0xfb;
     P2=table[ge];
     delayms(10);
     P1=0xff;
}
     void delayms(uint xms)
{
     uint i,j;
     for(i=xms;i>0;i--)
           for(j=110;j>0;j--);
}
void keyscan()
{
  if(key1==0)
        {
           delayms(10);
           if(key1==0)
               {
                         while(!key1)
                             {

                                 TR1=1;
                                 num=0;
                                 TR1=0;
                              }
                }
           }
  if(key2==0)
        {
           delayms(10);
           if(key2==0)
               {
                         while(!key2);
                                 TR0=0;
                                 TR1=~TR1;
               }
         }
      if(key3==0)
           {
                while(!key3);
                TR0=0;
                TR1=1;
                num=999;
                TR1=0;
                TR0=~TR0;//TR0=1;
             }
}

void T0_time()interrupt 1
{TH0=(65536-45872)/256;
     TL0=(65536-45872)%256;
     num2++;
     if(num2==2)
        {  num2=0;
           num1++;
        }
     if(num1==10)
     num1=0;
     if(num==0)
     num=999;
         num--;
}
void T1_time()interrupt 3
{    TH1=(65536-45872)/256;
     TL1=(65536-45872)%256;
     num2++;
     if(num2==2)
        {  num2=0;
           num1++;
        if(num1==10)
           num1=0;
           num++;
        if(num==999);
         num=0;
        }
}


分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:213173 发表于 2020-12-29 20:11 | 只看该作者
void display(uchar,uchar,uchar,uchar);声明函数有4个参数
void display(uchar bai,uchar shi,uchar ge)函数体只有3个参数
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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