Доделал последнюю версию
This commit is contained in:
@@ -1,29 +1,19 @@
|
||||
#include <SimpleModbusSlave.h>
|
||||
|
||||
|
||||
#define PIN1 7 // Пин для проверки состояния
|
||||
#define PIN1 7 // Контролируемый пин
|
||||
|
||||
// Настройка регистров
|
||||
#define TOTAL_REGS 1
|
||||
uint16_t regs[TOTAL_REGS] = {0}; // Один регистр для хранения статуса
|
||||
uint16_t regs[TOTAL_REGS] = {0}; // Один регистр для хранения состояния пина
|
||||
|
||||
SimpleModbusSlave slave(1); // Инициализация Slave с ID 1
|
||||
SimpleModbusSlave slave(1); // Инициализация устройства с ID 1
|
||||
|
||||
void setup() {
|
||||
// Настройка пина как вход
|
||||
pinMode(PIN1, INPUT);
|
||||
|
||||
// Настройка скорости передачи данных
|
||||
slave.setup(115200); // Установка скорости передачи данных 115200
|
||||
pinMode(PIN1, INPUT); // Настроим пин как вход
|
||||
slave.setup(115200); // Установим скорость передачи данных 115200 бод
|
||||
}
|
||||
|
||||
void loop() {
|
||||
// Чтение состояния пина
|
||||
int pinState = digitalRead(PIN1);
|
||||
|
||||
// Установка регистра в 1, если пин HIGH, иначе 0
|
||||
regs[0] = (pinState == HIGH) ? 1 : 0;
|
||||
|
||||
// Запуск цикла Modbus slave
|
||||
slave.loop(regs, TOTAL_REGS);
|
||||
regs[0] = digitalRead(PIN1); // Читаем состояние пина и записываем в регистр
|
||||
slave.loop(regs, TOTAL_REGS); // Обрабатываем Modbus-запросы
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user