Stair56E UART project
This commit is contained in:
@@ -0,0 +1,64 @@
|
||||
/*!
|
||||
* \file main.h
|
||||
*
|
||||
* \brief The head file of main.c
|
||||
*
|
||||
* \copyright Revised BSD License, see section \ref LICENSE.
|
||||
*
|
||||
* \code
|
||||
*
|
||||
* _ __ _ ________ _
|
||||
* | |/ /(_)___ / ____/ /_ (_)___
|
||||
* | // / __ \/ / / __ \/ / __ \
|
||||
* / |/ / / / / /___/ / / / / /_/ /
|
||||
* /_/|_/_/_/ /_/\____/_/ /_/_/ .___/
|
||||
* /_/
|
||||
* (C) 2022-2025 XinChip
|
||||
*
|
||||
* \endcode
|
||||
*
|
||||
* \author ( XinChip ) Alex-J
|
||||
*
|
||||
* \author ( XinChip )
|
||||
*/
|
||||
|
||||
/* Define to prevent recursive inclusion -------------------------------------*/
|
||||
#ifndef __MAIN_H__
|
||||
#define __MAIN_H__
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*-----------------------------------------------------------------------------------
|
||||
INCLUDE HEADE FILES
|
||||
------------------------------------------------------------------------------------*/
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
|
||||
#include "xc6xxx.h"
|
||||
|
||||
|
||||
/*------------------------------------------------------------------------------------
|
||||
Macros
|
||||
-------------------------------------------------------------------------------------*/
|
||||
|
||||
/*------------------------------------------------------------------------------------
|
||||
TypeDef
|
||||
-------------------------------------------------------------------------------------*/
|
||||
|
||||
/*------------------------------------------------------------------------------------
|
||||
Global Variables
|
||||
-------------------------------------------------------------------------------------*/
|
||||
|
||||
/*------------------------------------------------------------------------------------
|
||||
Exported Functions
|
||||
-------------------------------------------------------------------------------------*/
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* __MAIN_H__ */
|
||||
|
||||
@@ -0,0 +1,65 @@
|
||||
/*!
|
||||
* \file gpio.h
|
||||
*
|
||||
* \brief The head file of gpio.c
|
||||
*
|
||||
* \copyright Revised BSD License, see section \ref LICENSE.
|
||||
*
|
||||
* \code
|
||||
*
|
||||
* _ __ _ ________ _
|
||||
* | |/ /(_)___ / ____/ /_ (_)___
|
||||
* | // / __ \/ / / __ \/ / __ \
|
||||
* / |/ / / / / /___/ / / / / /_/ /
|
||||
* /_/|_/_/_/ /_/\____/_/ /_/_/ .___/
|
||||
* /_/
|
||||
* (C) 2022-2025 XinChip
|
||||
*
|
||||
* \endcode
|
||||
*
|
||||
* \author ( XinChip ) Alex-J
|
||||
*
|
||||
* \author ( XinChip )
|
||||
*/
|
||||
|
||||
/* Define to prevent recursive inclusion -------------------------------------*/
|
||||
#ifndef __GPIO_H__
|
||||
#define __GPIO_H__
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
#endif
|
||||
|
||||
/*-----------------------------------------------------------------------------------
|
||||
INCLUDE HEADE FILES
|
||||
------------------------------------------------------------------------------------*/
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <stdint.h>
|
||||
|
||||
/*------------------------------------------------------------------------------------
|
||||
Macros
|
||||
-------------------------------------------------------------------------------------*/
|
||||
#define RF_ADV_TX_EVT 0x0001
|
||||
#define RF_ADV_RX_EVT 0x0002
|
||||
|
||||
/*------------------------------------------------------------------------------------
|
||||
TypeDef
|
||||
-------------------------------------------------------------------------------------*/
|
||||
|
||||
/*------------------------------------------------------------------------------------
|
||||
Global Variables
|
||||
-------------------------------------------------------------------------------------*/
|
||||
|
||||
/*------------------------------------------------------------------------------------
|
||||
Exported Functions
|
||||
-------------------------------------------------------------------------------------*/
|
||||
void RF24_ADV_Demo_Init(uint8_t task_id);
|
||||
uint16_t RF24_ADV_ProcessEvent(uint8_t task_id, uint16_t events);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* __GPIO_H__ */
|
||||
@@ -0,0 +1,178 @@
|
||||
|
||||
#ifndef SDK_ADV_CONFIG_H
|
||||
#define SDK_ADV_CONFIG_H
|
||||
|
||||
// <<< Use Configuration Wizard in Context Menu >>>\n
|
||||
|
||||
// <h> Xinc_RF
|
||||
|
||||
// <o> XINCX_ADV_MODE - RF Tx or Rx Mode
|
||||
// <0=> TX Mode
|
||||
// <1=> RX Mode
|
||||
#ifndef XINCX_ADV_MODE
|
||||
#define XINCX_ADV_MODE 0
|
||||
#endif
|
||||
|
||||
// <o> XINCX_ADV_ADDR_L - rf Address Set
|
||||
#ifndef XINCX_ADV_ADDR_L
|
||||
#define XINCX_ADV_ADDR_L 0x71917d6b
|
||||
#endif
|
||||
|
||||
// <o> XINCX_ADV_ADDR_H - rf Address Set
|
||||
#ifndef XINCX_ADV_ADDR_H
|
||||
#define XINCX_ADV_ADDR_H 0x00
|
||||
#endif
|
||||
|
||||
// <o> XINCX_ADV_CHANNEL - ADV Channel Set
|
||||
// <2402=> ADV_CHANNEL_37
|
||||
// <2426=> ADV_CHANNEL_38
|
||||
// <2480=> ADV_CHANNEL_39
|
||||
|
||||
#ifndef XINCX_ADV_CHANNEL
|
||||
#define XINCX_ADV_CHANNEL 2480
|
||||
#endif
|
||||
|
||||
// <o> XINCX_RF_POWER - rf Power Set
|
||||
#ifndef XINCX_POWER
|
||||
#define XINCX_POWER 0x08
|
||||
#endif
|
||||
|
||||
// <o> XINCX_RF_NVIC_MODE - RF NVIC Mode
|
||||
|
||||
// <0=> Disable
|
||||
// <1=> Enable
|
||||
#ifndef XINCX_RF_ADV_NVIC_MODE
|
||||
#define XINCX_RF_ADV_NVIC_MODE 1
|
||||
#endif
|
||||
|
||||
// <o> XINCX_RF_TX_ADDR_WIDTH - RF Tx Addr Width
|
||||
// <4=> 4 Bytes
|
||||
#ifndef XINCX_RF_TX_ADDR_WIDTH
|
||||
#define XINCX_RF_TX_ADDR_WIDTH 4
|
||||
#endif
|
||||
|
||||
// <o> XINCX_RF_TRANS_RATE - RF Transmission Rate Config
|
||||
|
||||
// <0x02=> 1M
|
||||
#ifndef XINCX_RF_TRANS_RATE
|
||||
#define XINCX_RF_TRANS_RATE 0x02
|
||||
#endif
|
||||
|
||||
// <e> XINCX_RF_CRC_ENABLE - RF CRC Enable
|
||||
//==========================================================
|
||||
#ifndef XINCX_RF_CRC_ENABLE
|
||||
#define XINCX_RF_CRC_ENABLE 0
|
||||
#endif
|
||||
// </e>
|
||||
// <o> XINCX_2_4G_CRC_BYTE - 2.4g CRC Bytes Set
|
||||
|
||||
// <1=> 1 Byte
|
||||
// <2=> 2 Bytes
|
||||
#ifndef XINCX_2_4G_CRC_BYTE
|
||||
#define XINCX_2_4G_CRC_BYTE 2
|
||||
#endif
|
||||
|
||||
|
||||
// <h> XINCX_ADV_FEATURE_PARAM - ADV Feature Parameters
|
||||
//==========================================================
|
||||
// <q> XINCX_ADV_LONG_PLD - ADV Long Payload Feature
|
||||
#ifndef XINCX_ADV_LONG_PLD
|
||||
#define XINCX_ADV_LONG_PLD 1
|
||||
#endif
|
||||
|
||||
// <q> XINCX_ADV_FEC - ADV FEC&Interleave Feature
|
||||
#ifndef XINCX_ADV_FEC
|
||||
#define XINCX_ADV_FEC 0
|
||||
#endif
|
||||
|
||||
// <q> XINCX_ADV_WHITEN - ADV Whiten Feature
|
||||
#ifndef XINCX_ADV_WHITEN
|
||||
#define XINCX_ADV_WHITEN 0
|
||||
#endif
|
||||
|
||||
// <q> XINCX_ADV_DPL - ADV Dynamic Payload Length Feature
|
||||
#ifndef XINCX_ADV_DPL
|
||||
#define XINCX_ADV_DPL 0
|
||||
#endif
|
||||
// <q> XINCX_ADV_ACK_PAY - 2.4g Payload on ACK
|
||||
#ifndef XINCX_ADV_ACK_PAY
|
||||
#define XINCX_ADV_ACK_PAY 1
|
||||
#endif
|
||||
|
||||
// <q> XINCX_ADV_DYN_ACK - 2.4g W_TX_PAYLOAD_NOACK Command
|
||||
#ifndef XINCX_ADV_DYN_ACK
|
||||
#define XINCX_ADV_DYN_ACK 0
|
||||
#endif
|
||||
|
||||
// </h>
|
||||
|
||||
// </h>
|
||||
// <h> XINCX_PIPE_PIPE_RX_PAYLEN - ADV Pipe Rx Payload Len
|
||||
//==========================================================
|
||||
// <o> XINCX_ADV_PIPE0_LEN - ADV Pipe0 Rx Payload Len
|
||||
#ifndef XINCX_ADV_PIPE0_LEN
|
||||
#define XINCX_ADV_PIPE0_LEN 42
|
||||
#endif
|
||||
|
||||
// <o> XINCX_ADV_PIPE1_LEN - ADV Pipe1 Rx Payload Len
|
||||
#ifndef XINCX_ADV_PIPE1_LEN
|
||||
#define XINCX_ADV_PIPE1_LEN 0
|
||||
#endif
|
||||
|
||||
// <o> XINCX_ADV_PIPE2_LEN - ADV Pipe2 Rx Payload Len
|
||||
#ifndef XINCX_ADV_PIPE2_LEN
|
||||
#define XINCX_ADV_PIPE2_LEN 0
|
||||
#endif
|
||||
|
||||
// <o> XINCX_ADV_PIPE3_LEN - ADV Pipe3 Rx Payload Len
|
||||
#ifndef XINCX_ADV_PIPE3_LEN
|
||||
#define XINCX_ADV_PIPE3_LEN 0
|
||||
#endif
|
||||
|
||||
// <o> XINCX_ADV_PIPE4_LEN - ADV Pipe4 Rx Payload Len
|
||||
#ifndef XINCX_ADV_PIPE4_LEN
|
||||
#define XINCX_ADV_PIPE4_LEN 0
|
||||
#endif
|
||||
|
||||
// <o> XINCX_ADV_PIPE5_LEN - ADV Pipe5 Rx Payload Len
|
||||
#ifndef XINCX_ADV_PIPE5_LEN
|
||||
#define XINCX_ADV_PIPE5_LEN 0
|
||||
#endif
|
||||
// </h>
|
||||
// <h> XINC_ADV_MAC_ADDR
|
||||
// <o> XINC_ADV_MAC_ADDR_0
|
||||
#ifndef XINC_ADV_MAC_ADDR_0
|
||||
#define XINC_ADV_MAC_ADDR_0 0xa6
|
||||
#endif
|
||||
|
||||
// <o> XINC_ADV_MAC_ADDR_1
|
||||
#ifndef XINC_ADV_MAC_ADDR_1
|
||||
#define XINC_ADV_MAC_ADDR_1 0xa5
|
||||
#endif
|
||||
|
||||
// <o> XINC_ADV_MAC_ADDR_2
|
||||
#ifndef XINC_ADV_MAC_ADDR_2
|
||||
#define XINC_ADV_MAC_ADDR_2 0xa4
|
||||
#endif
|
||||
|
||||
// <o> XINC_ADV_MAC_ADDR_3
|
||||
#ifndef XINC_ADV_MAC_ADDR_3
|
||||
#define XINC_ADV_MAC_ADDR_3 0xa3
|
||||
#endif
|
||||
|
||||
// <o> XINC_ADV_MAC_ADDR_4
|
||||
#ifndef XINC_ADV_MAC_ADDR_4
|
||||
#define XINC_ADV_MAC_ADDR_4 0xa2
|
||||
#endif
|
||||
|
||||
// <o> XINC_ADV_MAC_ADDR_5
|
||||
#ifndef XINC_ADV_MAC_ADDR_5
|
||||
#define XINC_ADV_MAC_ADDR_5 0xc1
|
||||
#endif
|
||||
// </h>
|
||||
|
||||
// <<< end of configuration section >>>
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
@@ -0,0 +1,574 @@
|
||||
#ifndef SDK_CONFIG_H
|
||||
#define SDK_CONFIG_H
|
||||
|
||||
// <<< Use Configuration Wizard in Context Menu >>>
|
||||
// <e> XINCX_RF_NORMAL_PEACKET_MODE - RF normal packet mode
|
||||
// <i> Configure the frame format, which is a static packet format and can only communicate in one direction.
|
||||
#ifndef XINCX_RF_NORMAL_PACKET_MODE
|
||||
#define XINCX_RF_NORMAL_PACKET_MODE 1
|
||||
#endif
|
||||
|
||||
#if (XINCX_RF_NORMAL_PACKET_MODE == 1)
|
||||
|
||||
// XINCX_2_4G_TRANS_PARAM - 2.4g Transmission Parameters
|
||||
//==========================================================
|
||||
|
||||
// <o> XINCX_RF_MODE - RF Tx or Rx Mode
|
||||
// <0=> TX Mode
|
||||
// <1=> RX Mode
|
||||
// <2=> TRX Mode
|
||||
#ifndef XINCX_RF_MODE
|
||||
#define XINCX_RF_MODE 1
|
||||
#endif
|
||||
|
||||
// <o> XINCX_RF_TRANS_RATE - RF Transmission Rate Config
|
||||
// <0x02=> 1M
|
||||
// <0x0A=> 2M
|
||||
// <0x22=> 250k
|
||||
// <0x2A=> 125k
|
||||
#ifndef XINCX_RF_TRANS_RATE
|
||||
#define XINCX_RF_TRANS_RATE 0x02
|
||||
#endif
|
||||
|
||||
// <o> XINCX_2_4G_CHANNEL - 2.4g Channel Set
|
||||
#ifndef XINCX_2_4G_CHANNEL
|
||||
#define XINCX_2_4G_CHANNEL 2421
|
||||
#endif
|
||||
|
||||
// <o> XINCX_RF_TX_ADDR_WIDTH - RF Tx Addr Width
|
||||
// <3=> 3 Bytes
|
||||
// <4=> 4 Bytes
|
||||
// <5=> 5 Bytes
|
||||
#ifndef XINCX_RF_TX_ADDR_WIDTH
|
||||
#define XINCX_RF_TX_ADDR_WIDTH 5
|
||||
#endif
|
||||
|
||||
// <o> XINCX_2_4G_ADDR_L - rf Address Set
|
||||
#ifndef XINCX_2_4G_ADDR_L
|
||||
#define XINCX_2_4G_ADDR_L 0xC3A78941
|
||||
#endif
|
||||
|
||||
// <o> XINCX_2_4G_ADDR_H - rf Address Set
|
||||
#ifndef XINCX_2_4G_ADDR_H
|
||||
#define XINCX_2_4G_ADDR_H 0x25
|
||||
#endif
|
||||
|
||||
// <o> XINCX_RF_POWER - rf Power Set
|
||||
// <1=> -10dbm
|
||||
// <2=> -9dbm
|
||||
// <4=> -4dbm
|
||||
// <6=> 0dbm
|
||||
// <8=> 3dbm
|
||||
// <9=> 5dbm
|
||||
// <12=> 7dbm
|
||||
// <14=> 8dbm
|
||||
// <16=> 9dbm
|
||||
// <19=> 10dbm
|
||||
// <24=> 11dbm
|
||||
// <30=> 12dbm
|
||||
// <36=> 13dbm
|
||||
#ifndef XINCX_POWER
|
||||
#define XINCX_POWER 0x00008
|
||||
#endif
|
||||
|
||||
// <o> XINCX_RF_NVIC_MODE - RF NVIC Mode
|
||||
// <0=> Disable
|
||||
// <1=> Enable
|
||||
#ifndef XINCX_RF_NVIC_MODE
|
||||
#define XINCX_RF_NVIC_MODE 0
|
||||
#endif
|
||||
|
||||
// XINCX_2_4G_PIPE_RX_PAYLEN - 2.4g Pipe Rx Payload Len
|
||||
// <i> Payload length. Configuration of the load length during communication.
|
||||
//==========================================================
|
||||
// XINCX_2_4G_PIPE0_LEN - 2.4g Pipe0 Rx Payload Len
|
||||
// #ifndef XINCX_2_4G_PIPE0_LEN
|
||||
// #define XINCX_2_4G_PIPE0_LEN 32
|
||||
// #endif
|
||||
|
||||
// XINCX_2_4G_PIPE1_LEN - 2.4g Pipe1 Rx Payload Len
|
||||
#ifndef XINCX_2_4G_PIPE1_LEN
|
||||
#define XINCX_2_4G_PIPE1_LEN 32
|
||||
#endif
|
||||
|
||||
// XINCX_2_4G_PIPE2_LEN - 2.4g Pipe2 Rx Payload Len
|
||||
#ifndef XINCX_2_4G_PIPE2_LEN
|
||||
#define XINCX_2_4G_PIPE2_LEN 32
|
||||
#endif
|
||||
|
||||
// XINCX_2_4G_PIPE3_LEN - 2.4g Pipe3 Rx Payload Len
|
||||
#ifndef XINCX_2_4G_PIPE3_LEN
|
||||
#define XINCX_2_4G_PIPE3_LEN 32
|
||||
#endif
|
||||
|
||||
// XINCX_2_4G_PIPE4_LEN - 2.4g Pipe4 Rx Payload Len
|
||||
#ifndef XINCX_2_4G_PIPE4_LEN
|
||||
#define XINCX_2_4G_PIPE4_LEN 32
|
||||
#endif
|
||||
|
||||
// XINCX_2_4G_PIPE5_LEN - 2.4g Pipe5 Rx Payload Len
|
||||
#ifndef XINCX_2_4G_PIPE5_LEN
|
||||
#define XINCX_2_4G_PIPE5_LEN 32
|
||||
#endif
|
||||
|
||||
//
|
||||
|
||||
// XINCX_RF_CRC_ENABLE - RF CRC Enable
|
||||
//==========================================================
|
||||
#ifndef XINCX_RF_CRC_ENABLE
|
||||
#define XINCX_RF_CRC_ENABLE 1
|
||||
#endif
|
||||
|
||||
// <o> XINCX_2_4G_CRC_BYTE - 2.4g CRC Bytes Set
|
||||
// <0=> 0 Byte
|
||||
// <1=> 1 Byte
|
||||
// <2=> 2 Bytes
|
||||
#ifndef XINCX_2_4G_CRC_BYTE
|
||||
#define XINCX_2_4G_CRC_BYTE 0
|
||||
#endif
|
||||
|
||||
// XINCX_2_4G_FEATURE_PARAM - 2.4g Feature Parameters
|
||||
//==========================================================
|
||||
// XINCX_2_4G_GUARD_CFG - 2.4g Long Payload Feature
|
||||
#ifndef XINCX_2_4G_GUARD_CFG
|
||||
#define XINCX_2_4G_GUARD_CFG 0
|
||||
#endif
|
||||
|
||||
// XINCX_2_4G_LONG_PLD_TYPE - 2.4g Long Pld Type
|
||||
#ifndef XINCX_2_4G_LONG_PLD_TYPE
|
||||
#define XINCX_2_4G_LONG_PLD_TYPE 0
|
||||
#endif
|
||||
|
||||
// XINCX_2_4G_PREAMBLE_NUM - 2.4g Preamble
|
||||
#ifndef XINCX_2_4G_PREAMBLE_NUM
|
||||
#define XINCX_2_4G_PREAMBLE_NUM 0
|
||||
#endif
|
||||
|
||||
// XINCX_2_4G_PREAMBLE_TYPE - 2.4g Preamble Type
|
||||
#ifndef XINCX_2_4G_PREAMBLE_TYPE
|
||||
#define XINCX_2_4G_PREAMBLE_TYPE 0
|
||||
#endif
|
||||
|
||||
// XINCX_2_4G_CRC_SCOPE_GUARD - 2.4g CRC Scope Guard
|
||||
#ifndef XINCX_2_4G_CRC_SCOPE_GUARD
|
||||
#define XINCX_2_4G_CRC_SCOPE_GUARD 0
|
||||
#endif
|
||||
|
||||
// XINCX_2_4G_CRC_SCOPE_HEADER - 2.4g CRC Scope Header
|
||||
#ifndef XINCX_2_4G_CRC_SCOPE_HEADER
|
||||
#define XINCX_2_4G_CRC_SCOPE_HEADER 1
|
||||
#endif
|
||||
|
||||
// XINCX_2_4G_CRC_SCOPE_ADDR - 2.4g CRC Scope Addr
|
||||
#ifndef XINCX_2_4G_CRC_SCOPE_ADDR
|
||||
#define XINCX_2_4G_CRC_SCOPE_ADDR 1
|
||||
#endif
|
||||
|
||||
// <q> XINCX_2_4G_LONG_PLD - 2.4g Long Payload Feature
|
||||
#ifndef XINCX_2_4G_LONG_PLD
|
||||
#define XINCX_2_4G_LONG_PLD 0
|
||||
#endif
|
||||
|
||||
// <q> XINCX_2_4G_FEC - 2.4g FEC&Interleave Feature
|
||||
#ifndef XINCX_2_4G_FEC
|
||||
#define XINCX_2_4G_FEC 0
|
||||
#endif
|
||||
|
||||
// <q> XINCX_2_4G_WHITEN - 2.4g Whiten Feature
|
||||
#ifndef XINCX_2_4G_WHITEN
|
||||
#define XINCX_2_4G_WHITEN 0
|
||||
#endif
|
||||
|
||||
// XINCX_2_4G_DPL - 2.4g Dynamic Payload Length Feature
|
||||
#ifndef XINCX_2_4G_DPL
|
||||
#define XINCX_2_4G_DPL 0
|
||||
#endif
|
||||
|
||||
// XINCX_2_4G_ACK_PAY - 2.4g Payload on ACK
|
||||
#ifndef XINCX_2_4G_ACK_PAY
|
||||
#define XINCX_2_4G_ACK_PAY 0
|
||||
#endif
|
||||
|
||||
// XINCX_2_4G_DYN_ACK - 2.4g W_TX_PAYLOAD_NOACK Command
|
||||
#ifndef XINCX_2_4G_DYN_ACK
|
||||
#define XINCX_2_4G_DYN_ACK 0
|
||||
#endif
|
||||
|
||||
//
|
||||
|
||||
// XINCX_2_4G_TRANS_PARAM - 2.4g Transmission Parameters
|
||||
//==========================================================
|
||||
|
||||
// XINCX_2_4G_RETRANS_CNT - 2.4g Retransmit Count
|
||||
// <i> Number of retransmissions. The maximum number of times a hardware can automatically transmit an ACK if it does
|
||||
// not receive the correct ACK.
|
||||
#ifndef XINCX_2_4G_RETRANS_CNT
|
||||
#define XINCX_2_4G_RETRANS_CNT 0
|
||||
#endif
|
||||
|
||||
// XINCX_2_4G_RETRANS_DELAY - 2.4g Retransmission Delay
|
||||
// <i> Retransmission delay. For 32 bytes of data, the minimum configuration is 500 us for 1 Mbit/s and 1500 us for 250
|
||||
// kbit/s.
|
||||
#ifndef XINCX_2_4G_RETRANS_DELAY
|
||||
#define XINCX_2_4G_RETRANS_DELAY 0
|
||||
#endif
|
||||
|
||||
// XINCX_2_4G_DYNPD - 2.4g dynpd
|
||||
#ifndef XINCX_2_4G_DYNPD
|
||||
#define XINCX_2_4G_DYNPD 0x00
|
||||
#endif
|
||||
|
||||
// XINCX_2_4G_AUTO_ACK - 2.4g Auto Acknowledgement
|
||||
//==========================================================
|
||||
// XINCX_2_4G_PIPE0_ENAA - 2.4g Pipe0 Auto Ack
|
||||
#ifndef XINCX_2_4G_PIPE0_ENAA
|
||||
#define XINCX_2_4G_PIPE0_ENAA 0
|
||||
#endif
|
||||
|
||||
// XINCX_2_4G_PIPE1_ENAA - 2.4g Pipe1 Auto Ack
|
||||
#ifndef XINCX_2_4G_PIPE1_ENAA
|
||||
#define XINCX_2_4G_PIPE1_ENAA 0
|
||||
#endif
|
||||
|
||||
// XINCX_2_4G_PIPE2_ENAA - 2.4g Pipe2 Auto Ack
|
||||
#ifndef XINCX_2_4G_PIPE2_ENAA
|
||||
#define XINCX_2_4G_PIPE2_ENAA 0
|
||||
#endif
|
||||
|
||||
// XINCX_2_4G_PIPE3_ENAA - 2.4g Pipe3 Auto Ack
|
||||
#ifndef XINCX_2_4G_PIPE3_ENAA
|
||||
#define XINCX_2_4G_PIPE3_ENAA 0
|
||||
#endif
|
||||
|
||||
// XINCX_2_4G_PIPE4_ENAA - 2.4g Pipe4 Auto Ack
|
||||
#ifndef XINCX_2_4G_PIPE4_ENAA
|
||||
#define XINCX_2_4G_PIPE4_ENAA 0
|
||||
#endif
|
||||
|
||||
// XINCX_2_4G_PIPE5_ENAA - 2.4g Pipe5 Auto Ack
|
||||
#ifndef XINCX_2_4G_PIPE5_ENAA
|
||||
#define XINCX_2_4G_PIPE5_ENAA 0
|
||||
#endif
|
||||
|
||||
// XINCX_RF_PIPE_ENABLE
|
||||
#ifndef XINCX_RF_PIPE_ENABLE
|
||||
#define XINCX_RF_PIPE_ENABLE 0
|
||||
#endif
|
||||
|
||||
#endif
|
||||
// </e> //XINCX_RF_PEACKET_MODE normal normal
|
||||
|
||||
// <e> XINCX_RF_EMHAMCED_PEACKET_MODE - RF enhanced packet mode
|
||||
// <i> Configure the frame format, which is a dynamic packet configuration, which can communicate in both directions,and
|
||||
// <i> ACK can dynamically carry data.
|
||||
#ifndef XINCX_RF_EMHAMCED_PACKET_MODE
|
||||
#define XINCX_RF_EMHAMCED_PACKET_MODE 0
|
||||
#endif
|
||||
|
||||
#if (XINCX_RF_EMHAMCED_PACKET_MODE == 1)
|
||||
|
||||
// XINCX_2_4G_TRANS_PARAM - 2.4g Transmission Parameters
|
||||
//==========================================================
|
||||
|
||||
// <o> XINCX_RF_MODE - RF Tx or Rx Mode
|
||||
// <0=> TX Mode
|
||||
// <1=> RX Mode
|
||||
#ifndef XINCX_RF_MODE
|
||||
#define XINCX_RF_MODE 1
|
||||
#endif
|
||||
|
||||
// <o> XINCX_RF_TRANS_RATE - RF Transmission Rate Config
|
||||
// <0x02=> 1M
|
||||
// <0x0A=> 2M
|
||||
// <0x22=> 250k
|
||||
// <0x2A=> 125k
|
||||
#ifndef XINCX_RF_TRANS_RATE
|
||||
#define XINCX_RF_TRANS_RATE 0x02
|
||||
#endif
|
||||
|
||||
// <o> XINCX_2_4G_CHANNEL - 2.4g Channel Set
|
||||
#ifndef XINCX_2_4G_CHANNEL
|
||||
#define XINCX_2_4G_CHANNEL 2421
|
||||
#endif
|
||||
|
||||
// <o> XINCX_RF_TX_ADDR_WIDTH - RF Tx Addr Width
|
||||
// <3=> 3 Bytes
|
||||
// <4=> 4 Bytes
|
||||
// <5=> 5 Bytes
|
||||
#ifndef XINCX_RF_TX_ADDR_WIDTH
|
||||
#define XINCX_RF_TX_ADDR_WIDTH 5
|
||||
#endif
|
||||
|
||||
// <o> XINCX_2_4G_ADDR_L - rf Address Set
|
||||
#ifndef XINCX_2_4G_ADDR_L
|
||||
#define XINCX_2_4G_ADDR_L 0xC3A78941
|
||||
#endif
|
||||
|
||||
// <o> XINCX_2_4G_ADDR_H - rf Address Set
|
||||
#ifndef XINCX_2_4G_ADDR_H
|
||||
#define XINCX_2_4G_ADDR_H 0x25
|
||||
#endif
|
||||
|
||||
// <o> XINCX_RF_POWER - rf Power Set
|
||||
// <1=> -10dbm
|
||||
// <2=> -9dbm
|
||||
// <4=> -4dbm
|
||||
// <6=> 0dbm
|
||||
// <8=> 3dbm
|
||||
// <9=> 5dbm
|
||||
// <12=> 7dbm
|
||||
// <14=> 8dbm
|
||||
// <16=> 9dbm
|
||||
// <19=> 10dbm
|
||||
// <24=> 11dbm
|
||||
// <30=> 12dbm
|
||||
// <36=> 13dbm
|
||||
#ifndef XINCX_POWER
|
||||
#define XINCX_POWER 0x00006
|
||||
#endif
|
||||
|
||||
// <o> XINCX_RF_NVIC_MODE - RF NVIC Mode
|
||||
// <0=> Disable
|
||||
// <1=> Enable
|
||||
#ifndef XINCX_RF_NVIC_MODE
|
||||
#define XINCX_RF_NVIC_MODE 1
|
||||
#endif
|
||||
|
||||
// XINCX_2_4G_PIPE_RX_PAYLEN - 2.4g Pipe Rx Payload Len
|
||||
// <i> Payload length. Configuration of the load length during communication.
|
||||
//==========================================================
|
||||
// XINCX_2_4G_PIPE0_LEN - 2.4g Pipe0 Rx Payload Len
|
||||
// #ifndef XINCX_2_4G_PIPE0_LEN
|
||||
// #define XINCX_2_4G_PIPE0_LEN 32
|
||||
// #endif
|
||||
|
||||
// XINCX_2_4G_PIPE1_LEN - 2.4g Pipe1 Rx Payload Len
|
||||
#ifndef XINCX_2_4G_PIPE1_LEN
|
||||
#define XINCX_2_4G_PIPE1_LEN 32
|
||||
#endif
|
||||
|
||||
// XINCX_2_4G_PIPE2_LEN - 2.4g Pipe2 Rx Payload Len
|
||||
#ifndef XINCX_2_4G_PIPE2_LEN
|
||||
#define XINCX_2_4G_PIPE2_LEN 32
|
||||
#endif
|
||||
|
||||
// XINCX_2_4G_PIPE3_LEN - 2.4g Pipe3 Rx Payload Len
|
||||
#ifndef XINCX_2_4G_PIPE3_LEN
|
||||
#define XINCX_2_4G_PIPE3_LEN 32
|
||||
#endif
|
||||
|
||||
// XINCX_2_4G_PIPE4_LEN - 2.4g Pipe4 Rx Payload Len
|
||||
#ifndef XINCX_2_4G_PIPE4_LEN
|
||||
#define XINCX_2_4G_PIPE4_LEN 32
|
||||
#endif
|
||||
|
||||
// XINCX_2_4G_PIPE5_LEN - 2.4g Pipe5 Rx Payload Len
|
||||
#ifndef XINCX_2_4G_PIPE5_LEN
|
||||
#define XINCX_2_4G_PIPE5_LEN 32
|
||||
#endif
|
||||
|
||||
// XINCX_RF_CRC_ENABLE - RF CRC Enable
|
||||
//==========================================================
|
||||
#ifndef XINCX_RF_CRC_ENABLE
|
||||
#define XINCX_RF_CRC_ENABLE 1
|
||||
#endif
|
||||
|
||||
// <o> XINCX_2_4G_CRC_BYTE - 2.4g CRC Bytes Set
|
||||
// <0=> 0 Byte
|
||||
// <1=> 1 Byte
|
||||
// <2=> 2 Bytes
|
||||
#ifndef XINCX_2_4G_CRC_BYTE
|
||||
#define XINCX_2_4G_CRC_BYTE 2
|
||||
#endif
|
||||
|
||||
// XINCX_2_4G_FEATURE_PARAM - 2.4g Feature Parameters
|
||||
//==========================================================
|
||||
|
||||
// XINCX_2_4G_GUARD_CFG - 2.4g Long Payload Feature
|
||||
#ifndef XINCX_2_4G_GUARD_CFG
|
||||
#define XINCX_2_4G_GUARD_CFG 0
|
||||
#endif
|
||||
|
||||
// XINCX_2_4G_LONG_PLD_TYPE - 2.4g Long Pld Type
|
||||
#ifndef XINCX_2_4G_LONG_PLD_TYPE
|
||||
#define XINCX_2_4G_LONG_PLD_TYPE 0
|
||||
#endif
|
||||
|
||||
// XINCX_2_4G_PREAMBLE_NUM - 2.4g Preamble
|
||||
#ifndef XINCX_2_4G_PREAMBLE_NUM
|
||||
#define XINCX_2_4G_PREAMBLE_NUM 0
|
||||
#endif
|
||||
|
||||
// XINCX_2_4G_PREAMBLE_TYPE - 2.4g Preamble Type
|
||||
#ifndef XINCX_2_4G_PREAMBLE_TYPE
|
||||
#define XINCX_2_4G_PREAMBLE_TYPE 0
|
||||
#endif
|
||||
|
||||
// XINCX_2_4G_CRC_SCOPE_GUARD - 2.4g CRC Scope Guard
|
||||
#ifndef XINCX_2_4G_CRC_SCOPE_GUARD
|
||||
#define XINCX_2_4G_CRC_SCOPE_GUARD 0
|
||||
#endif
|
||||
|
||||
// XINCX_2_4G_CRC_SCOPE_HEADER - 2.4g CRC Scope Header
|
||||
#ifndef XINCX_2_4G_CRC_SCOPE_HEADER
|
||||
#define XINCX_2_4G_CRC_SCOPE_HEADER 1
|
||||
#endif
|
||||
|
||||
// XINCX_2_4G_CRC_SCOPE_ADDR - 2.4g CRC Scope Addr
|
||||
#ifndef XINCX_2_4G_CRC_SCOPE_ADDR
|
||||
#define XINCX_2_4G_CRC_SCOPE_ADDR 1
|
||||
#endif
|
||||
|
||||
// <q> XINCX_2_4G_LONG_PLD - 2.4g Long Payload Feature
|
||||
#ifndef XINCX_2_4G_LONG_PLD
|
||||
#define XINCX_2_4G_LONG_PLD 1
|
||||
#endif
|
||||
|
||||
// <q> XINCX_2_4G_FEC - 2.4g FEC&Interleave Feature
|
||||
#ifndef XINCX_2_4G_FEC
|
||||
#define XINCX_2_4G_FEC 1
|
||||
#endif
|
||||
|
||||
// <q> XINCX_2_4G_WHITEN - 2.4g Whiten Feature
|
||||
#ifndef XINCX_2_4G_WHITEN
|
||||
#define XINCX_2_4G_WHITEN 1
|
||||
#endif
|
||||
|
||||
// XINCX_2_4G_DPL - 2.4g Dynamic Payload Length Feature
|
||||
#ifndef XINCX_2_4G_DPL
|
||||
#define XINCX_2_4G_DPL 1
|
||||
#endif
|
||||
|
||||
// XINCX_2_4G_ACK_PAY - 2.4g Payload on ACK
|
||||
#ifndef XINCX_2_4G_ACK_PAY
|
||||
#define XINCX_2_4G_ACK_PAY 1
|
||||
#endif
|
||||
|
||||
// XINCX_2_4G_DYN_ACK - 2.4g W_TX_PAYLOAD_NOACK Command
|
||||
#ifndef XINCX_2_4G_DYN_ACK
|
||||
#define XINCX_2_4G_DYN_ACK 1
|
||||
#endif
|
||||
|
||||
// XINCX_2_4G_DYNPD - 2.4g dynpd
|
||||
#ifndef XINCX_2_4G_DYNPD
|
||||
#define XINCX_2_4G_DYNPD 0x3f
|
||||
#endif
|
||||
|
||||
// XINCX_2_4G_AUTO_ACK - 2.4g Auto Acknowledgement
|
||||
//==========================================================
|
||||
// XINCX_2_4G_PIPE0_ENAA - 2.4g Pipe0 Auto Ack
|
||||
#ifndef XINCX_2_4G_PIPE0_ENAA
|
||||
#define XINCX_2_4G_PIPE0_ENAA 1
|
||||
#endif
|
||||
|
||||
// XINCX_2_4G_PIPE1_ENAA - 2.4g Pipe1 Auto Ack
|
||||
#ifndef XINCX_2_4G_PIPE1_ENAA
|
||||
#define XINCX_2_4G_PIPE1_ENAA 1
|
||||
#endif
|
||||
|
||||
// XINCX_2_4G_PIPE2_ENAA - 2.4g Pipe2 Auto Ack
|
||||
#ifndef XINCX_2_4G_PIPE2_ENAA
|
||||
#define XINCX_2_4G_PIPE2_ENAA 1
|
||||
#endif
|
||||
|
||||
// XINCX_2_4G_PIPE3_ENAA - 2.4g Pipe3 Auto Ack
|
||||
#ifndef XINCX_2_4G_PIPE3_ENAA
|
||||
#define XINCX_2_4G_PIPE3_ENAA 1
|
||||
#endif
|
||||
|
||||
// XINCX_2_4G_PIPE4_ENAA - 2.4g Pipe4 Auto Ack
|
||||
#ifndef XINCX_2_4G_PIPE4_ENAA
|
||||
#define XINCX_2_4G_PIPE4_ENAA 1
|
||||
#endif
|
||||
|
||||
// XINCX_2_4G_PIPE5_ENAA - 2.4g Pipe5 Auto Ack
|
||||
#ifndef XINCX_2_4G_PIPE5_ENAA
|
||||
#define XINCX_2_4G_PIPE5_ENAA 1
|
||||
#endif
|
||||
// <o.0..5> XINCX_RF_PIPE_ENABLE
|
||||
#ifndef XINCX_RF_PIPE_ENABLE
|
||||
#define XINCX_RF_PIPE_ENABLE 1
|
||||
#endif
|
||||
// XINCX_2_4G_TRANS_PARAM - 2.4g Transmission Parameters
|
||||
//==========================================================
|
||||
|
||||
// <o> XINCX_2_4G_RETRANS_CNT - 2.4g Retransmit Count
|
||||
// <i> Number of retransmissions. The maximum number of times a hardware can automatically transmit an ACK if it does
|
||||
// not receive the correct ACK.
|
||||
// <0=> No retransmission
|
||||
// <1=> 1 time
|
||||
// <2=> 2 times
|
||||
// <3=> 3 times
|
||||
// <4=> 4 times
|
||||
// <5=> 5 times
|
||||
// <6=> 6 times
|
||||
// <7=> 7 times
|
||||
// <8=> 8 times
|
||||
// <9=> 9 times
|
||||
// <10=> 10 times
|
||||
// <11=> 11 times
|
||||
// <12=> 12 times
|
||||
// <13=> 13 times
|
||||
// <14=> 14 times
|
||||
// <15=> 15 times
|
||||
#ifndef XINCX_2_4G_RETRANS_CNT
|
||||
#define XINCX_2_4G_RETRANS_CNT 0
|
||||
#endif
|
||||
|
||||
// <o> XINCX_2_4G_RETRANS_DELAY - 2.4g Retransmission Delay
|
||||
// <i> Retransmission delay. For 32 bytes of data, the minimum configuration is 500 us for 1 Mbit/s and 1500 us for 250
|
||||
// kbit/s.
|
||||
// <0=> 250us
|
||||
// <1=> 500us
|
||||
// <2=> 750us
|
||||
// <3=> 1000us
|
||||
// <4=> 1250us
|
||||
// <5=> 1500us
|
||||
// <6=> 1750us
|
||||
// <7=> 2000us
|
||||
// <8=> 2250us
|
||||
// <9=> 2500us
|
||||
// <10=> 2750us
|
||||
// <11=> 3000us
|
||||
// <12=> 3250us
|
||||
// <13=> 3500us
|
||||
// <14=> 3750us
|
||||
// <15=> 4000us
|
||||
#ifndef XINCX_2_4G_RETRANS_DELAY
|
||||
#define XINCX_2_4G_RETRANS_DELAY 3
|
||||
#endif
|
||||
|
||||
#endif
|
||||
// </e> //XINCX_RF_PEACKET_MODE enhanced normal
|
||||
|
||||
// RF 2.4g Compatibility configuration
|
||||
//==========================================================
|
||||
// Compatibility configuration, when you need to be compatible with other RF chips, you don't need to configure this
|
||||
// option when using our company's chips.
|
||||
// XINCX_2_4G_PREAMBLE - 2.4g preamble
|
||||
#ifndef XINCX_2_4G_PREAMBLE
|
||||
#define XINCX_2_4G_PREAMBLE 0x710f5555
|
||||
#endif
|
||||
|
||||
// XINCX_2_4G_GUARD - 2.4g guard
|
||||
#ifndef XINCX_2_4G_GUARD
|
||||
#define XINCX_2_4G_GUARD 0x8fc9
|
||||
#endif
|
||||
//
|
||||
|
||||
// XINCX_2_4G_CRY_CPT_ARRAY - 2.4g Crystal capacitor array
|
||||
//==========================================================
|
||||
// Crystal capacitor array, adjust to modify the frequency offset of the crystal oscillator.
|
||||
// XINCX_2_4G_CRY_CPT_ARRAY - 2.4g Crystal capacitor array
|
||||
#ifndef XINCX_2_4G_CRY_CPT_ARRAY
|
||||
#ifdef XC62XX
|
||||
#define XINCX_2_4G_CRY_CPT_ARRAY 0x38
|
||||
#else
|
||||
#define XINCX_2_4G_CRY_CPT_ARRAY 0x36
|
||||
#endif
|
||||
#endif
|
||||
//
|
||||
|
||||
// <<< end of configuration section >>>
|
||||
|
||||
#endif // SDK_CONFIG_H
|
||||
Reference in New Issue
Block a user