wip CspComIF

This commit is contained in:
2020-12-14 08:42:48 +01:00
parent c502ee1172
commit 551a8f021b
9 changed files with 727 additions and 42 deletions

View File

@ -4,6 +4,13 @@
#include <fsfw/devicehandlers/DeviceHandlerBase.h>
#include <bsp_linux/comIF/cookies/P60DockCookie.h>
namespace P60Dock{
/* The maximum size of a reply from the P60 dock. Maximum size is reached
* when retrieving the full parameter configuration table. 412 bytes of
* payload data and 12 bytes of CSP header data. */
static const uint16_t MAX_REPLY_LENGTH = 424;
}
class P60DockHandler: public DeviceHandlerBase {
public:
P60DockHandler(object_id_t objectId, object_id_t comIF,
@ -26,15 +33,16 @@ protected:
private:
static const uint8_t MAX_PACKET_LEN = 36;
/* Device commands are derived from the rparam.h of the gomspace lib */
static const DeviceCommandId_t PING = 0x1; //!< [EXPORT] : [COMMAND]
static const DeviceCommandId_t READ_MODULE_CFG = 0x71; //!< [EXPORT] : [COMMAND]
static const DeviceCommandId_t READ_HK = 0x72; //!< [EXPORT] : [COMMAND]
static const DeviceCommandId_t NONE = 0x2; // Set when no command is pending
static const DeviceCommandId_t PARAM_GET = 0x00; //!< [EXPORT] : [COMMAND]
static const DeviceCommandId_t PARAM_SET = 0xFF; //!< [EXPORT] : [COMMAND]
uint16_t moduleCfgTableSize = 412;
uint8_t calibrationTableSize = 174;
uint8_t hkTableSize = 188;
P60DockCookie* p60DockCookie;
uint8_t rememberRequestedSize = 0;
uint8_t rememberCommandId = NONE;
uint8_t cspPacket[MAX_PACKET_LEN];
};
#endif /* MISSION_DEVICES_P60DOCKHANDLER_H_ */