feat:修改设备类型
feat:修改为红外转发设备,将中弘网关协议转换为主机红外协议
This commit is contained in:
88
Source/SYSTEM/inc/Bootload_fun.h
Normal file
88
Source/SYSTEM/inc/Bootload_fun.h
Normal file
@@ -0,0 +1,88 @@
|
||||
#ifndef _BOOTLOAD_FUNCTION_H_
|
||||
#define _BOOTLOAD_FUNCTION_H_
|
||||
|
||||
#include "apt32f102.h"
|
||||
#include "apt32f102_ifc.h"
|
||||
#include "apt32f102_syscon.h"
|
||||
#include "uart.h"
|
||||
|
||||
#define App_Procedure_Ready 0x66 //APP准备就绪标志位
|
||||
|
||||
#define APP_Flash_PageSize 0x100
|
||||
|
||||
#if DBG_LOG_EN
|
||||
#define APP_Flash_StartAddr PROM_PageAdd96 //调试APP起始地址
|
||||
#else
|
||||
#define APP_Flash_StartAddr PROM_PageAdd40
|
||||
#endif
|
||||
|
||||
#define APP_Flash_EndAddr PROM_PageAdd255
|
||||
#define APP_FEATURE_Flash_Addr PROM_PageAdd255
|
||||
|
||||
#define MCU_EEPROM_PageSize 0x40
|
||||
#define MCU_EEPROM_StartAddr DROM_PageAdd0
|
||||
#define MCU_EEPROM_EndAddr (DROM_PageAdd31 + MCU_EEPROM_PageSize)
|
||||
|
||||
#define BCOMM_CMD_Handshake 0xC0
|
||||
#define BCOMM_CMD_Jump 0xC1
|
||||
#define BCOMM_CMD_SetInfo 0xC2
|
||||
#define BCOMM_CMD_WriteFlash 0xC3
|
||||
#define BCOMM_CMD_ReadFlash 0xC4
|
||||
#define BCOMM_CMD_EraseFlash 0xC5
|
||||
#define BCOMM_CMD_WriteEEPROM 0xC6
|
||||
#define BCOMM_CMD_ReadEEPROM 0xC7
|
||||
#define BCOMM_CMD_EraseEEPROM 0xC8
|
||||
#define BCOMM_CMD_CheckData 0xC9
|
||||
|
||||
#define BCOMM_CMD_ReplySUCC 0x00
|
||||
#define BCOMM_CMD_ReplyFAIL 0x01
|
||||
|
||||
#define BCOMM_ACKSize 300
|
||||
#define BCOMM_ParaSize 280
|
||||
|
||||
typedef enum
|
||||
{
|
||||
BCOMM_FMT_TXAddr,
|
||||
BCOMM_FMT_SN,
|
||||
BCOMM_FMT_TYPE,
|
||||
BCOMM_FMT_RXAddr,
|
||||
BCOMM_FMT_LEN_L,
|
||||
BCOMM_FMT_LEN_H,
|
||||
BCOMM_FMT_CKS,
|
||||
BCOMM_FMT_CMD,
|
||||
BCOMM_FMT_PARAM,
|
||||
}BOOT_COMM_FMT_e;
|
||||
|
||||
typedef struct{
|
||||
U8_T jump_start;
|
||||
U8_T sn;
|
||||
U8_T cmd;
|
||||
U8_T pc_addr;
|
||||
U8_T ackBuffer[BCOMM_ACKSize];
|
||||
U16_T ackLen;
|
||||
U16_T ackValidity; //数据回复有效期
|
||||
|
||||
U32_T bootTimeout;
|
||||
U32_T bootTick;
|
||||
}BOOT_INFO_T;
|
||||
|
||||
typedef struct{
|
||||
U8_T crcL_check;
|
||||
U8_T crcH_check;
|
||||
U8_T app_flag;
|
||||
U8_T app_crc[241];
|
||||
U16_T app_crc_size;
|
||||
U16_T app_crc_len;
|
||||
U32_T app_start_addr;
|
||||
U32_T app_end_addr;
|
||||
}APP_FEATURE_INFO_T; /*字节空间是256Byte*/
|
||||
|
||||
extern BOOT_INFO_T g_boot;
|
||||
|
||||
void Boot_Function_Init(void);
|
||||
U8_T Boot_Comm_UpgradeProcess(U8_T *data,U16_T len);
|
||||
void Boot_Time_Refresh(void);
|
||||
void Boot_TimeOut_Task(void);
|
||||
void Jump_To_APP(void);
|
||||
U8_T Check_APP_Feature(void);
|
||||
#endif
|
||||
Reference in New Issue
Block a user