Angefangen zweiten Sensor Readout zu implementieren. Funktioniert auch teils
This commit is contained in:
@@ -1,13 +1,33 @@
|
||||
|
||||
#include <vector>
|
||||
#include <cstdint>
|
||||
#include <windows.h>
|
||||
#include <iostream>
|
||||
|
||||
struct Quaternion {
|
||||
float w, x, y, z;
|
||||
};
|
||||
|
||||
#pragma pack(push, 1)
|
||||
typedef struct {
|
||||
uint8_t StartByte;
|
||||
uint8_t SensorAddress;
|
||||
float qw;
|
||||
float qx;
|
||||
float qy;
|
||||
float qz;
|
||||
uint8_t EndByte;
|
||||
} QuaternionData;
|
||||
#pragma pack(pop)
|
||||
|
||||
HANDLE initSerialPort (const char* portName, DWORD baudRate);
|
||||
bool readSerialData (HANDLE hSerial, char* buffer, DWORD bufferSize, DWORD& bytesRead);
|
||||
bool readSerialData (HANDLE hSerial, uint8_t* buffer, DWORD bufferSize, DWORD& bytesRead);
|
||||
bool parseQuaternion(const std::string& data, Quaternion& quat);
|
||||
void checkPacketSize();
|
||||
void printBufferHex(const std::vector<uint8_t>& buffer, const std::string& label);
|
||||
|
||||
int linux_initSerialPort();
|
||||
bool linux_readSerialData(int serialPort, char* buffer);
|
||||
bool linux_readSerialData(int serialPort, char* buffer);
|
||||
|
||||
|
||||
std::vector<uint8_t> extractPacket(std::vector<uint8_t> &buffer);
|
||||
bool parseBinaryPacket(std::vector<uint8_t> &packetData, Quaternion &quat);
|
||||
Reference in New Issue
Block a user