118 lines
3.6 KiB
C
118 lines
3.6 KiB
C
/**
|
|
* \file
|
|
* \brief Configuration header file for Nordic Semiconductor nRF24L01+ transceiver
|
|
*
|
|
* This header file is used to configure settings of the nRF24L01 module.
|
|
*/
|
|
|
|
#ifndef __McuNRF24L01_CONFIG_H
|
|
#define __McuNRF24L01_CONFIG_H
|
|
|
|
#include "McuLib.h"
|
|
|
|
#ifndef McuNRF24L01_CONFIG_IS_ENABLED
|
|
#define McuNRF24L01_CONFIG_IS_ENABLED (0)
|
|
/*!< 1: enable driver/module; 0: module is not enabled */
|
|
#endif
|
|
|
|
#ifndef McuNRF24L01_CONFIG_IRQ_PIN_ENABLED
|
|
void McuNRF24L01_OnInterrupt(void); /* prototype for interrupt handler */
|
|
#define McuNRF24L01_CONFIG_IRQ_PIN_ENABLED (0)
|
|
/*!< 1: IRQ pin is enabled, 0: No IRQ pin available */
|
|
#endif
|
|
|
|
#ifndef McuNRF24L01_CONFIG_USE_ON_ACTIVATE_CALLBACK
|
|
#define McuNRF24L01_CONFIG_USE_ON_ACTIVATE_CALLBACK (0)
|
|
/*!< If McuNRF24L01_CONFIG_ON_ACTIVATE_CALLBACK is called or not */
|
|
#endif
|
|
|
|
#ifndef McuNRF24L01_CONFIG_ON_ACTIVATE_CALLBACK
|
|
void McuNRF24L01_OnActivate(void); /* prototype */
|
|
#define McuNRF24L01_CONFIG_ON_ACTIVATE_CALLBACK() McuNRF24L01_OnActivate()
|
|
/*!< User callback called before using device */
|
|
#endif
|
|
|
|
#ifndef McuNRF24L01_CONFIG_USE_ON_DEACTIVATE_CALLBACK
|
|
#define McuNRF24L01_CONFIG_USE_ON_DEACTIVATE_CALLBACK (0)
|
|
/*!< If McuNRF24L01_CONFIG_ON_DEACTIVATE_CALLBACK is called or not */
|
|
#endif
|
|
|
|
#ifndef McuNRF24L01_CONFIG_ON_DEACTIVATE_CALLBACK
|
|
void McuNRF24L01_OnDeactivate(void); /* prototype */
|
|
#define McuNRF24L01_CONFIG_ON_DEACTIVATE_CALLBACK() McuNRF24L01_OnDeactivate()
|
|
/*!< User callback called after using device */
|
|
#endif
|
|
|
|
#ifndef McuNRF24L01_CONFIG_USE_MUTEX
|
|
#define McuNRF24L01_CONFIG_USE_MUTEX (1)
|
|
/*!< 1: Use FreeRTOS Mutex, 0: Do not use FreeRTOS mutex */
|
|
#endif
|
|
|
|
#ifndef McuNRF24L01_CONFIG_INITIALIZE_DURING_STARTUP
|
|
#define McuNRF24L01_CONFIG_INITIALIZE_DURING_STARTUP (0)
|
|
/*!< 1: Call Init() during startup, 0: Do not call Init() */
|
|
#endif
|
|
|
|
#ifndef McuNRF24L01_CONFIG_CE_CSN_PIN_PRE_INIT
|
|
#if McuLib_CONFIG_CPU_IS_RPxxxx
|
|
#define McuNRF24L01_CONFIG_CE_CSN_PIN_PRE_INIT() /* nothing needed */
|
|
#elif McuLib_CONFIG_CPU_IS_ESP32
|
|
#define McuNRF24L01_CONFIG_CE_CSN_PIN_PRE_INIT() /* nothing needed */
|
|
#elif McuLib_CONFIG_CPU_IS_KINETIS
|
|
#define McuNRF24L01_CONFIG_CE_CSN_PIN_PRE_INIT() CLOCK_EnableClock(kCLOCK_PortB)
|
|
/*!< Optional hardware initialization for CS Pin */
|
|
#endif
|
|
#endif
|
|
|
|
#ifndef McuNRF24L01_CONFIG_CE_PIN_GPIO
|
|
#define McuNRF24L01_CONFIG_CE_PIN_GPIO GPIOB
|
|
/*!< GPIO for CE Pin */
|
|
#endif
|
|
|
|
#ifndef McuNRF24L01_CONFIG_CE_PIN_PORT
|
|
#define McuNRF24L01_CONFIG_CE_PIN_PORT PORTB
|
|
/*!< PORT for CE Pin */
|
|
#endif
|
|
|
|
#ifndef McuNRF24L01_CONFIG_CE_PIN_NUMBER
|
|
#define McuNRF24L01_CONFIG_CE_PIN_NUMBER 10
|
|
/*!< Pin number of the CE Pin */
|
|
#endif
|
|
|
|
#ifndef McuNRF24L01_CONFIG_CSN_PIN_GPIO
|
|
#define McuNRF24L01_CONFIG_CSN_PIN_GPIO GPIOB
|
|
/*!< GPIO for CSN Pin */
|
|
#endif
|
|
|
|
#ifndef McuNRF24L01_CONFIG_CSN_PIN_PORT
|
|
#define McuNRF24L01_CONFIG_CSN_PIN_PORT PORTB
|
|
/*!< PORT for CSN Pin */
|
|
#endif
|
|
|
|
#ifndef McuNRF24L01_CONFIG_CSN_PIN_NUMBER
|
|
#define McuNRF24L01_CONFIG_CSN_PIN_NUMBER 0
|
|
/*!< Pin number of the CSN Pin */
|
|
#endif
|
|
|
|
#ifndef McuNRF24L01_CONFIG_IRQ_PIN_GPIO
|
|
#define McuNRF24L01_CONFIG_IRQ_PIN_GPIO GPIOB
|
|
/*!< GPIO for IRQ Pin */
|
|
#endif
|
|
|
|
#ifndef McuNRF24L01_CONFIG_IRQ_PIN_PORT
|
|
#define McuNRF24L01_CONFIG_IRQ_PIN_PORT PORTB
|
|
/*!< PORT for IRQ Pin */
|
|
#endif
|
|
|
|
#ifndef McuNRF24L01_CONFIG_IRQ_PIN_NUMBER
|
|
#define McuNRF24L01_CONFIG_IRQ_PIN_NUMBER 0
|
|
/*!< Pin number of the IRQ Pin */
|
|
#endif
|
|
|
|
#ifndef McuNRF24L01_CONFIG_IRQ_LINE_NUMBER
|
|
#define McuNRF24L01_CONFIG_IRQ_LINE_NUMBER PORTB_IRQn
|
|
/*!< Kinetis IRQ line number for interrupt settings */
|
|
#endif
|
|
|
|
#endif /* __McuNRF24L01_CONFIG_H */
|