30 lines
544 B
C
30 lines
544 B
C
/*
|
|
* communication.h
|
|
*
|
|
* Describes the data packet sent for each channel
|
|
*/
|
|
#pragma once
|
|
#include "interface.h"
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
typedef struct {
|
|
uint16_t poti[4];
|
|
uint16_t slider;
|
|
uint8_t button:1;
|
|
} message_t;
|
|
|
|
/// END OF MESSAGE == MSB is set
|
|
#define IS_EOM(b) (b & (0x80))
|
|
|
|
|
|
// defines the message length of a slave message in bytes
|
|
// NOTE: sizeof(message_t) is 12 because of the 4-byte alignment criteria
|
|
#define SLAVE_MESSAGE_LEN (5*2+1)
|
|
|
|
#ifdef __cplusplus
|
|
} // end extern "C"
|
|
#endif
|