请选择 进入手机版 | 继续访问电脑版

普中开源电子分享网

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

我自己矩阵显示数字的代码运行不了

[复制链接]

1

主题

1

帖子

3

积分

新手上路

Rank: 1

积分
3
发表于 2021-7-10 13:38:22 | 显示全部楼层 |阅读模式
1金钱
#include "reg52.h"
typedef unsigned char u8;
typedef unsigned int u16;

#define DIG P0
#define KEY P1
char a=0;
u8 x;
u8 y;
u16 s=x*y-1;

u8 code fuhao[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
void delay(u16 i)
{
   while(i--);
}
void juzhen()
{
   KEY=0x0f;
   if(KEY!=0x0f)
   {
        delay(1000);
        if(KEY!=0x0f)
         {
         switch(KEY)
          {
           case(0x07):y=1;break;
           case(0x0b):y=2;break;
           case(0x0d):y=3;break;
           case(0x0e):y=4;break;
          }
          KEY=0xf0;
          switch(KEY)
          {
           case(0x70):x=1;break;
           case(0xb0):x=2;break;
           case(0xd0):x=3;break;
           case(0xe0):x=4;break;
          }
          while((a<50)&&(KEY!=0xf0))
          {
           delay(1000);
           a++;
          }
         }
   }
}
void main()
{
               
                         while(1);
                         {
                          juzhen();
                          DIG=fuhao[s];
                         }
运行错误MAIN.C(10): error C247: non-address/-constant initializer

我知道答案 本帖寻求最佳答案回答被采纳后将获得系统奖励10 金钱 , 目前已有1人回答

回复

使用道具 举报

3

主题

12

帖子

67

积分

注册会员

Rank: 2

积分
67
发表于 2021-7-28 20:58:00 | 显示全部楼层
#include "reg52.h" typedef unsigned char u8; typedef unsigned int u16;  #define DIG P0 #define KEY P1 char a=0; u8 x; u8 y; u16 s;  u8 code fuhao[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};  void delay(u16 i) {    while(i--); } void juzhen() {    KEY=0x0f;    if(KEY!=0x0f)    {         delay(1000);         if(KEY!=0x0f)          {          switch(KEY)           {            case(0x07):y=1;break;            case(0x0b):y=2;break;            case(0x0d):y=3;break;            case(0x0e):y=4;break;           }           KEY=0xf0;           switch(KEY)           {            case(0x70):x=1;break;            case(0xb0):x=2;break;            case(0xd0):x=3;break;            case(0xe0):x=4;break;           }           while((a<50)&&(KEY!=0xf0))           {            delay(1000);            a++;           }          }    } } void main() {                    while(1)                          {                           juzhen();                           DIG=fuhao[s=x*y-1];                          }                                                  } //运行错误MAIN.C(10): error C247: non-address/-constant initializer//改成这样就不会报错,但我没有实验能不能用
回复

使用道具 举报

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

本版积分规则

关闭

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

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

GMT+8, 2024-3-29 22:44 , Processed in 0.082550 second(s), 33 queries .

Powered by 论坛搭建 X3.4

Copyright © 2001-2021, Tencent Cloud.

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