144 lines
3.6 KiB
C
144 lines
3.6 KiB
C
|
||
#ifndef RTDB_123_INCLUDED
|
||
#define RTDB_123_INCLUDED
|
||
|
||
|
||
|
||
#ifdef __cplusplus
|
||
extern "C" {
|
||
#endif
|
||
/************************************************************************/
|
||
|
||
//#define RTDB_MEMORY_128M 1
|
||
|
||
|
||
//本标识表示缓冲是否初始化
|
||
#define SHM_BUFF_INIT_FLAG 0x1234A55A
|
||
|
||
#ifdef RTDB_MEMORY_128M
|
||
//address:120M, size大概128K+1k=129k
|
||
//address:104M
|
||
#define RTDB_BUFFER_START_ADDRESS 0x06800000
|
||
|
||
//分别存放:初始化标识
|
||
#define RTDB_BUFFER_INIT_FLAG 0x06800010
|
||
//保护程序校验和
|
||
#define RTDB_BUFFER_INIT_PROTCRC 0x06800014
|
||
//,时间(秒),时间(毫秒
|
||
#define RTDB_BUFFER_INIT_TIME 0x06800018
|
||
//CORE0使用ETH1
|
||
#define RTDB_BUFFER_INIT_C0_ETH1 0x0680001C
|
||
|
||
#define RTDB_BUFFER_SERV850_INIT 0x06800020
|
||
#define RTDB_BUFFER_SERV850_COUNT 0x06800024
|
||
|
||
//保护相关,初始化完成和计数器
|
||
#define RTDB_BUFFER_PROTECT_INIT 0x06800030
|
||
#define RTDB_BUFFER_PROTECT_COUNT 0x06800034
|
||
|
||
#define RTDB_BUFFER_PROTECT_TMP1 0x06800038
|
||
#define RTDB_BUFFER_PROTECT_TMP2 0x0680003C
|
||
|
||
//以太网1驱动的接收发送
|
||
#define RTDB_BUFFER_ETH1_RECV 0x06800040
|
||
#define RTDB_BUFFER_ETH1_RECV_M 0x06800044
|
||
#define RTDB_BUFFER_ETH1_SEND 0x06800048
|
||
#define RTDB_BUFFER_ETH1_SEND_M 0x0680004C
|
||
|
||
//LinkPort驱动的接收发送
|
||
#define RTDB_BUFFER_LP_RECV 0x06800050
|
||
#define RTDB_BUFFER_LP_RECV_M 0x06800054
|
||
#define RTDB_BUFFER_LP_SEND 0x06800058
|
||
#define RTDB_BUFFER_LP_SEND_M 0x0680005C
|
||
|
||
#else
|
||
//address:216M,可用16M
|
||
#define RTDB_BUFFER_START_ADDRESS 0x0D800000
|
||
|
||
//分别存放:初始化标识
|
||
#define RTDB_BUFFER_INIT_FLAG 0x0D800010
|
||
//保护程序校验和
|
||
#define RTDB_BUFFER_INIT_PROTCRC 0x0D800014
|
||
//,时间(秒),时间(毫秒
|
||
#define RTDB_BUFFER_INIT_TIME 0x0D800018
|
||
//CORE0使用ETH1
|
||
#define RTDB_BUFFER_INIT_C0_ETH1 0x0D80001C
|
||
|
||
#define RTDB_BUFFER_SERV850_INIT 0x0D800020
|
||
#define RTDB_BUFFER_SERV850_COUNT 0x0D800024
|
||
|
||
//GPS模块的卫星状态是否有效(1B的最低bit位)
|
||
#define RTDB_BUFFER_GPSL_VALID 0x0D800028
|
||
|
||
//61850配置文件初始化错误(程序没运行):BIT0=1
|
||
#define RTDB_BUFFER_SERV850_CONF 0x0D80002C
|
||
|
||
//保护相关,初始化完成和计数器
|
||
#define RTDB_BUFFER_PROTECT_INIT 0x0D800030
|
||
#define RTDB_BUFFER_PROTECT_COUNT 0x0D800034
|
||
|
||
#define RTDB_BUFFER_PROTECT_TMP1 0x0D800038
|
||
#define RTDB_BUFFER_PROTECT_TMP2 0x0D80003C
|
||
|
||
//以太网1驱动的接收发送
|
||
#define RTDB_BUFFER_ETH1_RECV 0x0D800040
|
||
#define RTDB_BUFFER_ETH1_RECV_M 0x0D800044
|
||
#define RTDB_BUFFER_ETH1_SEND 0x0D800048
|
||
#define RTDB_BUFFER_ETH1_SEND_M 0x0D80004C
|
||
|
||
//LinkPort驱动的接收发送
|
||
#define RTDB_BUFFER_LP_RECV 0x0D800050
|
||
#define RTDB_BUFFER_LP_RECV_M 0x0D800054
|
||
#define RTDB_BUFFER_LP_SEND 0x0D800058
|
||
#define RTDB_BUFFER_LP_SEND_M 0x0D80005C
|
||
|
||
//CAN驱动相关计数
|
||
#define RTDB_BUFFER_CAN_RECV 0x0D800060
|
||
#define RTDB_BUFFER_CAN_ERR 0x0D800064
|
||
#define RTDB_BUFFER_CAN_SEND 0x0D800068
|
||
|
||
//接口计数,+1
|
||
#define RTDB_BUFFER_COMMCPU_REJECT 0x0D800070
|
||
|
||
//cbt add 2021.3.31
|
||
//保护配置库校验状态--用作4字节int型
|
||
#define RTDB_BUFFER_PROTCFG_CHECKSTATUS 0x0D800078
|
||
|
||
#endif
|
||
|
||
typedef enum
|
||
{
|
||
SYSTIME_SOURCE_TYPE_TOOL103=1,
|
||
SYSTIME_SOURCE_TYPE_1588,
|
||
SYSTIME_SOURCE_TYPE_CODEB,
|
||
SYSTIME_SOURCE_TYPE_SNTP,
|
||
SYSTIME_SOURCE_TYPE_YD104,
|
||
SYSTIME_SOURCE_TYPE_RTC,
|
||
} SYSTIME_SOURCE_TYPE;
|
||
|
||
|
||
int rtdb_init(void);
|
||
|
||
int rtdb_inf_write_cmd(unsigned char * pucCmd);
|
||
|
||
int rtdb_protect_read_cmd(unsigned char * pucCmd);
|
||
|
||
int rtdb_protect_write_cmd(unsigned char * pucCmd);
|
||
|
||
int rtdb_inf_read_cmd(unsigned char * pucCmd);
|
||
|
||
int rtdb_inf_get_addr_systime(unsigned int **addr);
|
||
|
||
int rtdb_inf_set_gps_status( unsigned char status );
|
||
unsigned char rtdb_protect_get_gps_status( void );
|
||
int rtdb_inf_add_reject_num(void);
|
||
|
||
/************************************************************************/
|
||
#ifdef __cplusplus
|
||
}
|
||
#endif
|
||
|
||
|
||
#endif
|
||
|