Modbus.h 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. ////////// Definiere Header //////////
  2. #ifndef MODBUS_H
  3. #define MODBUS_H
  4. ////////// Inkludierte Header-Dateien //////////
  5. #include <Arduino.h>
  6. #include <SoftwareSerial.h>
  7. ////////// Definierte Symbole //////////
  8. #define BAUDRATE 9600
  9. #define RX_PIN A0
  10. #define TX_PIN A1
  11. #define TIMEOUT 1000
  12. #define TIMEOUT_NACK 3000
  13. #define TIMEOUT_NACHRICHT 10000
  14. #define LRCVALUE 0x00 // LRC16 Startvalue
  15. #define MAX_DATA 250
  16. #define PAYLOAD 241
  17. #define BROADCAST_ADRESSE 00
  18. #define NUM_ADDRESSES 8
  19. ////////// Definierte Funktionen //////////
  20. void RS485_write(byte* buffer, byte bufflen);
  21. void PC_read(byte* buffer, byte* bufflen);
  22. void PC_write(byte* buffer, byte bufflen);
  23. short berechneLRC(byte* buffer, byte start, byte end);
  24. void RS485_read(byte* buffer, byte* bufflen);
  25. void send_Nachricht(byte address[3],byte message[241]);
  26. void allgemein_packet(byte address[3],byte function[2]);
  27. void sendMasterToken(byte newMasterAddress[3]);
  28. //void CLEAR(char* array,byte BUFFLEN);
  29. int pruefeLRC(byte* buffer,byte bufflen);
  30. bool findAddress(const char* address);
  31. ////////// externe Globale Variablen //////////
  32. ////////// Header Ende //////////
  33. #endif