22#ifndef DETERMINISTICESPASYNCWEBSERVER_PROFIBUS_H
23#define DETERMINISTICESPASYNCWEBSERVER_PROFIBUS_H
29#if DETWS_ENABLE_PROFIBUS
34 static constexpr uint8_t PB_SD1 = 0x10;
35 static constexpr uint8_t PB_SD2 = 0x68;
36 static constexpr uint8_t PB_SD3 = 0xA2;
37 static constexpr uint8_t PB_SD4 = 0xDC;
38 static constexpr uint8_t PB_ED = 0x16;
40 static constexpr uint8_t PB_FC_REQUEST_FDL_STATUS = 0x49;
41 static constexpr uint8_t PB_FC_SRD_LOW = 0x6C;
42 static constexpr uint8_t PB_FC_SRD_HIGH = 0x7C;
46uint8_t detws_pb_fcs(
const uint8_t *bytes,
size_t len);
51size_t detws_pb_build_sd1(uint8_t da, uint8_t sa, uint8_t fc, uint8_t *out,
size_t cap);
59size_t detws_pb_build_sd2(uint8_t da, uint8_t sa, uint8_t fc,
const uint8_t *data,
size_t data_len, uint8_t *out,
74bool detws_pb_parse(
const uint8_t *frame,
size_t len, PbTelegram *out);
User-facing configuration for DeterministicESPAsyncWebServer.