clone.h

来自「通过遥控红外信号在电器之间传输数据的软件」· C头文件 代码 · 共 93 行

H
93
字号



#ifndef _CLONE_H_
#define _CLONE_H_

#ifdef _CLONE_C_
 #define _CLONE_DECLARE_   
#else
  #define _CLONE_DECLARE_    extern
#endif

#ifdef   _CLONE_C_
//MACRO DEFINE

/* ======================================= */
//DATATYPE  DEFINE
/* ======================================= */
//Check sum type
typedef enum
{
 CHECK_NONE,
 CHECK_ADDRESS,
 CHECK_N_BYTE,
 CHECK_16_BYTE,
 CHECK_END
}CHECK_SUM_TYPE;

//WAIT ACK TYPE
typedef enum
{
  SEND_NO_ACK_WAIT,
  SEND_SENDREADY_WAITACK,
  SEND_ADDRESS_WAITACK,
  SEND_DATA_WAITACK,
  SEND_RECREADY_WAITACK,
  SEND_WAIT_ACK_END
  
}WAIT_ACK_TYPE;


/* ======================================= */
/* FUNCTION PROTOTYPES */
/* ======================================= */
static Byte GetKeyValue(void);
static void KeyScan(void);
static void KeyHandler(void);
static void CloneStatusToWaitACK(WAIT_ACK_TYPE type);
static void CloneStatusToRecData(void);
static void CloneStatusToSendData(void);
static void CloneClearRecMessage(void);
static void CloneHandler(void);
static void LedDisplayHandler(void);
static Bool VerifyCheckSum(CHECK_SUM_TYPE type);
static void GlobalVariableInit(void);
static Bool CheckRecAck(WAIT_ACK_TYPE type);
static void McuInit(void);
#endif


/* ======================================= */
/*DATATYPE  DEFINE */
/* ======================================= */
//clone status
typedef enum
{
   CLONE_NONE,
   CLONE_SEND_PREPARE,
   CLONE_SEND_SEND_READY,
   CLONE_SEND_ADDR,
   CLONE_SEND_DATA,
   CLONE_SEND_REC_READY,   
   CLONE_REC_PREPARE,
   CLONE_REC_AND_SEND_ACK,
   CLONE_WAIT_ACK,
   CLONE_SEND_END,
   CLONE_REC_END,
   CLONE_ERROR,
   CLONE_REC_CUSTOM_ERROR,
   CLONE_CHECKSUM_ERROR
   
}CLONE_STATUS;

/* ======================================= */
//GLOBAL VARIABLE DECLARE 
/* ======================================= */
//clone status
_CLONE_DECLARE_  Byte  IDATA   g_ucCloneStatus;
_CLONE_DECLARE_  Word IDATA   g_wCloneNVAddress; 
_CLONE_DECLARE_  Word IDATA   g_wTVNVAddress; 
_CLONE_DECLARE_  Byte CalculateCheckSum(Byte DataNum,Byte *pbuffer);
#endif

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?