单片机学习小组
直播中

李林

7年用户 1213经验值
私信 关注

怎样去解决keil编译发生错误的问题呢

为什么keil编译会发生错误呢?怎样去解决keil编译发生错误的问题呢?

回帖(1)

李雪飞

2022-2-14 11:26:17

  keil编译发生错误
#include
#include
... // 标头档


#define Result_TIMOUT               3
#define Result_INTIAL               0
#define Result_ERROR                1


... // 预处理
typedef enum
{
    MD_INIT,
    HARDWARE_CHECK,
    FILESYSTEM,     
    BS_SEARCH,      
    BS_REGISTER,   
    BS_REG_CHK,     
    ME_FC_INIT,
                ME_SOCKET,       
    ME_READY
}STATUS_MACHINE_INDEX;


... // struct, enum, union


extern md_Socket_CB                         SocketOpen_CB;
extern md_Socket_CB                         SocketClose_CB;


... // 外部变量等
解决方法

使用条件编译来防止头文件被重複包含,以上述程式码为例

#ifndef __MODEM_H__
#define __MODEM_H__


#include
#include
... // 标头档


#define Result_TIMOUT               3
#define Result_INTIAL               0
#define Result_ERROR                1


... // 预处理
typedef enum
{
    MD_INIT,
    HARDWARE_CHECK,
    FILESYSTEM,     
    BS_SEARCH,      
    BS_REGISTER,   
    BS_REG_CHK,     
    ME_FC_INIT,
                ME_SOCKET,       
    ME_READY
}STATUS_MACHINE_INDEX;


... // struct, enum, union


extern md_Socket_CB                         SocketOpen_CB;
extern md_Socket_CB                         SocketClose_CB;


... // 外部变量等


#endif

  keil编译成功。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分