modbus_master.h 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. #ifndef __MODBUS_MASTER_H__
  2. #define __MODBUS_MASTER_H__
  3. #include "modbus_common.h"
  4. //默认周期命令池大小为20
  5. //可以在编译器predefine里面重定义大小
  6. #ifndef MODBUS_MASTER_PERIOD_POOL_SIZE
  7. #define MODBUS_MASTER_PERIOD_POOL_SIZE 20
  8. #endif
  9. //默认周期命令池大小为20
  10. //可以在编译器predefine里面重定义大小
  11. #ifndef MODBUS_MASTER_ONCE_POOL_SIZE
  12. #define MODBUS_MASTER_ONCE_POOL_SIZE 20
  13. #endif
  14. void modbus_master_init(void);
  15. int modbus_master_run(modbus_master_t * master, unsigned char * request,unsigned char * respone, int length);
  16. modbus_master_period_cmd_t * modbus_master_add_period_cmd(
  17. modbus_master_t * master,
  18. unsigned char cmdcode,
  19. unsigned char id,
  20. unsigned char cmd,
  21. unsigned short address,
  22. unsigned short number,
  23. unsigned char * value,
  24. int respone_timeout,
  25. void (*on_respone)(modbus_master_cmd_t * , unsigned char * ,int),
  26. int period
  27. );
  28. modbus_master_once_cmd_t * modbus_master_add_once_cmd(
  29. modbus_master_t * master,
  30. unsigned char cmdcode,
  31. unsigned char id,
  32. unsigned char cmd,
  33. unsigned short address,
  34. unsigned short number,
  35. unsigned char * value,
  36. int respone_timeout,
  37. void (*on_respone)(modbus_master_cmd_t * , unsigned char * ,int)
  38. );
  39. #endif