IQRF SPI library for Arduino  Version 1.2
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Macros
iqrf_library.h
Go to the documentation of this file.
1 
22 #ifndef _IQRFLIBRARY_H
23 #define _IQRFLIBRARY_H
24 
25 #if defined(__PIC32MX__)
26 #include <WProgram.h>
27 #else
28 #include <Arduino.h>
29 #endif
30 
31 #include <stddef.h>
32 #include <stdint.h>
33 
34 #include "CallbackFunctions.h"
35 #include "IQRF.h"
36 #include "IQRFBuffers.h"
37 #include "IQRFCallbacks.h"
38 #include "IQRFCRC.h"
39 #include "IQRFPackets.h"
40 #include "IQRFSettings.h"
41 #include "IQRFSPI.h"
42 #include "IQRFTR.h"
43 #include "IQSPI.h"
44 
48 typedef struct {
49  uint16_t osVersion;
50  uint16_t osBuild;
51  uint32_t moduleId;
52  uint16_t mcuType;
53  uint16_t moduleType;
54  uint16_t fcc;
55  uint8_t moduleInfoRawData[8];
56 } trInfo_t;
57 
61 typedef struct {
62  uint8_t packetId;
63  uint8_t spiCmd;
64  uint8_t *dataBuffer;
65  uint8_t dataLength;
66  uint8_t unallocationFlag;
68 
69 extern uint8_t dataLength;
70 extern trInfo_t trInfo;
71 
73 void IQRF_Driver();
74 void IQRF_GetRxData(uint8_t *dataBuffer, uint8_t dataLength);
75 uint8_t TR_SendSpiPacket(uint8_t spiCmd, uint8_t *dataBuffer, uint8_t dataLength, uint8_t unallocationFlag);
76 void trIdentify();
77 
78 #endif
uint16_t osVersion
OS version.
Definition: iqrf_library.h:49
uint16_t fcc
FCC.
Definition: iqrf_library.h:54
void IQRF_Init(IQRFCallbacks::rxCallback_t rxCallback, IQRFCallbacks::txCallback_t txCallback)
Definition: iqrf_library.cpp:68
void(* txCallback_t)(uint8_t packetId, uint8_t packetResult)
SPI TX data callback function type.
Definition: IQRFCallbacks.h:32
uint32_t moduleId
Module ID.
Definition: iqrf_library.h:51
void IQRF_GetRxData(uint8_t *dataBuffer, uint8_t dataLength)
Definition: iqrf_library.cpp:221
void(* rxCallback_t)(void)
SPI RX data callback function type.
Definition: IQRFCallbacks.h:30
uint8_t TR_SendSpiPacket(uint8_t spiCmd, uint8_t *dataBuffer, uint8_t dataLength, uint8_t unallocationFlag)
Definition: iqrf_library.cpp:341
uint16_t moduleType
Module type.
Definition: iqrf_library.h:53
Definition: iqrf_library.h:61
uint8_t unallocationFlag
Unallocation flag.
Definition: iqrf_library.h:66
uint8_t packetId
Packet ID.
Definition: iqrf_library.h:62
Definition: iqrf_library.h:48
uint16_t osBuild
OS build.
Definition: iqrf_library.h:50
uint8_t dataLength
Data lenght.
Definition: iqrf_library.h:65
void IQRF_Driver()
Definition: iqrf_library.cpp:95
trInfo_t trInfo
TR info structure.
Definition: iqrf_library.cpp:35
uint8_t dataLength
Data length.
Definition: iqrf_library.cpp:33
void trIdentify()
Definition: iqrf_library.cpp:321
uint8_t spiCmd
SPI command.
Definition: iqrf_library.h:63
uint8_t * dataBuffer
Pointer to data buffrt.
Definition: iqrf_library.h:64
uint16_t mcuType
MCU tyle.
Definition: iqrf_library.h:52