mirror of
https://github.com/HendrikRauh/dmx-interface.git
synced 2025-07-05 13:48:53 +00:00
37 lines
730 B
C++
37 lines
730 B
C++
#include <inttypes.h>
|
|
#include <HardwareSerial.h>
|
|
|
|
#ifndef ESPDMX_h
|
|
#define ESPDMX_h
|
|
|
|
#define DMXSPEED 250000
|
|
#define DMXFORMAT SERIAL_8N2
|
|
#define BREAKSPEED 83333
|
|
#define BREAKFORMAT SERIAL_8N1
|
|
#define DMX_DEFAULT_PORT Serial0
|
|
#define DMX_DEFAULT_TX 21
|
|
#define DMX_DEFAULT_RX 33
|
|
#define DMXCHANNELS 512
|
|
|
|
class DMXESPSerial
|
|
{
|
|
public:
|
|
int sendPin;
|
|
int recvPin;
|
|
HardwareSerial *port;
|
|
bool dmxStarted;
|
|
uint8_t dmxDataStore[DMXCHANNELS + 1];
|
|
|
|
void init(int pinSend, int pinRecv, HardwareSerial& port);
|
|
uint8_t read(int channel);
|
|
uint8_t* readAll();
|
|
void write(int channel, uint8_t value);
|
|
void update();
|
|
void end();
|
|
|
|
private:
|
|
// Member variables
|
|
HardwareSerial* _Serial;
|
|
};
|
|
|
|
#endif
|