Update I2C
This commit is contained in:
@@ -15,6 +15,12 @@
|
||||
#define SPEEDYBOI_ADDR 0x18
|
||||
#define ACCD_X_MSB 0x03
|
||||
|
||||
typedef struct {
|
||||
enum {Vooruit, Achteruit} richting;
|
||||
double timestamp;
|
||||
int8_t g;
|
||||
} pakketje;
|
||||
|
||||
void * GSensorTask(void *args) {
|
||||
|
||||
I2C_Handle speedyBoy;
|
||||
@@ -25,6 +31,8 @@ void * GSensorTask(void *args) {
|
||||
int8_t buffer_rcv;
|
||||
uint8_t buffer_send = ACCD_X_MSB;
|
||||
|
||||
double timer = 0;
|
||||
|
||||
I2C_Transaction RW_Trans;
|
||||
RW_Trans.slaveAddress = SPEEDYBOI_ADDR;
|
||||
RW_Trans.writeBuf = &buffer_send;
|
||||
@@ -35,6 +43,16 @@ void * GSensorTask(void *args) {
|
||||
while(1) {
|
||||
I2C_transfer(speedyBoy, &RW_Trans);
|
||||
// publish read into mailbox (defined in mqtt.c)
|
||||
timer++;
|
||||
|
||||
pakketje pakket;
|
||||
pakket.richting = (buffer_rcv < 0) ? Achteruit : Vooruit;
|
||||
pakket.timestmp = timer;
|
||||
pakket.g = abs(buffer_rsv);
|
||||
|
||||
MQTTPublish(pakket);
|
||||
|
||||
usleep(100000U);
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
||||
Reference in New Issue
Block a user