IoT - Kubus / Mbed 2 deprecated Kubus

Dependencies:   mbed nRF24L01P

Committer:
sbarzowski
Date:
Tue Jan 17 12:28:29 2017 +0100
Revision:
44:d15530b37144
Parent:
41:7f1a763a26fb
Parent:
37:1251e35fe43e
Child:
51:090149c4aa28
merge

Who changed what in which revision?

UserRevisionLine numberNew contents of line
pannaannap 6:98401b545e0c 1 #ifndef JNP3_COMMON_H
pannaannap 6:98401b545e0c 2 #define JNP3_COMMON_H
pannaannap 6:98401b545e0c 3
pannaanna 37:1251e35fe43e 4 #include <sstream>
pannaanna 2:6541a391bdbd 5 #include <stdint.h>
pannaanna 2:6541a391bdbd 6 #include <string>
pannaanna 2:6541a391bdbd 7 #include "nRF24L01P.h"
pannaannap 5:fbd5b1e953e6 8 #include "mbed.h"
pannaanna 2:6541a391bdbd 9
sbarzowski 41:7f1a763a26fb 10 #define DATA_RATE NRF24L01P_DATARATE_250_KBPS
pannaanna 2:6541a391bdbd 11 #define POWER NRF24L01P_TX_PWR_ZERO_DB
pannaanna 2:6541a391bdbd 12 #define CHANNEL 2
pannaanna 2:6541a391bdbd 13 #define TRANSFER_SIZE 32
pannaanna 2:6541a391bdbd 14
pannaannap 27:27cffdb2e9d3 15 const unsigned long long MASTER_ADDRESS = 0xBACDFF00;
pannaannap 27:27cffdb2e9d3 16 const unsigned long long BOARD1_ADDRESS = 0xBACDFF01;
pannaannap 27:27cffdb2e9d3 17 const unsigned long long BOARD2_ADDRESS = 0xBACDFF02;
pannaannap 27:27cffdb2e9d3 18 const unsigned long long BOARD3_ADDRESS = 0xBACDFF03;
pannaanna 2:6541a391bdbd 19
pannaanna 2:6541a391bdbd 20 enum SENSOR_TYPE {
pannaannap 4:aa25f65395e3 21 PIR1 = 1,
pannaannap 4:aa25f65395e3 22 PIR2 = 2,
pannaannap 4:aa25f65395e3 23 DISTANCE = 3,
pannaannap 4:aa25f65395e3 24 SOUND = 4,
pannaanna 2:6541a391bdbd 25 };
pannaanna 2:6541a391bdbd 26
pannaanna 2:6541a391bdbd 27 struct Data {
Bartosz Stebel 8:1861d0eef60a 28 Data(uint8_t type_, int32_t i_val)
Bartosz Stebel 8:1861d0eef60a 29 : type(type_) {
Bartosz Stebel 8:1861d0eef60a 30 value.i = i_val;
Bartosz Stebel 8:1861d0eef60a 31 }
Bartosz Stebel 8:1861d0eef60a 32
Bartosz Stebel 8:1861d0eef60a 33 Data(uint8_t type_, float f_val)
Bartosz Stebel 8:1861d0eef60a 34 : type(type_) {
Bartosz Stebel 8:1861d0eef60a 35 value.f = f_val;
Bartosz Stebel 8:1861d0eef60a 36 }
sbarzowski 40:40d4161fe1ad 37
pannaanna 2:6541a391bdbd 38 std::string serialize();
Bartosz Stebel 8:1861d0eef60a 39 bool deserialize(std::string str);
sbarzowski 40:40d4161fe1ad 40
pannaanna 2:6541a391bdbd 41 uint8_t type;
Bartosz Stebel 8:1861d0eef60a 42 union {
Bartosz Stebel 8:1861d0eef60a 43 int32_t i;
Bartosz Stebel 8:1861d0eef60a 44 float f;
Bartosz Stebel 8:1861d0eef60a 45 } value;
pannaanna 2:6541a391bdbd 46 };
pannaanna 2:6541a391bdbd 47
pannaanna 37:1251e35fe43e 48 std::string str_hex(const char* text, int len);
pannaanna 37:1251e35fe43e 49
pannaanna 2:6541a391bdbd 50 void radio_init(nRF24L01P* radio, unsigned long long rx_address,
pannaanna 2:6541a391bdbd 51 unsigned long long tx_address);
pannaannap 6:98401b545e0c 52
Bartosz Stebel 8:1861d0eef60a 53 #endif /* JNP3_COMMON */