read temperature test
This commit is contained in:
@ -6,9 +6,9 @@
|
||||
*/
|
||||
|
||||
#include <fsfw/serviceinterface/ServiceInterfaceStream.h>
|
||||
#include "P60DockTestTask.h"
|
||||
|
||||
#include <csp/drivers/can_socketcan.h>
|
||||
#include "P60DockTestTask.h"
|
||||
|
||||
P60DockTestTask::P60DockTestTask(object_id_t objectId_):
|
||||
SystemObject(objectId_){
|
||||
@ -23,6 +23,10 @@ ReturnValue_t P60DockTestTask::performOperation(uint8_t operationCode) {
|
||||
if(sendPacket() != HasReturnvaluesIF::RETURN_OK){
|
||||
return HasReturnvaluesIF::RETURN_FAILED;
|
||||
}
|
||||
|
||||
if(getParameters() != HasReturnvaluesIF::RETURN_OK){
|
||||
return HasReturnvaluesIF::RETURN_FAILED;
|
||||
}
|
||||
return HasReturnvaluesIF::RETURN_OK;
|
||||
}
|
||||
|
||||
@ -74,17 +78,23 @@ ReturnValue_t P60DockTestTask::sendPacket(void){
|
||||
|
||||
|
||||
ReturnValue_t P60DockTestTask::getParameters(void) {
|
||||
gs_param_table_instance_t node_hk;
|
||||
// int result = rparam_get_full_table(&node_hk, p60dock_node, P60_PORT_RPARAM,
|
||||
uint32_t timeout;
|
||||
int result = p60dock_get_hk(&node_hk, p60dock_node, timeout);
|
||||
uint32_t timeout = 1000;
|
||||
node_hk.rows = (gs_param_table_row_t*)p60dock_hk;
|
||||
node_hk.id = P60DOCK_HK;
|
||||
node_hk.row_count = p60dock_hk_count;
|
||||
node_hk.memory_size = P60DOCK_HK_SIZE;
|
||||
node_hk.memory = hk_mem;
|
||||
int result = gs_rparam_get_full_table(&node_hk, p60dockAddress, node_hk.id,
|
||||
GS_RPARAM_MAGIC_CHECKSUM, timeout);
|
||||
|
||||
if (result != 0) {
|
||||
sif::info << "Error retrieving P60 Dock housekeeping\n" << std::endl;
|
||||
return HasReturnvaluesIF::RETURN_FAILED;
|
||||
} else {
|
||||
uint8_t tableOffsetTemperature = 0x44;
|
||||
uint8_t temperature[2];
|
||||
size_t parameterSize = 2;
|
||||
int16_t temperature[2];
|
||||
size_t parameterSize = sizeof(temperature);
|
||||
uint32_t flags = 0;
|
||||
result = gs_param_get_data((gs_param_table_instance_t*) &node_hk,
|
||||
tableOffsetTemperature, temperature, parameterSize, flags);
|
||||
|
@ -11,12 +11,11 @@
|
||||
#include <fsfw/returnvalues/HasReturnvaluesIF.h>
|
||||
#include <fsfw/tasks/ExecutableObjectIF.h>
|
||||
#include <fsfw/objectmanager/SystemObject.h>
|
||||
#include <p60dock.h>
|
||||
|
||||
extern "C" {
|
||||
#include <p60dock.h>
|
||||
#include <gs/param/internal/types.h>
|
||||
#include <csp/csp.h>
|
||||
#include <csp/interfaces/csp_if_can.h>
|
||||
}
|
||||
|
||||
|
||||
class P60DockTestTask: public SystemObject,
|
||||
@ -40,6 +39,7 @@ private:
|
||||
|
||||
uint8_t hk_mem[P60DOCK_HK_SIZE];
|
||||
uint8_t p60dock_node = 4;
|
||||
gs_param_table_instance_t node_hk;
|
||||
|
||||
ReturnValue_t sendPacket(void);
|
||||
ReturnValue_t initializeCSPStack(void);
|
||||
|
Reference in New Issue
Block a user