Implemented RX on Node
This commit is contained in:
@@ -0,0 +1,33 @@
|
||||
#pragma once
|
||||
#include <stdint.h>
|
||||
#include <strings.h>
|
||||
|
||||
enum GobotRPCNumber {
|
||||
VACUM = 0x8
|
||||
};
|
||||
|
||||
enum GobotRPCTypes {
|
||||
REQUEST = 0b00,
|
||||
RESPONSE = 0b01,
|
||||
ERROR = 0b10
|
||||
};
|
||||
|
||||
struct GobotRPCPackage_Req_Vacum {
|
||||
uint8_t enable : 8;
|
||||
};
|
||||
|
||||
#define GobotRPC_Package_DATA_OFFSET 2
|
||||
#define CALC_SIZE_GobotRPC_PACKAGE(data_len) (data_len + GobotRPC_Package_DATA_OFFSET + 2)
|
||||
|
||||
struct GobotRPCHeaderInfo {
|
||||
public:
|
||||
GobotRPCNumber number;
|
||||
GobotRPCTypes type;
|
||||
size_t len;
|
||||
};
|
||||
|
||||
void assembleGobotRPCHeader(char * buffer, GobotRPCNumber number, GobotRPCTypes data_size, size_t);
|
||||
void assembleCRC(char * buffer, size_t data_len);
|
||||
bool checkCRC(char * buffer, size_t data_len);
|
||||
|
||||
GobotRPCHeaderInfo extractGobotRPCHeader(char * buffer);
|
||||
Reference in New Issue
Block a user