#ifndef __READDEVICEDATA_H #define __READDEVICEDATA_H #include "define_all.h" //////////////////protocol coding//////////////////////////// #define SIZHUMODBUS1 0x0101 //˼ÖþÐÂ620modbus£¬×ÜÁ¿ÓÐ4×Ö½ÚÕûÊýºÍ2×Ö½ÚСÊý×é³É£¬µ«ÊÇÎÒÃÇÖ»¶ÁÈ¡ÕûÊý£¬ #define SIZHUMODBUS2 0x0102 //˼Öþ620¾Émodbus£¬×ÜÁ¿Êǵ¥¾«¶È¸¡µãÊý #define SIZHUMODBUSV2_0 0x0104 //˼Öþ620ÐÂmodbus V2.0ЭÒé #define TIANXINCUSTOM 0x0200 //ÌìÐÅ×Ô¶¨ÒåV1.2 #define TIANXINMODBUS 0x0201 //ÌìÐÅMODBUS/A2 #define TIANXINMODBUSA4 0x0202 //ÌìÐÅMODBUS/A4 #define TIANXINMODBUSA6 0x0203 //ÌìÐÅMODBUS/A6 #define TIANXINMODBUSA3 0x0204 //ÌìÐÅMODBUS/A3 #define TIANXINMODBUSTFC 0x0205 //ÌìÐÅMODBUS/TFC #define TIANXINMODBUSTUA 0x0206 //ÌìÐÅMODBUS/TUA #define TIANXINMODBUSTUFC 0x0207 //ÌìÐÅMODBUSTUFC #define TIANXINMODBUSTUF 0x0208 //ÌìÐÅMODBUSTUF #define EKMODBUS 0x0300 #define EKMODBUS_M_SONIC 0x0301 //°£¶ûË¹ÌØM.Sonic #define CANGNANCUSTOM 0x0400 #define CANGNANMODBUSV2_0 0x0401 #define CANGNANMODBUSV3_1 0x0402 #define CANGNANMODBUSV1_3 0x0403 #define XINKECUSTOM 0x0500 #define XINKEMODBUS1 0x0501 #define XINKEMODBUS2 0x0502 #define SICK500MODBUS 0x0600 #define SICK_X_C 0x0601 #define SICK_X_P 0x0602 #define ASMODBUS 0x0701//ÊÊÓÃÓÚ°®Öª100¿Ú¾¶ÒÔÏ #define AS100MODBUS 0x0702 //ÊÊÓÃÓÚ°®Öª100¿Ú¾¶¼°ÒÔÉÏ #define CDLC_LC_MODBUS_V2_8 0x0801 //³É¶¼Â×´ÈLCϵÁÐMODBUSV2.8ЭÒé #define YUSHUNMODBUS 0x0901 //¸»Âíԣ˳ÒDZíMODBUS3.0ЭÒé #define CHUANGSHENG_MODBUS 0x1001 //Äþ²¨´´Ê¢ #define AEROSPACE_POWER 0x1101 //º½Ì춯Á¦ #define AEROSPACE_POWER_NO_TP 0x1102 //º½Ì춯Á¦ÎÞÎÂѹ #define SINOTOMODBUS 0x1201 //ÐŶ« #define SIARGO_MODBUS 0x1301 //ÎùÏè #define DEWEN_IGSM_MODBUS 0x1401 //µÂÎÅ #define DEWEN_PTZ_BOX_5_0 0x1402 //µÂÎÅPTZ-BOX5.0 #define HADE_MODBUS 0x1501 //¹þµÂ #define HADE_MODBUS_RTU1 0x1502 #define HADE_MODBUS_RTU2 0x1503 #define ANJUN_MODBUSV1_0 0x1601 #define YINGYUNCUSTOM 0X1700 #define YINGYUN_MODBUS 0X1701 #define SIDASIYI_MODBUS 0x1801 #define ZHENLANMODBUS 0X1901 #define ZHONGHEWEISI_MODBUS 0X2001 #define TIANJIN_WU_JICHAUNG_CUSTOM 0X2201 #define LIQING_LQUA_MODBUS 0X2301 #define AIKE_AKCL_2S_MODBUS 0X2401 ////////////////////////////////////////////// #define REPEATNUM 3 //?????? #define REPEATUNIT 3 //?????? #define BEATTIME 60 //?????? #define MODBUS_WAIT 0X05 #define MODBUS_TX 0X06 #define LLJRXDBOUND 0XFF //#define RS485_VCC_OFF do{powerEX_OFF; OUTPUT1_EN_OFF; OUTPUT2_EN_OFF} while(0); typedef struct{ unsigned char UartBuff[LLJRXDBOUND+1]; // unsigned char HandBuff[LLJRXDBOUND+1]; // unsigned char WritePtr ; // unsigned char HandlePtr ; // unsigned char TempPtr ; // unsigned char NewLen ; // unsigned char DataLen ; // }FRAME; // MODBUS???? typedef struct{ unsigned char HandleStep ; //???? unsigned char RepeadNum ; //???? unsigned char RepeadTime; //???? uint16_t dataAddress; }MODBUS_LLJ; typedef struct { u16 u16MeterTypeCode; u8 u8BaudRateCode; //0x00:1200 0x01:2400 0x02:4800 0x03:9600 0x04:19200 0x05:38400 0x06:56000 0x07:57600 0x08:115200 u8 u8RS485Parity; //0x00£ºÎÞУÑé 0x01£ºÆæÐ£Ñé 0x02£ºÅ¼Ð£Ñé u8 u8EXPVoltageCode; //0x00£º5V 0x01:9V 0x02£º24V u8 u8LowPowerAlarmLine; // u8 u8slaveAddress; //ͨÐÅ´Ó»úµØÖ· u8 Vbt_Flag; u8 decoding_Type; u8 u8deviceAdress; u32 u32VTAddr ; u32 u32VbTAddr ; u32 u32VbT2Addr ; u32 u32PMESAddr ; u32 u32TMESAddr ; u32 u32QAddr ; u32 u32QbAddr ; u32 u32P_Bar ; u32 u32FlowData ; u8 VT_permission; //¹¤¿ö×ÜÁ¿·ÃÎÊ u8 VbT_permission; //±ê¿ö×ÜÁ¿ u8 Q_permission; //¹¤¿ö˲ʱ u8 Qb_permission; //±ê¿ö˲ʱ u8 TEMP_permission; u8 PRES_permission; }PARM_ACCESS; void Modbus_RS485B(void); void Read485_process(void); void Parameter_assignment(void); void PULSE_Recording(void); extern FRAME LLJ_Msg; extern MODBUS_LLJ ModbusDlg; extern PARM_ACCESS parmAccess; extern uint32_t NumDataStored; //extern uint8_t Vbt_Flag; //extern uint8_t decoding_Type; extern uint8_t ddr_index_2,Last_Data_DDR,NOW_Data_DDR; extern uint8_t DataStoredFlag; extern uint8_t Beginflag; #endif