UniSet
1.4.0
|
#include <ModbusRTUSlave.h>
Открытые члены | |
ModbusRTUSlave (const std::string dev, bool use485=false, bool tr_ctl=false) | |
ModbusRTUSlave (ComPort *com) | |
void | setSpeed (ComPort::Speed s) |
void | setSpeed (const std::string s) |
ComPort::Speed | getSpeed () |
virtual ModbusRTU::mbErrCode | receive (ModbusRTU::ModbusAddr addr, timeout_t msecTimeout) |
virtual void | cleanupChannel () |
virtual void | terminate () |
Защищенные члены | |
virtual int | getNextData (unsigned char *buf, int len) |
virtual void | setChannelTimeout (timeout_t msec) |
virtual ModbusRTU::mbErrCode | sendData (unsigned char *buf, int len) |
Защищенные данные | |
std::string | dev |
ComPort * | port |
bool | myport |
Modbus RTU slave mode Класс не самостоятельный и содержит "чисто" виртуальные функции для реализации ответов на запросы.
Разобратся с тем как отвечать на неправильные запросы! Формат ответных сообщений!!! Коды ошибок!!!
Доработать terminate, чтобы можно было прервать ожидание
int ModbusRTUSlave::getNextData | ( | unsigned char * | buf, |
int | len | ||
) | [protected, virtual] |
get next data block from channel ot recv buffer
begin | - get from position |
buf | - buffer for data |
len | - size of buf |
Замещает ModbusServer.
Перекрестные ссылки port.
mbErrCode ModbusRTUSlave::receive | ( | ModbusRTU::ModbusAddr | addr, |
timeout_t | msecTimeout | ||
) | [virtual] |
обработать очередное сообщение
addr | - адрес для которого принимать сообщения |
msecTimeout | - время ожидания прихода очередного сообщения в мсек. |
Замещает ModbusServer.
Перекрестные ссылки ModbusRTU::ModbusHeader::addr, ModbusRTU::ModbusHeader::func, ModbusServer::recv(), ModbusServer::send() и ModbusRTU::ErrorRetMessage::transport_msg().
Используется в MBSlave::execute().
void ModbusRTUSlave::setChannelTimeout | ( | timeout_t | msec | ) | [protected, virtual] |
set timeout for receive data
Замещает ModbusServer.
Перекрестные ссылки port и UniSetTimer::WaitUpTime.
std::string ModbusRTUSlave::dev [protected] |
устройство
ComPort* ModbusRTUSlave::port [protected] |
устройство для работы с COM-портом
Используется в getNextData() и setChannelTimeout().