68 lines
2.0 KiB
C++
68 lines
2.0 KiB
C++
/*!\file
|
|
* \brief \todo Îïèñàíèå ôàéëà.
|
|
*/
|
|
/*
|
|
* SlipCommunicationSetup.h
|
|
*
|
|
* Created on: 13 èþí. 2019 ã.
|
|
* Author: titov
|
|
*/
|
|
|
|
#ifndef SOURCE_APPLICATION_SERVICE_SLIPCOMMUNICATIONSETUP_H_
|
|
#define SOURCE_APPLICATION_SERVICE_SLIPCOMMUNICATIONSETUP_H_
|
|
|
|
#include "../ISetupStep.hh"
|
|
|
|
#include "../../peripheral/IUartPort.hh"
|
|
#include "../../peripheral/IGpio.hh"
|
|
#include "../../systemic/ISignal.hh"
|
|
#include "../../systemic/IStatus.hh"
|
|
|
|
#include <exception>
|
|
|
|
namespace application { namespace board {
|
|
|
|
struct SlipCommunicationSetup : public ISetupStep {
|
|
|
|
typedef systemic::ISignal ISignal;
|
|
typedef systemic::IStatus IStatus;
|
|
|
|
peripheral::IGpio * re = nullptr;
|
|
peripheral::IGpio * de = nullptr;
|
|
peripheral::IUartPort * port = nullptr;
|
|
ISignal* mpSigAddrBus = NULL;//
|
|
IStatus* mpStsAddrValid = NULL;//
|
|
|
|
bool input( Environment & env );
|
|
void build( Environment & env );
|
|
|
|
struct Links {
|
|
uint16_t uart_id; //!<Èíòåðôåéñ Uart.
|
|
Environment::GpioId gpio_de_id; //!<Âûâîä óïðàâëåíèå ïðèåìî-ïåðåäàò÷èêîì: DE.
|
|
Environment::GpioId gpio_re_id; //!<Âûâîä óïðàâëåíèå ïðèåìî-ïåðåäàò÷èêîì: RE.
|
|
Environment::SignalId address_bus_id;//!< Cèñòåìíûé èäåíòèôèêàòîð cèãíàëà ñîäåðæàùèé çíà÷åíèå(äèï-ïåðåêëþ÷àòåëè) àäðåñà íà øèíå
|
|
Environment::StatusId address_valid_id;//!< Cèñòåìíûé èäåíòèôèêàòîð ñòàòóñà ãîòîâíîñòè çíà÷åíèÿ ñ äèï-ïåðåêëþ÷àòåëåé
|
|
|
|
uint16_t slip_com_id; //!<Ïðîòîêîë SlipCommuncation.
|
|
};
|
|
|
|
const Links & links;
|
|
|
|
struct Setting {
|
|
unsigned short address;//!< Àäðåñ íà øèíå (åñëè == 0 òî àäðåñ îïðåäåëÿåòñÿ links.sigAddr)
|
|
bool active_de; //!<Àêòèâíûé óðîâåíü âûâîäà óïðàâëåíèÿ DE.
|
|
bool active_re; //!<Àêòèâíûé óðîâåíü âûâîäà óïðàâëåíèÿ RE.
|
|
};
|
|
|
|
const Setting & cfg;
|
|
const configuration::ProcessConfig & params;
|
|
|
|
SlipCommunicationSetup( const Links & links, const Setting & hardware, const configuration::ProcessConfig & proc );
|
|
};
|
|
|
|
}}
|
|
|
|
|
|
|
|
#endif /* SOURCE_APPLICATION_SERVICE_SLIPCOMMUNICATIONSETUP_H_ */
|