找回密码
 立即注册

QQ登录

只需一步,快速开始

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

编译错误,求大神帮忙调试程序

[复制链接]
回帖奖励 1 黑币 回复本帖可获得 1 黑币奖励! 每人限 1 次
跳转到指定楼层
楼主

请问出现这种一般是哪里出错了
下面是程序
那位大神帮帮忙运行修改一下
谢谢了

  1. #include<reg51.h>
  2. sbit k1=P1^0;
  3. sbit k2=P1^1;
  4. sbit k3=P1^2;
  5. sbit k4=P1^3;
  6. sbit k5=P1^4;
  7. sbit k6=P1^5;
  8. unsigned char DSY_CODE[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82};
  9. void delayms(unsigned int ms)
  10. {
  11.   unsigned int i,j;
  12.   for(i=0;i<ms;i++)
  13.    for(j=0;j<1141;j++);
  14. }
  15. void main()
  16. {
  17.   unsigned char key,i;
  18.    TMOD=0x01;
  19.    TH0=0xff;
  20.    TL0=0xff;

  21.       while(1)
  22.      {
  23.         key=P1;
  24.         if(key==0xff)
  25.       {
  26.          for(i=1;i<7;i++)
  27.           {
  28.              switch(i)
  29.             {
  30.               case 1:P2=0x01;break;
  31.               case 2:P2=0x02;break;
  32.               case 3:P2=0x04;break;
  33.               case 4:P2=0x08;break;
  34.               case 5:P2=0x10;break;
  35.               case 6:P2=0x20;break;
  36.               default : P2=0x01;break;
  37.              }
  38.              P0=DSY_CODE[i];
  39.              delayms(10);
  40.             }
  41.           }
  42.          if(key!=0xff)
  43.    {EA=1;
  44.     ET0=1;
  45.     TR0=1;
  46.     }
  47.   }
  48. }

  49. void Tim_T0() interrupt 1 using 0
  50.   {
  51.      if(k1==0&&k2!=0&&k3!=0&&k4!=0&&k5!=0&&k6!=0)
  52.    {
  53.       P2=0xff;
  54.       P0=DSY_CODE[1];
  55.    }
  56.    if(k2==0&&k1!=0&&k3!=0&&k4!=0&&k5!=0&&k6!=0)
  57.    {
  58.        P2=0xff;
  59.       P0=DSY_CODE[2];
  60.     }

  61.   if(k3==0&&k1!=0&&k2!=0&&k4!=0&&k5!=0&&k6!=0)
  62.    {
  63.       P2=0xff;
  64.       P0=DSY_CODE[3];
  65.     }
  66.     if(k4==0&&k1!=0&&k2!=0&&k3!=0&&k5!=0&&k6!=0)
  67.    {
  68.       P2=0xff;
  69.       P0=DSY_CODE[4];
  70.     }
  71.   if(k1!=0&&k6!=0&&k2!=0&&k3!=0&&k4!=0&&k5==0)
  72.    {
  73.       P2=0xff;
  74.       P0=DSY_CODE[5];
  75.    
  76.     }
  77. if (k6==0&&k1!=0&&k2!=0&&k3!=0&&k4!=0&&k5!=0)
  78.    {
  79.       P2=0xff;
  80.       P0=DSY_CODE[6];
  81.     }
  82. }
复制代码


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

使用道具 举报

沙发
ID:373620 发表于 2018-7-18 22:10 | 只看该作者
各位大神救救我吧
回复

使用道具 举报

板凳
ID:164602 发表于 2018-7-19 08:35 | 只看该作者
我的KEIL 4编译没有错误、没有警告。
看看你的编译软件有什么问题。
回复

使用道具 举报

地板
ID:373620 发表于 2018-7-19 10:36 | 只看该作者
HC6800-ES-V2.0 发表于 2018-7-19 08:35
我的KEIL 4编译没有错误、没有警告。
看看你的编译软件有什么问题。

我是用protues8编译的,,那我现在试试用keil4
回复

使用道具 举报

5#
ID:374732 发表于 2018-7-19 11:59 | 只看该作者
郁郁七天 发表于 2018-7-19 10:36
我是用protues8编译的,,那我现在试试用keil4

我用 keil5 試了也没問題
回复

使用道具 举报

6#
ID:342822 发表于 2018-7-19 13:05 | 只看该作者
我是用protues8。6编译,没问题~~~正常运行
回复

使用道具 举报

7#
ID:373620 发表于 2018-7-19 13:21 | 只看该作者
JackWu0713 发表于 2018-7-19 11:59
我用 keil5 試了也没問題

额,为啥我用keil试了就是不行,就是显示这样的
Build target 'Target 1'
compiling 234.c...
C51 FATAL-ERROR -
  ACTION:  PARSING SOURCE-FILE
  ERROR:    PREPROCESSOR: MACROS TOO NESTED
C51 TERMINATED.
Target not created
回复

使用道具 举报

8#
ID:373620 发表于 2018-7-19 15:08 | 只看该作者
taotie 发表于 2018-7-19 13:05
我是用protues8。6编译,没问题~~~正常运行

额,为啥8.0就有问题了,,,没修改任何地方吗
回复

使用道具 举报

9#
ID:342822 发表于 2018-7-19 15:41 | 只看该作者
你查查你keil软件中的C51.exe是否正常~~
回复

使用道具 举报

10#
ID:250337 发表于 2018-7-19 15:57 | 只看该作者
keil 亲测没有问题啊,编译正常
回复

使用道具 举报

11#
ID:452764 发表于 2019-4-17 19:55 | 只看该作者
郁郁七天 发表于 2018-7-19 13:21
额,为啥我用keil试了就是不行,就是显示这样的
Build target 'Target 1'
compiling 234.c...

表示一样,不知道咋回事
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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