求助 KEIL软件使用 问题

[复制链接]
 楼主| baolai 发表于 2013-6-2 16:00 | 显示全部楼层 |阅读模式
用reg51.H. 头文件 编译时候总是提示 P1   P2  是未声明的标示符 标示符  很纳闷  我查看根目录INC  里面有 REG51.H  头文件啊  我单独 用SFR  声明  就编译通过了   到底是怎么回事啊
#include<reg51.h>



void main(void)

{
   int a=67;
   p1=a;
   p2=p1;
  

}
logokfu 发表于 2013-6-2 16:35 | 显示全部楼层
你的是大小写给搞错了吧
 楼主| baolai 发表于 2013-6-2 16:53 | 显示全部楼层
头文件大小写 我都试过了  都要 用SFR声明才能编译痛过  不用SFR 就提示 未声明的标示符
logokfu 发表于 2013-6-2 17:42 | 显示全部楼层
baolai 发表于 2013-6-2 16:53
头文件大小写 我都试过了  都要 用SFR声明才能编译痛过  不用SFR 就提示 未声明的标示符  ...

我是指P0  !=p0
 楼主| baolai 发表于 2013-6-2 19:53 | 显示全部楼层
这也没搞错 主函数内的 大小写 也没搞错  就这么几行 我仔细 查过了
 楼主| baolai 发表于 2013-6-3 12:11 | 显示全部楼层
谢谢你 我明白了 就是你说的问题 本应该大写 我弄成小写了  呵呵谢谢昂
庄吉 发表于 2013-6-4 15:09 | 显示全部楼层
哈哈,明显是P1.P2写成p1,p2了,不是哪个字符 大小写都不分的
zwp0822 发表于 2013-6-4 16:13 | 显示全部楼层
年轻人,结贴散分把!
限量_个性。 发表于 2013-6-4 16:22 | 显示全部楼层
接个分 ~
 楼主| baolai 发表于 2013-6-4 17:49 | 显示全部楼层
呵呵 我刚学不太懂 各位老师别笑话我 呵呵 以后还望各位老师多指点   我可以再问个问题吗 我在书上看到一个列子程序 是一个矩阵键盘的 4*4的  开头一句看不懂 也不知道是不是一个函数  希望各位老师 给指点指点 我把程序贴上
int keysscan()
  {
    unsigned char k,k_temp[;
    P1=0xf0;
    k=P1;
    if(k !=0xf0)
     {
      delay();
     K_temp=P1;
     if(k==k_temp)
     {
      k=0xfe;
      do
     {
      P1=k;
      if(k!=P1)
     {
       switch(P1)
       {
        //第一行
        case 0x7e:{return 0;break;}

         case 0xbe:{return 1;break;}
          case 0xde:{return 2;break;}
         case 0xee:{return 3;break;}
         //第二行
          case 0x7d:{return 4;break;}
           case 0xbd:{return 5;break;}
           case 0xdd:{return 6;break;}
            case 0xed:{return 7;break;}
          //第三行
             case 0x7b:{return 8;break;}
               case 0xbb:{return 9;break;}
             case 0xdb:{return 10;break;}
              case 0xeb:{return 11;break;}
              //第四行
            case 0x77:{return 12;break;}
             case 0xb7:{return 13;break;}
              case 0xd7:{return 14;break;}
              case 0xe7:{return 15;break;}
              }

             }
             k=_crol_(k,1);

            }
             while(k!=0xef);

            }

            }
   
             }
   
huangxz 发表于 2013-6-4 19:28 | 显示全部楼层
安装路径有问题
 楼主| baolai 发表于 2013-6-4 19:37 | 显示全部楼层
什么 安装路径 有问题  请问这是个什么函数  int keysscan()
huangxz 发表于 2013-6-4 22:26 | 显示全部楼层
baolai 发表于 2013-6-4 19:37
什么 安装路径 有问题  请问这是个什么函数  int keysscan()

你的那个头文件不在编译器的搜索路径里面,所以不认识你的头文件,比如你的keil是绿色版的就有可能会出这个问题,如果是安装版的,建议重装一下
 楼主| baolai 发表于 2013-6-5 12:55 | 显示全部楼层
不是你说的那样  我解决了  我调用函数 调用的不对  是这样的  如下  编译通过

#include<reg51.h>
#include<stdio.h>
#include<intrins.h>

   int k;
   int k_temp;
  int key,i;
  void delay();
   int keysscan();

void main(void)
{


  key=  keysscan();
   
for(i=0;i<key;i++)
{
   P2=0x80;
   delay();
   P2=0x00;
   delay();

}


}

void delay()
   {
    long i;
  for(i=10000;i<0;i++);

}

int keysscan()
  {
    unsigned char k;
     unsigned char  k_temp;
    P1=0xf0;
    k=P1;
    if(k !=0xf0)
     {
      delay();
     
     if(k==k_temp)
     {
      k=0xfe;
      do
     {
      P1=k;
      if(k!=P1)
     {
       switch(P1)
       {
        //第一行
        case 0x7e:{return 0;break;}

         case 0xbe:{return 1;break;}
          case 0xde:{return 2;break;}
         case 0xee:{return 3;break;}
         //第二行
          case 0x7d:{return 4;break;}
           case 0xbd:{return 5;break;}
           case 0xdd:{return 6;break;}
            case 0xed:{return 7;break;}
          //第三行
             case 0x7b:{return 8;break;}
               case 0xbb:{return 9;break;}
             case 0xdb:{return 10;break;}
              case 0xeb:{return 11;break;}
              //第四行
            case 0x77:{return 12;break;}
             case 0xb7:{return 13;break;}
              case 0xd7:{return 14;break;}
              case 0xe7:{return 15;break;}
              }

             }
             k=_crol_(k,1);

            }
             while(k!=0xef);

            }

            }
   
             }


 楼主| baolai 发表于 2013-6-5 12:58 | 显示全部楼层
顺便问一下 怎么结贴  呵呵
huangxz 发表于 2013-6-5 14:07 | 显示全部楼层
baolai 发表于 2013-6-5 12:58
顺便问一下 怎么结贴  呵呵


点那个<>号,ran

本帖子中包含更多资源

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

×
 楼主| baolai 发表于 2013-6-5 21:52 | 显示全部楼层
怎么结贴
勿以泪惧 发表于 2013-6-5 23:54 | 显示全部楼层
 楼主| baolai 发表于 2013-6-6 23:37 | 显示全部楼层
 楼主| baolai 发表于 2013-6-6 23:38 | 显示全部楼层
嘛意思
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3

主题

16

帖子

0

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

3

主题

16

帖子

0

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