Modification to fsfw for ESBO TMTC interface: removal of subcounter from data field header in tmPacketBase and TmPacketMinimal,
changes to the maximum tm packet size in the tmPacketBase. Changed Time Stamp size to 6 bytes.
This commit is contained in:
parent
2f511523cb
commit
26d6b32ef6
@ -17,7 +17,7 @@ public:
|
|||||||
//! This is a mission-specific constant and determines the total
|
//! This is a mission-specific constant and determines the total
|
||||||
//! size reserved for timestamps.
|
//! size reserved for timestamps.
|
||||||
//! TODO: Default define in FSFWConfig ?
|
//! TODO: Default define in FSFWConfig ?
|
||||||
static const uint8_t MISSION_TIMESTAMP_SIZE = 8;
|
static const uint8_t MISSION_TIMESTAMP_SIZE = 6;
|
||||||
virtual ReturnValue_t addTimeStamp(uint8_t* buffer,
|
virtual ReturnValue_t addTimeStamp(uint8_t* buffer,
|
||||||
const uint8_t maxSize) = 0;
|
const uint8_t maxSize) = 0;
|
||||||
virtual ~TimeStamperIF() {}
|
virtual ~TimeStamperIF() {}
|
||||||
|
@ -89,7 +89,7 @@ uint8_t* TmPacketBase::getPacketTimeRaw() const{
|
|||||||
}
|
}
|
||||||
|
|
||||||
void TmPacketBase::initializeTmPacket(uint16_t apid, uint8_t service,
|
void TmPacketBase::initializeTmPacket(uint16_t apid, uint8_t service,
|
||||||
uint8_t subservice, uint8_t packetSubcounter) {
|
uint8_t subservice , uint8_t packetSubcounter) {
|
||||||
//Set primary header:
|
//Set primary header:
|
||||||
initSpacePacketHeader(false, true, apid);
|
initSpacePacketHeader(false, true, apid);
|
||||||
//Set data Field Header:
|
//Set data Field Header:
|
||||||
@ -104,7 +104,7 @@ void TmPacketBase::initializeTmPacket(uint16_t apid, uint8_t service,
|
|||||||
tmData->data_field.version_type_ack = 0b00010000;
|
tmData->data_field.version_type_ack = 0b00010000;
|
||||||
tmData->data_field.service_type = service;
|
tmData->data_field.service_type = service;
|
||||||
tmData->data_field.service_subtype = subservice;
|
tmData->data_field.service_subtype = subservice;
|
||||||
tmData->data_field.subcounter = packetSubcounter;
|
//tmData->data_field.subcounter = packetSubcounter;
|
||||||
//Timestamp packet
|
//Timestamp packet
|
||||||
if (checkAndSetStamper()) {
|
if (checkAndSetStamper()) {
|
||||||
timeStamper->addTimeStamp(tmData->data_field.time,
|
timeStamper->addTimeStamp(tmData->data_field.time,
|
||||||
|
@ -21,7 +21,7 @@ struct PUSTmDataFieldHeader {
|
|||||||
uint8_t version_type_ack;
|
uint8_t version_type_ack;
|
||||||
uint8_t service_type;
|
uint8_t service_type;
|
||||||
uint8_t service_subtype;
|
uint8_t service_subtype;
|
||||||
uint8_t subcounter;
|
// uint8_t subcounter;
|
||||||
// uint8_t destination;
|
// uint8_t destination;
|
||||||
uint8_t time[TimeStamperIF::MISSION_TIMESTAMP_SIZE];
|
uint8_t time[TimeStamperIF::MISSION_TIMESTAMP_SIZE];
|
||||||
};
|
};
|
||||||
@ -58,7 +58,7 @@ public:
|
|||||||
sizeof(PUSTmDataFieldHeader) + 2);
|
sizeof(PUSTmDataFieldHeader) + 2);
|
||||||
//! Maximum size of a TM Packet in this mission.
|
//! Maximum size of a TM Packet in this mission.
|
||||||
//! TODO: Make this dependant on a config variable.
|
//! TODO: Make this dependant on a config variable.
|
||||||
static const uint32_t MISSION_TM_PACKET_MAX_SIZE = 2048;
|
static const uint32_t MISSION_TM_PACKET_MAX_SIZE = 1024;
|
||||||
//! First byte of secondary header for PUS-A packets.
|
//! First byte of secondary header for PUS-A packets.
|
||||||
//! TODO: Maybe also support PUS-C via config?
|
//! TODO: Maybe also support PUS-C via config?
|
||||||
static const uint8_t VERSION_NUMBER_BYTE_PUS_A = 0b00010000;
|
static const uint8_t VERSION_NUMBER_BYTE_PUS_A = 0b00010000;
|
||||||
@ -165,8 +165,7 @@ protected:
|
|||||||
* @param subservice PUS Subservice
|
* @param subservice PUS Subservice
|
||||||
* @param packetSubcounter Additional subcounter used.
|
* @param packetSubcounter Additional subcounter used.
|
||||||
*/
|
*/
|
||||||
void initializeTmPacket(uint16_t apid, uint8_t service, uint8_t subservice,
|
void initializeTmPacket(uint16_t apid, uint8_t service, uint8_t subservice, uint8_t packetSubcounter);
|
||||||
uint8_t packetSubcounter);
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* With this method, the packet data pointer can be redirected to another
|
* With this method, the packet data pointer can be redirected to another
|
||||||
|
@ -18,9 +18,9 @@ uint8_t TmPacketMinimal::getSubService() {
|
|||||||
return tm_data->data_field.service_subtype;
|
return tm_data->data_field.service_subtype;
|
||||||
}
|
}
|
||||||
|
|
||||||
uint8_t TmPacketMinimal::getPacketSubcounter() {
|
/*uint8_t TmPacketMinimal::getPacketSubcounter() {
|
||||||
return tm_data->data_field.subcounter;
|
return tm_data->data_field.subcounter;
|
||||||
}
|
}*/
|
||||||
|
|
||||||
ReturnValue_t TmPacketMinimal::getPacketTime(timeval* timestamp) {
|
ReturnValue_t TmPacketMinimal::getPacketTime(timeval* timestamp) {
|
||||||
if (timestampInterpreter == NULL) {
|
if (timestampInterpreter == NULL) {
|
||||||
|
@ -42,12 +42,12 @@ public:
|
|||||||
* Returns the subcounter.
|
* Returns the subcounter.
|
||||||
* @return the subcounter of the Data Field Header.
|
* @return the subcounter of the Data Field Header.
|
||||||
*/
|
*/
|
||||||
uint8_t getPacketSubcounter();
|
// uint8_t getPacketSubcounter();
|
||||||
struct PUSTmMinimalHeader {
|
struct PUSTmMinimalHeader {
|
||||||
uint8_t version_type_ack;
|
uint8_t version_type_ack;
|
||||||
uint8_t service_type;
|
uint8_t service_type;
|
||||||
uint8_t service_subtype;
|
uint8_t service_subtype;
|
||||||
uint8_t subcounter;
|
// uint8_t subcounter;
|
||||||
};
|
};
|
||||||
|
|
||||||
ReturnValue_t getPacketTime(timeval* timestamp);
|
ReturnValue_t getPacketTime(timeval* timestamp);
|
||||||
|
Loading…
Reference in New Issue
Block a user