Constant.cs 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6. namespace MV485.model
  7. {
  8. public class Constant
  9. {
  10. public const byte METER_TYPE_NUM_IND = 1;
  11. public const byte METER_TYPE_IND = 2;
  12. public const byte METER_TYPE_NUM = 3;
  13. public const ulong CUBE_VALUE = 10000;
  14. public const ushort MB_REGISTER_ADD_SAMPLE_RESULT = 0x00;
  15. public const ushort MB_REGISTER_NUM_SAMPLE_RESULT = 4;
  16. public const ushort MB_REGISTER_ADD_SAMPLE_TIME = 0x04;
  17. public const ushort MB_REGISTER_NUM_SAMPLE_TIME = 6;
  18. public const ushort MB_REGISTER_ADD_RESULT_TYPE = 0x000A; //识别结果的类型
  19. public const ushort MB_REGISTER_NUM_RESULT_TYPE = 1; //寄存器数量
  20. //结果已立方为单位时保留的小数位数
  21. public const ushort MB_REGISTER_ADD_RESULT_DECIMAL_PLACES = 0x000C; //识别结果小数点位数
  22. public const ushort MB_REGISTER_NUM_RESULT_DECIMAL_PLACES = 1;
  23. public const ushort MB_REGISTER_ADD_DEVICE_TIME = 0x0053; //设备时钟
  24. public const ushort MB_REGISTER_NUM_DEVICE_TIME = 6; //6个寄存器
  25. public const ushort MB_REGISTER_ADD_FIREWARE_ROLLBACK = 0x005A; //固件回滚指令
  26. public const ushort MB_REGISTER_NUM_FIREWARE_ROLLBACK = 1; //1个寄存器
  27. //写升级包信息
  28. public const ushort MB_REGISTER_ADD_UPGRADE_DATA = 0x005C; //升级包的基本信息
  29. //前2个地址为升级包的大小,后2个字节为升级文件的CRC32
  30. public const ushort MB_REGISTER_NUM_UPGRADE_DATA = 4; //寄存器数量(4个)
  31. public const ushort MB_REGISTER_ADD_MODEL_NAME = 0x00D2; //模块名称,如:0x4001,即RS485水表
  32. public const ushort MB_REGISTER_NUM_MODEL_NAME = 1;
  33. public const ushort MB_REGISTER_ADD_FIREWARE = 0x00D4; //固件版本
  34. public const ushort MB_REGISTER_NUM_FIREWARE = 2;
  35. public const ushort MB_REGISTER_ADD_DEVICE_SN = 0x00E5; //设备SN
  36. public const ushort MB_REGISTER_NUM_DEVICE_SN = 3;
  37. public const ushort MB_REGISTER_ADD_ADDRESS = 0x00F0; //站地址
  38. public const ushort MB_REGISTER_NUM_ADDRESS = 1;
  39. public const ushort MB_REGISTER_ADD_BAUDRATE = 0x00F2;
  40. public const ushort MB_REGISTER_NUM_BAUDRATE = 1;
  41. //生效标志,接收此标志后写入配置并重启设备
  42. public const ushort MB_REGISTER_IMAGE_SIZE = 0x0061; //1个字节
  43. public const ushort MB_REGISTER_ADD_EFFECT_FLAG = 0x0063;
  44. //寄存器数量
  45. public const ushort MB_REGISTER_NUM_EFFECT_FLAG = 1;
  46. public const ushort MB_REGISTER_ADD_METER_TYPE = 0x0065; //水表类型,1:数字+指针 2:全指针 3:全数字
  47. public const ushort MB_REGISTER_NUM_METER_TYPE = 1;
  48. public const ushort MB_REGISTER_ADD_DN_VALUE = 0x0067; //每小时最大流量(m³)
  49. public const ushort MB_REGISTER_NUM_DN_VALUE = 1;
  50. public const ushort MB_REGISTER_ADD_DIGIT_COUNT = 0x0069; //数字个数
  51. public const ushort MB_REGISTER_NUM_DIGIT_COUNT = 1;
  52. public const ushort MB_REGISTER_ADD_INDICATOR_COUNT = 0x006B; //指针个数
  53. public const ushort MB_REGISTER_NUM_INDICATOR_COUNT = 1;
  54. public const ushort MB_REGISTER_ADD_BRIGHT_VALUE = 0x006D; //照片亮度系数
  55. public const ushort MB_REGISTER_NUM_BRIGHT_VALUE = 1;
  56. public const ushort MB_REGISTER_ADD_LAST_UNIT_LEVEL = 0x006F; //尾数单位等级
  57. public const ushort MB_REGISTER_NUM_LAST_UNIT_LEVEL = 1;
  58. public const ushort MB_REGISTER_ADD_LATEST_VALUE = 0x0071; //表底读数
  59. public const ushort MB_REGISTER_NUM_LATEST_VALUE = 4;
  60. public const ushort MB_REGISTER_ADD_LATEST_TIME = 0x0076; //表底读数时间
  61. public const ushort MB_REGISTER_NUM_LATEST_TIME = 6;
  62. public const ushort MB_REGISTER_ADD_METER_REGION = 0x007D; //表盘区域坐标(左上,右下)
  63. public const ushort MB_REGISTER_NUM_METER_REGION = 4;
  64. public const ushort MB_REGISTER_ADD_DIGIT_REGION = 0x0082; //数字区域坐标(4个顶点坐标)
  65. public const ushort MB_REGISTER_NUM_DIGIT_REGION = 8;
  66. public const ushort MB_REGISTER_ADD_FTIND_REGION = 0x008B; //指针水表的首尾同刻度坐标
  67. public const ushort MB_REGISTER_NUM_FTIND_REGION = 4;
  68. public const ushort MB_REGISTER_ADD_UPLOAD_REDIND = 0x008D; //是否上传红色指针部分
  69. public const ushort MB_REGISTER_NUM_UPLOAD_REDIND = 1;
  70. public const ushort MB_REGISTER_ADD_SAMPLE_INTERVAL = 0x008F; //采样间隔
  71. public const ushort MB_REGISTER_NUM_SAMPLE_INTERVAL = 1;
  72. public const ushort MB_REGISTER_ADD_SAMPLE_FIRST_HOUR = 0x0091; //首次采样时间
  73. public const ushort MB_REGISTER_NUM_SAMPLE_FIRST_HOUR = 1;
  74. public static List<int> AddressList = new List<int>
  75. {
  76. 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20
  77. };
  78. }
  79. }