Head.h 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. #if !defined(_INCLUDE_HEAD_H)
  2. #define _INCLUDE_HEAD_H
  3. #if _MSC_VER > 1000
  4. #pragma once
  5. #endif // _MSC_VER > 1000
  6. #include <afxtempl.h>
  7. #define UPS_KE_HUA_MAX_MSG 100
  8. // ICPDAS 设备Dll错误代码定义
  9. enum __ERRO_CODE_UPSKEHUA
  10. {
  11. ERR_CODE_UPSKEHUA_COM_FAULT = 50201 , //UPSKEHUA设备串口通信故障
  12. ERR_CODE_UPSKEHUA_COM_BUSY , //UPSKEHUA设备串口通信忙
  13. ERR_CODE_UPSKEHUA_COM_READ_NO_DATA , //UPSKEHUA设备没有读到数据
  14. ERR_CODE_UPSKEHUA_COM_READ_LEN_OVER , //UPSKEHUA设备读到数据长度超时限制
  15. ERR_CODE_UPSKEHUA_COM_LRC_LOST , //UPSKEHUA设备lrc校验失败
  16. EER_CODE_UPSKEHUA_COM_WRITE_DATA , //UPSKEHUA设备写串口错误
  17. EER_CODE_UPSKEHUA_COM_REGNUM , //UPSKEHUA设备寄存器数
  18. ERR_CODE_UPSKEHUA_COM_VARLEN , //UPSKEHUA设备变量长度非法
  19. ERR_CODE_UPSKEHUA_COM_INVALIDRES , //UPSKEHUA设备无效应答
  20. };
  21. #pragma pack(push) //保存对齐状态
  22. #pragma pack(1)//设定为4字节对齐
  23. typedef struct tagPORTPARAM
  24. {
  25. BYTE PortNo; //Com端口
  26. DWORD BaudRate; //波特率
  27. BYTE ByteSize; /* Number of bits/byte, 4-8 */
  28. BYTE Parity; /* 校验位 0-4=None,Odd,Even,Mark,Space */
  29. BYTE StopBits; /* 结束位 0,1,2 = 1, 1.5, 2 */
  30. BYTE StartAddr; //起止地址
  31. int Interval; //间隔时间
  32. tagPORTPARAM()
  33. {
  34. PortNo=3;
  35. BaudRate=CBR_9600;
  36. ByteSize=8;
  37. Parity=NOPARITY;
  38. StopBits=ONESTOPBIT;
  39. StartAddr=1;
  40. Interval=1000;
  41. }
  42. }PORTPARAM,*PPORTPARAM;
  43. typedef struct __RESPONSE_STRUCT
  44. {
  45. BYTE Start; //起始位
  46. BYTE szContent[46]; //协议内容(长度46)
  47. BYTE End; //结束码 0x0d(回车)
  48. }RESPONSE_STRUCT, *PRESPONSE_STRUCT;
  49. #if 0
  50. //读应答数据结构
  51. typedef struct __STATUS_STRUCT
  52. {
  53. BYTE Start; //起始位
  54. BYTE AddrCode[2]; //地址码
  55. BYTE RtnByteNum; //返回字节个数
  56. }STATUS_STRUCT, *PSTATUSSTRUCT;
  57. typedef struct __RESPONSE_STRUCT
  58. {
  59. STATUS_STRUCT StatusStruct;
  60. char StrRtnMsg[80]; //返回字符串
  61. //BYTE Lrc[2]; //校验码位
  62. BYTE End; //结束码 0x0d(回车)
  63. }RESPONSE_STRUCT, *PRESPONSE_STRUCT;
  64. #endif
  65. #pragma pack(pop)//恢复对齐状态
  66. #endif //!defined(_INCLUDE_HEAD_H)