| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 |
- /*
- * @file AppBridge.h
- * @brief Deklarácia modulu nBus Slave z pohľadu nBus Bridge
- * @date Mar 3, 2025
- * @author Juraj Dudak
- */
- #ifndef SRC_APPSLAVE_H_
- #define SRC_APPSLAVE_H_
- #include "inttypes.h"
- #include "dataframe.h"
- #include "NbusCommunicator.h"
- /** Adresa slave modulu, bez špecifikácie adresy konktrétneho senzora. */
- #define SLAVE_ADDRESS_MODULE 0
- class NbusSlave {
- private:
- NbusCommunicator* _communicator;
- Nbus_pdu _pdu;
- uint8_t _sensor_cache[16];
- uint8_t _sensor_count;
- public:
- NbusSlave(uint8_t, NbusCommunicator*);
- NbusSlave();
- virtual ~NbusSlave();
- void setCommunicator(NbusCommunicator*);
- void setAddress(uint8_t);
- bool isActive();
- uint8_t getSensorAddress();
- uint8_t getModuleAddress();
- DataFrame* nbus_echo(uint8_t *echo_data, uint8_t size);
- DataFrame* nbus_sensor_count();
- DataFrame* nbus_sensor_type(uint8_t);
- DataFrame* nbus_sensor_format(uint8_t);
- DataFrame* nbus_module_info();
- DataFrame* nbus_sensor_getData(uint8_t sensor_address);
- DataFrame* nbus_sensor_parameter(uint8_t, uint8_t);
- DataFrame* nbus_sensor_parameters(uint8_t);
- uint8_t nbus_get_sensor_count(bool check_hw = false);
- };
- #ifdef __cplusplus
- extern "C"
- {
- #endif
- #ifdef __cplusplus
- }
- #endif
- #endif /* SRC_APPSLAVE_H_ */
|