Я пытаюсь запрограммировать многоканальный dmx-контроллер на моем arduino.Моя идея состоит в том, чтобы настроить некоторые поти, прочитать их значение и отправить их в виде сигнала dmx512.Теперь я хотел бы получить некоторую обратную связь для моего кода, так как я еще не знаком с dmx и arduino.
Вот мой код:
#include <DMXSerial.h>
#define dmxModePin 2 // RS485 data direction control
#define BREAKSPEED 100000
#define DMXSPEED 250000
#define BREAKFORMAT SERIAL_8E1
#define DMXFORMAT SERIAL_8N2
int in_Ch1 = 1;
int in_Ch2 = 2;
int in_Ch3 = 3;
/*...*/
int val_Ch1 = 0;
int val_Ch2 = 0;
int val_Ch3 = 0;
/*...*/
void setup() {
DMXSerial.init(DMXController, dmxModePin); // start the DMX master on the UART
DMXSerial.maxChannel(60);
pinMode(in_Ch1,INPUT);
pinMode(in_Ch2,INPUT);
pinMode(in_Ch3,INPUT);
/*...*/
}
void loop() {
int val_Cha1 = analogRead(in_Ch1);
int val_Cha2 = analogRead(in_Ch2);
int val_Cha3 = analogRead(in_Ch3);
/*...*/
DMXSerial.write(in_Ch1, val_Ch1);
DMXSerial.write(in_Ch2, val_Ch2);
DMXSerial.write(in_Ch3, val_Ch3);
/*...*/
delayMicroseconds(2000);
}
Поскольку необходимое оборудование для тестированияэто все еще в пути, я не мог проверить это.