CC13xx Driver Library
rf_hs_cmd.h
Go to the documentation of this file.
1 /******************************************************************************
2 * Filename: rf_hs_cmd.h
3 * Revised: $ $
4 * Revision: $ $
5 *
6 * Description: CC26xx/CC13xx API for high-speed mode commands
7 *
8 * Copyright (c) 2015 - 2016, Texas Instruments Incorporated
9 * All rights reserved.
10 *
11 * Redistribution and use in source and binary forms, with or without
12 * modification, are permitted provided that the following conditions are met:
13 *
14 * 1) Redistributions of source code must retain the above copyright notice,
15 * this list of conditions and the following disclaimer.
16 *
17 * 2) Redistributions in binary form must reproduce the above copyright notice,
18 * this list of conditions and the following disclaimer in the documentation
19 * and/or other materials provided with the distribution.
20 *
21 * 3) Neither the name of the ORGANIZATION nor the names of its contributors may
22 * be used to endorse or promote products derived from this software without
23 * specific prior written permission.
24 *
25 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
26 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
27 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
28 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
29 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
30 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
31 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
32 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
33 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
34 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
35 * POSSIBILITY OF SUCH DAMAGE.
36 *
37 ******************************************************************************/
38 
39 #ifndef __HS_CMD_H
40 #define __HS_CMD_H
41 
42 #ifndef __RFC_STRUCT
43 #ifdef __GNUC__
44 #define __RFC_STRUCT __attribute__ ((aligned (4)))
45 #else
46 #define __RFC_STRUCT
47 #endif
48 #endif
49 
52 
55 
56 #include <stdint.h>
57 #include <driverlib/rf_mailbox.h>
59 
64 
67 #define CMD_HS_TX 0x3841
70  uint16_t commandNo;
71  uint16_t status;
72  rfc_radioOp_t *pNextOp;
76  struct {
77  uint8_t triggerType:4;
78  uint8_t bEnaCmd:1;
79  uint8_t triggerNo:2;
81  uint8_t pastTrig:1;
82  } startTrigger;
84  struct {
85  uint8_t rule:4;
86  uint8_t nSkip:4;
87  } condition;
88  struct {
89  uint8_t bFsOff:1;
90  uint8_t bUseCrc:1;
92  uint8_t bVarLen:1;
94  uint8_t bCheckQAtEnd:1;
96  } pktConf;
98  uint8_t __dummy0;
100 };
101 
103 
106 #define CMD_HS_RX 0x3842
109  uint16_t commandNo;
110  uint16_t status;
111  rfc_radioOp_t *pNextOp;
115  struct {
116  uint8_t triggerType:4;
117  uint8_t bEnaCmd:1;
118  uint8_t triggerNo:2;
120  uint8_t pastTrig:1;
121  } startTrigger;
123  struct {
124  uint8_t rule:4;
125  uint8_t nSkip:4;
126  } condition;
127  struct {
128  uint8_t bFsOff:1;
129  uint8_t bUseCrc:1;
131  uint8_t bVarLen:1;
133  uint8_t bRepeatOk:1;
135  uint8_t bRepeatNok:1;
137  uint8_t addressMode:2;
139  } pktConf;
143  struct {
144  uint8_t bAutoFlushCrcErr:1;
145  uint8_t bIncludeLen:1;
146  uint8_t bIncludeCrc:1;
147  uint8_t bAppendStatus:1;
148  uint8_t bAppendTimestamp:1;
149  } rxConf;
150  uint16_t maxPktLen;
151  uint16_t address0;
152  uint16_t address1;
153  uint8_t __dummy0;
154  struct {
155  uint8_t triggerType:4;
156  uint8_t bEnaCmd:1;
157  uint8_t triggerNo:2;
159  uint8_t pastTrig:1;
160  } endTrigger;
165 };
166 
168 
172 
174  uint16_t nRxOk;
175  uint16_t nRxNok;
176  uint16_t nRxAborted;
177  uint8_t nRxBufFull;
178  int8_t lastRssi;
180 };
181 
183 
187 
189  struct {
190  uint16_t rssi:8;
191  uint16_t bCrcErr:1;
192  uint16_t addressInd:2;
194  } status;
198 };
199 
201 
204 #endif
dataQueue_t * pQueue
Pointer to receive queue.
Definition: rf_hs_cmd.h:163
High-Speed Receive Command.
Definition: rf_hs_cmd.h:108
uint8_t __dummy0
Definition: rf_hs_cmd.h:153
uint16_t address0
Address.
Definition: rf_hs_cmd.h:151
ratmr_t startTime
Absolute or relative start time (depending on the value of startTrigger)
Definition: rf_hs_cmd.h:114
High-Speed Transmit Command.
Definition: rf_hs_cmd.h:69
ratmr_t startTime
Absolute or relative start time (depending on the value of startTrigger)
Definition: rf_hs_cmd.h:75
struct __RFC_STRUCT rfc_hsRxStatus_s rfc_hsRxStatus_t
Definition: rf_hs_cmd.h:63
uint16_t nRxOk
Number of packets that have been received with CRC OK.
Definition: rf_hs_cmd.h:174
uint16_t nRxNok
Number of packets that have been received with CRC error.
Definition: rf_hs_cmd.h:175
ratmr_t timeStamp
Time stamp of last received packet.
Definition: rf_hs_cmd.h:179
uint16_t status
An integer telling the status of the command. This value is updated by the radio CPU during operation...
Definition: rf_hs_cmd.h:71
uint16_t address1
Address (set equal to address0 to accept only one address)
Definition: rf_hs_cmd.h:152
struct __RFC_STRUCT rfc_radioOp_s rfc_radioOp_t
Definition: rf_common_cmd.h:60
#define __RFC_STRUCT
Definition: rf_hs_cmd.h:46
struct __RFC_STRUCT rfc_CMD_HS_RX_s rfc_CMD_HS_RX_t
Definition: rf_hs_cmd.h:61
struct __RFC_STRUCT rfc_hsRxOutput_s rfc_hsRxOutput_t
Definition: rf_hs_cmd.h:62
uint16_t status
An integer telling the status of the command. This value is updated by the radio CPU during operation...
Definition: rf_hs_cmd.h:110
uint8_t __dummy0
Definition: rf_hs_cmd.h:98
uint32_t ratmr_t
Type definition for RAT.
Definition: rf_mailbox.h:59
struct __RFC_STRUCT rfc_CMD_HS_TX_s rfc_CMD_HS_TX_t
Definition: rf_hs_cmd.h:60
int8_t lastRssi
RSSI of last received packet.
Definition: rf_hs_cmd.h:178
rfc_hsRxOutput_t * pOutput
Pointer to output structure.
Definition: rf_hs_cmd.h:164
uint16_t commandNo
The command ID number 0x3842.
Definition: rf_hs_cmd.h:109
uint16_t nRxAborted
Number of packets not received due to illegal length or address mismatch.
Definition: rf_hs_cmd.h:176
uint16_t maxPktLen
Packet length for fixed length; maximum packet length for variable length.
Definition: rf_hs_cmd.h:150
dataQueue_t * pQueue
Pointer to Tx queue.
Definition: rf_hs_cmd.h:99
Type definition for a data queue.
Definition: rf_mailbox.h:64
uint8_t nRxBufFull
Number of packets that have been received and discarded due to lack of buffer space.
Definition: rf_hs_cmd.h:177
ratmr_t endTime
Time used together with endTrigger for ending the operation.
Definition: rf_hs_cmd.h:162
uint16_t commandNo
The command ID number 0x3841.
Definition: rf_hs_cmd.h:70