久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 8585|回復: 12
收起左側

Keil編譯生成hex文件時總是報錯warning C206: '': missing function-prototype

[復制鏈接]
ID:648640 發(fā)表于 2019-11-24 21:32 | 顯示全部樓層 |閱讀模式
報錯的一段程序在這,檢查了好多次函數聲明,沒有發(fā)現(xiàn)問題。

void Key_Set_Clock( uchar * clock_time )

{
   uchar *i;
   i = clock_time ;
   clock_time ++ ;   //????
   Lcd_Set_Clock( 2, i );  //?????????????
   Key_Idle();
   while(1)
   {
      uchar minute;
      minute = ( ( * clock_time >>4 ) * 10 ) + ( ( * clock_time ) & 0x0f );                                //BCD ? HEX
      switch( Key_Scan() )   //??????  
      {            
         case KEY_UP:   
   {
     minute ++;   
     if(minute==60)
        minute=0;
           (*clock_time)=minute/10<<4;
(*clock_time)=(*clock_time)|( minute%10); //HEX ? BCD
   Lcd_Set_Clock( 2, i );  //?????????????
       Key_Idle();
   break;
         }                  
         case KEY_DOWN:
   {
     if(minute==0)  
    minute=60;  
     minute --;
           (*clock_time)=minute/10<<4;
     (*clock_time)=(*clock_time)|(minute%10);  //HEX ? BCD  
           Lcd_Set_Clock( 2, i );  //?????????????
           Key_Idle();
     break;
         }                    
        case  KEY_FUNC:  //?????
         {
   clock_time ++;   //????
            Lcd_Set_Clock(3,i);   //?????????????
   Key_Idle();
            while(1)
            {
      uchar hour;
               hour=((*clock_time>>4)*10)+((*clock_time)&0x0f);                                //BCD ? HEX
               switch( Key_Scan())
               {
                  case  KEY_UP:  
       {
       hour ++;
       if(hour==24)
      hour = 0;
      (*clock_time)=hour/10 <<4 ;
      (*clock_time)=(*clock_time)|(hour%10);   //HEX ? BCD
                     Lcd_Set_Clock( 3, i );   //?????????????
      Key_Idle();
      break;
       }
                  case  KEY_DOWN:  
      {
      if(hour == 0)
      hour = 24;
      hour --;
      if( hour == 0)
      hour =23;
      (*clock_time)=hour/10 <<4 ;
      (*clock_time)=(*clock_time)|(hour%10); //HEX ? BCD
      Lcd_Set_Clock( 3, i );   //?????????????
      Key_Idle();
      break;
      }         
                 case KEY_FUNC:    //??????
       {
                    clock_time ++;   //?????
                    Lcd_Set_Clock( 4, i );   //?????????????
     Key_Idle();
     while(1)
     {
       uchar day;
       day = ( (*clock_time >>4)*10 ) + ( (*clock_time)&0x0f );                                //BCD ? HEX
       switch(Key_Scan())
       {
       case KEY_UP:
          {
       day ++;
       if(day==32)
         day=1;
       (*clock_time)=day/10 <<4 ;  
       (*clock_time)=(*clock_time)|(day%10);                         //HEX ? BCD
       Lcd_Set_Clock( 4, i );   //?????????????
       Key_Idle();
       break;
       }         
                        case KEY_DOWN:
       {
       if(day == 0)
         day= 31;
       day --;
       if(day == 0)
         day=31;
       (*clock_time) = day/10 <<4 ;     
       (*clock_time) = (*clock_time) | (day%10);                         //HEX ? BCD ;
       Lcd_Set_Clock( 4, i );   //?????????????
       Key_Idle();
       break;
      }                  
                 case KEY_FUNC:    //??????
        {
                         clock_time ++;   //?????
       Lcd_Set_Clock( 5, i );   //?????????????
       Key_Idle();
       while(1)
       {
         uchar month;
         month = ( ( * clock_time >>4)*10 ) + ( ( * clock_time ) & 0x0f );                                //BCD ? HEX
                           switch(Key_Scan())
         {
                              case KEY_UP:
          {  
          month ++;
          if(month == 13)
         month= 1;
          (*clock_time)=month/10<<4;
          (*clock_time)=(*clock_time)|(month%10);                         //HEX ? BCD
           Lcd_Set_Clock( 5, i );   //?????????????
              Key_Idle();
           break;
         }            
                              case KEY_DOWN:
          {  
          if(month==0)
          month = 12;
          month --;
          if(month==0)
         month = 12;
          (*clock_time)=month/10 <<4;
          (*clock_time)=(*clock_time)|(month%10);                         //HEX ? BCD
          Lcd_Set_Clock( 5, i );   //?????????????
             Key_Idle();
          break;
         }                                                
        case KEY_FUNC:    //??????
        {
        clock_time ++;   //?????
        Lcd_Set_Clock( 6, i );   //?????????????
           Key_Idle();
              while(1)
           {
          uchar year;
             year=((*clock_time>>4)*10)+((*clock_time)&0x0f);                                //BCD ? HEX
                                  switch( Key_Scan() )
          {
             case KEY_UP:
                {   
            year ++;
            if(year == 100)
            year= 0;
            (*clock_time)=year/10<<4;
                  (*clock_time)=(*clock_time)|(year%10); //HEX ? BCD
                  Lcd_Set_Clock( 6, i );   //?????????????
                     Key_Idle();
               break;
                   }
                                     case KEY_DOWN:
             {  
            if(year==0)
            year=100;
            year--;
            if(year==0)
            year=100;
            (*clock_time)=year/10<<4;
               (*clock_time)=(*clock_time)|(year%10); //HEX ? BCD
             Lcd_Set_Clock( 6, i );   //?????????????
                   Key_Idle();
                break;
             }
                      case KEY_FUNC:
              {   
           goto loop;
              break;
              }
              }                       
               }
               }
                      }
                       }
                     }            
                     }
                   }
                 }
               }
            }         
          }
      }
   }
   loop:  Key_Idle();
}
這是頭文件,不知道哪里有問題,頭文件無法包含在.c文件中。.c文件顯示的錯誤如下:
..\CODE\KEY.C(97): warning C206: 'Lcd_Set_Clock': missing function-prototype
..\CODE\KEY.C(97): error C267: 'Lcd_Set_Clock': requires ANSI-style prototype

#ifndef KEY_H
#define KEY_H
  #include "Include.h"

  #ifndef KEY_GLOBAL
    #define KEY_EXT extern
  #else
    #define KEY_EXT
  #endif
  #define READ_KEY(x,name,b)       ((x)?(b|=name):(b&=~name) )
//---------------------?????????-------------------------------------
  #define  IN_PRESS_UP       P0_0    //???????????????
  #define  IN_PRESS_DOWN  P0_1 //??????????????
  #define  IN_PRESS_CLEAR     P0_2 //??????????
  #define  IN_PRESS_FUNC  P0_3 //???????????
//----------------------??????-----------------------------------------
  #define  KEY_FORCE_VALUE  0  //??????Ч???
  enum KEY_VALUE{KEY_UP=0x01,KEY_DOWN=0x02,KEY_CLEAR=0x04,KEY_FUNC=0x08,KEY_NULL=0x00};
  KEY_EXT void key_delay_us(uint us);
  KEY_EXT void key_init(void);
  KEY_EXT void Key_Idle(void);
  KEY_EXT uchar Key_Scan(void);
  KEY_EXT void Key_Set_Clock( uchar * clock_time );
  KEY_EXT void Key_Set_Alarm(uchar * alarm_time);
  KEY_EXT void Key_Function(uchar * clock_time,uchar* alarm_time);
#endif


回復

使用道具 舉報

ID:648640 發(fā)表于 2019-11-24 21:33 | 顯示全部樓層
?里的內容是注釋
回復

使用道具 舉報

ID:373684 發(fā)表于 2019-11-25 09:39 | 顯示全部樓層
注意大小寫,我昨天就是卡在這里啦
回復

使用道具 舉報

ID:235200 發(fā)表于 2019-11-25 12:17 | 顯示全部樓層
報錯的子程序需要聲明,可以在頭文件中聲明,也可以在主函數前聲明
回復

使用道具 舉報

ID:213173 發(fā)表于 2019-11-25 13:07 | 顯示全部樓層
缺少LCD驅動程序或沒有聲明
回復

使用道具 舉報

ID:606366 發(fā)表于 2019-11-26 11:06 | 顯示全部樓層
1.#include"key.h"
2.檢查void Key_Set_Clock( uchar * clock_time )是否在使用之前聲明,一般在.h文件中聲明,不過我看你并沒有
回復

使用道具 舉報

ID:648640 發(fā)表于 2019-11-27 22:02 | 顯示全部樓層
csmyldl 發(fā)表于 2019-11-25 12:17
報錯的子程序需要聲明,可以在頭文件中聲明,也可以在主函數前聲明

頭文件里已經聲明了
回復

使用道具 舉報

ID:648640 發(fā)表于 2019-11-27 22:03 | 顯示全部樓層
無敵的UUZ大人 發(fā)表于 2019-11-26 11:06
1.#include"key.h"
2.檢查void Key_Set_Clock( uchar * clock_time )是否在使用之前聲明,一般在.h文件中 ...

頭文件聲明了
回復

使用道具 舉報

ID:648640 發(fā)表于 2019-11-27 22:06 | 顯示全部樓層
wulin 發(fā)表于 2019-11-25 13:07
缺少LCD驅動程序或沒有聲明

LCD程序有,沒寫在帖子里。
回復

使用道具 舉報

ID:648640 發(fā)表于 2019-11-27 22:11 | 顯示全部樓層
cr8526 發(fā)表于 2019-11-25 09:39
注意大小寫,我昨天就是卡在這里啦

檢查了好多遍,沒有發(fā)現(xiàn)大小寫的問題
回復

使用道具 舉報

ID:601357 發(fā)表于 2020-3-11 11:43 | 顯示全部樓層
MOYI99 發(fā)表于 2019-11-27 22:11
檢查了好多遍,沒有發(fā)現(xiàn)大小寫的問題

我也有你這個問題,樓主你解決了嗎
回復

使用道具 舉報

ID:1031592 發(fā)表于 2022-10-22 20:47 | 顯示全部樓層
cr8526 發(fā)表于 2019-11-25 09:39
注意大小寫,我昨天就是卡在這里啦

感謝,回去檢查了一下,就短短的幾十行流水燈代碼,就有一個字母小寫打成了大寫,感謝
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 色欧美片视频在线观看 | 亚洲成av人片在线观看无码 | 久久久久久国产精品免费免费狐狸 | 天堂中文字幕av | 日韩毛片播放 | 午夜在线视频一区二区三区 | 国产精品久久久久久妇女6080 | 日韩高清中文字幕 | 久久精品一区二区三区四区 | 亚洲精品一区二区 | 欧美日韩国产高清 | 亚洲电影第三页 | 日本午夜免费福利视频 | 免费在线观看一级毛片 | 国产精品揄拍一区二区久久国内亚洲精 | 国产日韩久久 | 久久蜜桃精品 | 蜜臀网| 久久免费国产 | 亚洲天堂久久新 | 一区二区国产精品 | 午夜视频网| 欧美不卡一区二区三区 | 伊人久久精品一区二区三区 | 日韩一区二区在线看 | 交专区videossex农村 | 国产一区欧美一区 | 欧美色综合天天久久综合精品 | 日韩欧美在线一区 | 欧美在线视频a | www.玖玖玖 | 欧美精品综合 | 久久99精品久久久久久国产越南 | 午夜欧美 | 爱爱小视频 | 欧美专区在线视频 | 久久久久国 | 91日韩在线 | aa级毛片毛片免费观看久 | 综合网视频 | 韩三级在线观看 |