Commit 08e63472 authored by Pavel Vainerman's avatar Pavel Vainerman

(MOdbusMaster): попытка исправить ошибку начальной инициализации датчика связи

parent 91bfea38
......@@ -3187,7 +3187,12 @@ bool MBExchange::RTUDevice::checkRespond( std::shared_ptr<DebugStream>& mblog )
<< " ]"
<< endl;
return ((prev != resp_state || resp_force ) && resp_ptInit.checkTime());
// если только что прошла "инициализация" возвращаем true
// чтобы датчик в SM обновился..
if( trInitOK.hi(resp_ptInit.checkTime()) )
return true;
return ((prev != resp_state || resp_force ) && trInitOK.get() );
}
// -----------------------------------------------------------------------------
void MBExchange::updateRespondSensors()
......
......@@ -203,6 +203,7 @@ class MBExchange:
bool resp_state;
bool resp_invert;
bool resp_force = { false };
Trigger trInitOK; // триггер для "инициализации"
std::atomic<unsigned int> numreply; // количество успешных запросов..
std::atomic<unsigned int> prev_numreply;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment