commCPU_SUPV/code/user/inc/interact_lcd.h

163 lines
5.6 KiB
C
Raw Permalink Normal View History

2025-04-30 16:24:29 +08:00
#ifndef INTERACT_LCD_123_INCLUDED
#define INTERACT_LCD_123_INCLUDED
#include "glbtypes.h"
#include "general_defines.h"
#include "basetype.h"
#ifdef __cplusplus
extern "C" {
#endif
/************************************************************************/
typedef struct
{
ST_DOUBLE cmdTime; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><E4A3AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><D0B6><EFBFBD><EFBFBD>ʱ<EEB3A4><CAB1>û<EFBFBD>з<EFBFBD><D0B7>ء<EFBFBD><D8A1><EFBFBD><EFBFBD>ʹ<E9B2BB>ã<EFBFBD><C3A3><EFBFBD>Ϊÿ<CEAA><C3BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>أ<EFBFBD><D8A3><EFBFBD>ʹʧ<CAB9><CAA7>
ST_UCHAR cmdStatus; //<2F><><EFBFBD><EFBFBD>״̬<D7B4><CCAC>0=<3D><>ʼ״̬<D7B4><CCAC>1<EFBFBD><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ִ<EFBFBD><D6B4><EFBFBD>У<EFBFBD>2<EFBFBD><32>ִ<EFBFBD><D6B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
ST_UCHAR group;
ST_UCHAR result; //0<><30>ʾִ<CABE>гɹ<D0B3><C9B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵʧ<D6B5><CAA7>
ST_UCHAR dzNum;
UNION_FLOAT dzVal[256];
ST_UCHAR dzType[256]; //7=<3D><><EFBFBD>㣬5<E3A3AC><35><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD>δ<EFBFBD><CEB4><EFBFBD><EFBFBD>
UNION_FLOAT dzTmp[256]; //<2F>޸ĵ<DEB8><C4B5><EFBFBD>ʱֵ<CAB1><D6B5><EFBFBD>Ż<EFBFBD><C5BB><EFBFBD>޸Ķ<DEB8>ֵ<EFBFBD><D6B5>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>ʹ<EFBFBD>ñ<EFBFBD><C3B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ
} LCD_CMD_DZ;
//<2F>¼<EFBFBD><C2BC>Լ챨<D4BC><ECB1A8><EFBFBD>Ľṹ<C4BD><E1B9B9>
typedef struct
{
struct
{
unsigned short int Msecond; //<2F><><EFBFBD>룬2<EBA3AC>ֽڣ<D6BD><DAA3><EFBFBD>Χ<EFBFBD><CEA7>0<EFBFBD><30>59999
unsigned char Minute; //<2F>֣<EFBFBD>1<EFBFBD>ֽڣ<D6BD><DAA3><EFBFBD>Χ<EFBFBD><CEA7>0<EFBFBD><30>59
unsigned char Hour; //Сʱ<D0A1><CAB1>1<EFBFBD>ֽڣ<D6BD><DAA3><EFBFBD>Χ<EFBFBD><CEA7>0<EFBFBD><30>23
unsigned char Date; //<2F><><EFBFBD>ڣ<EFBFBD>1<EFBFBD>ֽڣ<D6BD><DAA3><EFBFBD>Χ<EFBFBD><CEA7>1<EFBFBD><31>31
unsigned char Month; //<2F>£<EFBFBD>1<EFBFBD>ֽڣ<D6BD><DAA3><EFBFBD>Χ<EFBFBD><CEA7>1<EFBFBD><31>12
unsigned short int Year; //<2F>꣬2<EAA3AC>ֽڣ<D6BD><DAA3><EFBFBD>Χ<EFBFBD><CEA7>2000<30><30>2099
} SoeDate; //ʱ<>䣬8<E4A3AC>ֽ<EFBFBD>
unsigned int SoeTime; //<2F><><EFBFBD><EFBFBD>ʱ<EFBFBD>䣬4<E4A3AC>ֽڣ<D6BD><DAA3><EFBFBD>λ<EFBFBD><CEBB><EFBFBD>루ms<6D><73>
unsigned short int SoeCode; //<2F>¼<EFBFBD><C2BC><EFBFBD><EFBFBD>룬2<EBA3AC>ֽ<EFBFBD>
unsigned char SoeParaNum; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1<EFBFBD>ֽڣ<D6BD>ȡֵ<C8A1><D6B5>Χ<EFBFBD><CEA7>0<EFBFBD><30>3
struct
{
unsigned char Type; //ģ<><C4A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>1<EFBFBD>ֽ<EFBFBD>
unsigned char Mode; //<2F><>ʾ<EFBFBD><CABE>ʽ<EFBFBD><CABD>1<EFBFBD>Ρ<EFBFBD>2<EFBFBD>Σ<EFBFBD><CEA3><EFBFBD>1<EFBFBD>ֽ<EFBFBD>
float Value; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//cbt modified 2019.5.22 <20>¼<EFBFBD><C2BC>Լ챨<D4BC><ECB1A8><EFBFBD>IJ<EFBFBD><C4B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3<EFBFBD><33><EFBFBD><EFBFBD>Ϊ10<31><30><><D2BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD>޸IJ<DEB8><C4B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//} SoeValue[3]; //<2F><><EFBFBD><EFBFBD>ֵ
} SoeValue[SOE_VALUE_NUM]; //<2F><><EFBFBD><EFBFBD>ֵ
} LCD_CMD_SJZJ_ITEM;
//<2F>¼<EFBFBD><C2BC>Լ챨<D4BC><ECB1A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
typedef struct{
ST_UCHAR cmdStatus; //<2F><><EFBFBD><EFBFBD>״̬<D7B4><CCAC>0=<3D><>ʼ״̬<D7B4><CCAC>1<EFBFBD><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ִ<EFBFBD><D6B4><EFBFBD>У<EFBFBD>2<EFBFBD><32>ִ<EFBFBD><D6B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
ST_UCHAR result; //0<><30>ʾִ<CABE>гɹ<D0B3><C9B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵʧ<D6B5><CAA7>
ST_UCHAR target; //<2F><>ѯ<EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>IO<49><4F><EFBFBD><EFBFBD>
ST_UCHAR itemNum;
LCD_CMD_SJZJ_ITEM item[7];
} LCD_CMD_SJZJ;
typedef struct{
ST_UCHAR cmdStatus; //<2F><><EFBFBD><EFBFBD>״̬<D7B4><CCAC>0=<3D><>ʼ״̬<D7B4><CCAC>1<EFBFBD><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ִ<EFBFBD><D6B4><EFBFBD>У<EFBFBD>2<EFBFBD><32>ִ<EFBFBD><D6B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
ST_UCHAR result; //0<><30>ʾִ<CABE>гɹ<D0B3><C9B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵʧ<D6B5><CAA7>
//<2F><EFBFBD>Ų<EFBFBD><C5B2><EFBFBD><EFBFBD>ڻ<EFBFBD><DABB><EFBFBD>ѯʧ<D1AF>ܣ<EFBFBD><DCA3><EFBFBD>Ӧ<EFBFBD><EFBFBD><E6B1BE><EFBFBD><EFBFBD>Ϊȫ0
ST_UCHAR protVer[32];
ST_UCHAR commcpuVer[32];
ST_UCHAR ioVer[4][32];
} LCD_CMD_VERSION;
//ң<>ش<EFBFBD><D8B4><EFBFBD>
typedef struct{
ST_UCHAR cmdStatus; //<2F><><EFBFBD><EFBFBD>״̬<D7B4><CCAC>0=<3D><>ʼ״̬<D7B4><CCAC>1<EFBFBD><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ִ<EFBFBD><D6B4><EFBFBD>У<EFBFBD>2<EFBFBD><32>ִ<EFBFBD><D6B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
ST_UCHAR result; //0<><30>ʾִ<CABE>гɹ<D0B3><C9B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵʧ<D6B5><CAA7>
ST_UCHAR cdIndex; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>
ST_UCHAR dco; //<2F><><EFBFBD><EFBFBD><EFBFBD>ķ֡<C4B7><D6A1><EFBFBD>ֵ
} LCD_CMD_YKCD;
ST_RET interact_lcd_init( ST_VOID );
ST_RET interact_lcd_release( ST_VOID );
ST_RET interact_lcd_handle( ST_VOID );
/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD><C3A3><EFBFBD><EFBFBD>Ͷ<EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
LCD_CMD_DZ * interact_lcd_cmd_dz_get_struct( ST_VOID );
ST_RET interact_lcd_cmd_dz_get_data( ST_UCHAR dzGroup );
ST_RET interact_lcd_cmd_dz_set_sec( ST_UCHAR dzGroup );
ST_RET interact_lcd_cmd_dz_set_data( ST_UCHAR dzGroup );
ST_RET interact_lcd_cmd_dz_get_data_return( ST_RET result, ST_UCHAR group, ST_UCHAR dzNum, const UNION_FLOAT *dzVal, const ST_UCHAR *dzType );
ST_RET interact_lcd_cmd_dz_set_sec_return( ST_RET result, ST_UCHAR group );
ST_RET interact_lcd_cmd_dz_set_data_return( ST_RET result, ST_UCHAR group );
ST_VOID * interact_lcd_cmd_l2_set( const ST_VOID *yaoce );
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD><C3A3><EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>µı<C2B5><C4B1><EFBFBD>
ST_INT interact_lcd_cmd_l2_get_updateflag( ST_VOID );
//<2F><><EFBFBD>ص<EFBFBD><D8B5>ǽṹ<C7BD><E1B9B9>:CLZType
const ST_VOID * interact_lcd_cmd_l2_get( ST_VOID );
//<2F><><EFBFBD>ص<EFBFBD><D8B5>ǽṹ<C7BD>壺Q_DataType, pYcNum<75><6D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʵ<EFBFBD><CAB5>ң<EFBFBD><D2A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
const ST_VOID * interact_lcd_cmd_yc_get( ST_UCHAR *pYcNum );
//<2F><><EFBFBD>ص<EFBFBD><D8B5>ǽṹ<C7BD>壺TELE_SIGNAL<41><4C>ȡ<EFBFBD><EFBFBD><E1B9B9><EFBFBD>е<EFBFBD>valueֵ<65><D6B5><EFBFBD><EFBFBD>.valueֵ&0x03ȡ<33><C8A1><32><CEBB><31>֣<EFBFBD><32>ϣ<EFBFBD><CFA3><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD>̬
const ST_VOID * interact_lcd_cmd_yx_get( ST_INT *pYxNum );
//<2F><>ȡ<EFBFBD>ϴα<CFB4><CEB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD>״̬
ST_RET interact_lcd_cmd_l2_get_lastrunstatus( ST_UCHAR *lastRunStatus );
//<2F><>ȡ<EFBFBD><C8A1><EFBFBD>ϱ<EFBFBD><CFB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>0<EFBFBD><30>ʾ<EFBFBD><CABE><EFBFBD>£<EFBFBD>1<EFBFBD><31>ʾ<EFBFBD><CABE><EFBFBD>£<EFBFBD><C2A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƣ<EFBFBD>ʧ<EFBFBD>ܷ<EFBFBD><DCB7>ؿ<EFBFBD>ָ<EFBFBD><20><EFBFBD><E1B9B9>ΪFaultItemType
//faultIndexΪ<78><CEAA><EFBFBD>ϱ<EFBFBD><CFB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ŵ<EFBFBD>ָ<EFBFBD><D6B8>
const ST_VOID * interact_lcd_cmd_gzbg_get( ST_INT buildIndex, ST_INT *faultIndex );
//<2F>¼<EFBFBD><C2BC><EFBFBD><E1B9B9><EFBFBD><EFBFBD>ת<EFBFBD><D7AA>
ST_RET interact_lcd_soeitem_to_sjzjitem( const ST_VOID *soe, LCD_CMD_SJZJ_ITEM *sjzj );
///Һ<><D2BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ñ<EFBFBD><C3B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>·<EFBFBD><C2B7><EFBFBD><EFBFBD>Ȼ<EEA1A3><C8BB>ʵʱ<CAB5><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E1B9B9><EFBFBD><EFBFBD>״̬<D7B4><CCAC><EFBFBD>жϳ<D0B6><CFB3><EFBFBD><EFBFBD>Ƿ<EFBFBD>ִ<EFBFBD><D6B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
ST_RET interact_lcd_cmd_sjzj_get( ST_UCHAR sjzj, ST_INT target, ST_UCHAR segment );
LCD_CMD_SJZJ * interact_lcd_cmd_sjbg_get_struct( ST_VOID );
ST_RET interact_lcd_cmd_sjzj_get_return( ST_RET result, ST_INT dataLen, const ST_UCHAR *dataBuff, ST_UCHAR dstDev );
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD><C3A3><EFBFBD><E6B1BE><EFBFBD><EFBFBD><EFBFBD>غ<EFBFBD><D8BA><EFBFBD>
ST_RET interact_lcd_cmd_ver_get_all( ST_VOID );
LCD_CMD_VERSION * interact_lcd_cmd_ver_get_struct( ST_VOID );
ST_RET interact_lcd_cmd_ver_get_return( ST_VOID );
///<2F><><EFBFBD>صĽṹ<C4BD><E1B9B9><EFBFBD><EFBFBD>HOST_INFO<46><4F> ʧ<>ܷ<EFBFBD><DCB7><EFBFBD>NULL
ST_VOID * interact_lcd_cmd_netinfo_get( ST_VOID );
//<2F>·<EFBFBD><C2B7>Ľṹ<C4BD><E1B9B9>Ҳ<EFBFBD><D2B2>HOST_INFO<46><4F><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȷ<EFBFBD><C8B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD>ʾҪ<CABE><D2AA><EFBFBD><EFBFBD>װ<EFBFBD><D7B0>)<29><><EFBFBD><EFBFBD>set_reboot_time<6D><65><EFBFBD><EFBFBD><EFBFBD><EFBFBD>װ<EFBFBD><D7B0>
ST_RET interact_lcd_cmd_netinfo_set( const ST_VOID *netInfo );
//<2F><>ȡװ<C8A1>õ<EFBFBD>ַ
ST_UCHAR interact_lcd_cmd_devaddr_get( ST_VOID );
ST_RET interact_lcd_cmd_devaddr_set( ST_UCHAR devAddr );
//֪ͨҺ<D6AA><D2BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>еı<D0B5><C4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
ST_RET interact_lcd_cmd_sjzj_burst( ST_UCHAR sjzj, ST_INT target, const ST_VOID *sjzjData );
ST_RET interact_lcd_cmd_gzbg_burst( const ST_VOID *gzbgData, ST_INT faultIndex );
//<2F><><EFBFBD><EFBFBD>װ<EFBFBD><D7B0>ʱ<EFBFBD><EFBFBD><E4A3AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڵ<EFBFBD><DAB5><EFBFBD>2000<30><30>.<2E><><EFBFBD><EFBFBD>dateSetΪ<74><EFBFBD><E1B9B9>DateType
ST_RET interact_lcd_cmd_time_set( const ST_VOID *dateSet );
//Һ<><D2BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD><C3A3>·<EFBFBD><C2B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
ST_RET interact_lcd_cmd_cd_send( ST_UCHAR cdIndex, ST_UCHAR dco );
LCD_CMD_YKCD * interact_lcd_cmd_cd_get_struct( ST_VOID );
//<2F>ӿڵ<D3BF><DAB5>ã<EFBFBD><C3A3><EFBFBD><EFBFBD>ش<EFBFBD><D8B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
ST_RET interact_lcd_cmd_cd_return( ST_RET result );
/************************************************************************/
#ifdef __cplusplus
}
#endif
#endif