| /* |
| * Copyright (c) 2016, The OpenThread Authors. |
| * All rights reserved. |
| * |
| * Redistribution and use in source and binary forms, with or without |
| * modification, are permitted provided that the following conditions are met: |
| * 1. Redistributions of source code must retain the above copyright |
| * notice, this list of conditions and the following disclaimer. |
| * 2. Redistributions in binary form must reproduce the above copyright |
| * notice, this list of conditions and the following disclaimer in the |
| * documentation and/or other materials provided with the distribution. |
| * 3. Neither the name of the copyright holder nor the |
| * names of its contributors may be used to endorse or promote products |
| * derived from this software without specific prior written permission. |
| * |
| * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" |
| * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE |
| * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE |
| * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE |
| * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR |
| * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF |
| * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS |
| * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN |
| * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) |
| * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE |
| * POSSIBILITY OF SUCH DAMAGE. |
| */ |
| |
| /** |
| * @file |
| * This file includes the platform-specific configuration. |
| * |
| */ |
| |
| #ifndef PLATFORM_CONFIG_H_ |
| #define PLATFORM_CONFIG_H_ |
| |
| #include "device/nrf.h" |
| #include "hal/nrf_uart.h" |
| #include "hal/nrf_peripherals.h" |
| #include "hal/nrf_radio.h" |
| |
| #include <openthread/config.h> |
| |
| /******************************************************************************* |
| * @section UART Driver Configuration. |
| ******************************************************************************/ |
| |
| /** |
| * @def UART_INSTANCE |
| * |
| * UART Instance. |
| * |
| */ |
| #define UART_INSTANCE NRF_UART0 |
| |
| /** |
| * @def UART_PARITY |
| * |
| * UART Parity configuration. |
| * |
| * @brief Possible values: |
| * \ref NRF_UART_PARITY_EXCLUDED - Parity bit is not present. |
| * \ref NRF_UART_PARITY_INCLUDED - Parity bit is present. |
| * |
| */ |
| #define UART_PARITY NRF_UART_PARITY_EXCLUDED |
| |
| /** |
| * @def UART_HWFC |
| * |
| * UART Hardware Flow Control. |
| * |
| * @brief Possible values: |
| * \ref NRF_UART_HWFC_ENABLED - HW Flow control enabled. |
| * \ref NRF_UART_HWFC_DISABLED - HW Flow control disabled. |
| * |
| */ |
| #define UART_HWFC NRF_UART_HWFC_ENABLED |
| |
| /** |
| * @def UART_BAUDRATE |
| * |
| * UART Baudrate. |
| * |
| * @brief Possible values: |
| * \ref NRF_UART_BAUDRATE_1200 - 1200 baud. |
| * \ref NRF_UART_BAUDRATE_2400 - 2400 baud. |
| * \ref NRF_UART_BAUDRATE_4800 - 4800 baud. |
| * \ref NRF_UART_BAUDRATE_9600 - 9600 baud. |
| * \ref NRF_UART_BAUDRATE_14400 - 14400 baud. |
| * \ref NRF_UART_BAUDRATE_19200 - 19200 baud. |
| * \ref NRF_UART_BAUDRATE_28800 - 28800 baud. |
| * \ref NRF_UART_BAUDRATE_38400 - 38400 baud. |
| * \ref NRF_UART_BAUDRATE_57600 - 57600 baud. |
| * \ref NRF_UART_BAUDRATE_76800 - 76800 baud. |
| * \ref NRF_UART_BAUDRATE_115200 - 115200 baud. |
| * \ref NRF_UART_BAUDRATE_230400 - 230400 baud. |
| * \ref NRF_UART_BAUDRATE_250000 - 250000 baud. |
| * \ref NRF_UART_BAUDRATE_460800 - 460800 baud. |
| * \ref NRF_UART_BAUDRATE_921600 - 921600 baud. |
| * \ref NRF_UART_BAUDRATE_1000000 - 1000000 baud. |
| * |
| */ |
| #define UART_BAUDRATE NRF_UART_BAUDRATE_115200 |
| |
| /** |
| * @def UART_IRQN |
| * |
| * UART Interrupt number. |
| * |
| */ |
| #define UART_IRQN UARTE0_UART0_IRQn |
| |
| /** |
| * @def UART_IRQ_PRIORITY |
| * |
| * UART Interrupt priority. |
| * |
| */ |
| #define UART_IRQ_PRIORITY 6 |
| |
| /** |
| * @def UART_RX_BUFFER_SIZE |
| * |
| * UART Receive buffer size. |
| * |
| */ |
| #define UART_RX_BUFFER_SIZE 256 |
| |
| /** |
| * @def UART_PIN_TX |
| * |
| * UART TX Pin. |
| * |
| */ |
| #define UART_PIN_TX 6 |
| |
| /** |
| * @def UART_PIN_RX |
| * |
| * UART RX Pin. |
| * |
| */ |
| #define UART_PIN_RX 8 |
| |
| /** |
| * @def UART_PIN_CTS |
| * |
| * UART CTS Pin. |
| * |
| */ |
| #define UART_PIN_CTS 7 |
| |
| /** |
| * @def UART_PIN_RTS |
| * |
| * UART RTS Pin. |
| * |
| */ |
| #define UART_PIN_RTS 5 |
| |
| /******************************************************************************* |
| * @section Alarm Driver Configuration. |
| ******************************************************************************/ |
| |
| /** |
| * @def RTC_INSTANCE |
| * |
| * RTC Instance. |
| * |
| */ |
| #define RTC_INSTANCE NRF_RTC2 |
| |
| /** |
| * @def RTC_IRQ_HANDLER |
| * |
| * RTC interrupt handler name |
| * |
| */ |
| #define RTC_IRQ_HANDLER RTC2_IRQHandler |
| |
| /** |
| * @def RTC_IRQN |
| * |
| * RTC Interrupt number. |
| * |
| */ |
| #define RTC_IRQN RTC2_IRQn |
| |
| /** |
| * @def RTC_IRQ_PRIORITY |
| * |
| * RTC Interrupt priority. |
| * |
| */ |
| #define RTC_IRQ_PRIORITY 6 |
| |
| /******************************************************************************* |
| * @section Random Number Generator Driver Configuration. |
| ******************************************************************************/ |
| |
| /** |
| * @def RNG_BUFFER_SIZE |
| * |
| * True Random Number Generator buffer size. |
| * |
| */ |
| #define RNG_BUFFER_SIZE 64 |
| |
| /** |
| * @def RNG_IRQ_PRIORITY |
| * |
| * RNG Interrupt priority. |
| * |
| */ |
| #define RNG_IRQ_PRIORITY 6 |
| |
| /******************************************************************************* |
| * @section Log module configuration. |
| ******************************************************************************/ |
| |
| /** |
| * @def LOG_RTT_BUFFER_INDEX |
| * |
| * RTT's buffer index. |
| * |
| */ |
| #define LOG_RTT_BUFFER_INDEX 0 |
| |
| /** |
| * @def LOG_RTT_BUFFER_NAME |
| * |
| * RTT's name. |
| * |
| */ |
| #define LOG_RTT_BUFFER_NAME "Terminal" |
| |
| /** |
| * @def LOG_RTT_BUFFER_SIZE |
| * |
| * LOG RTT's buffer size. |
| * |
| */ |
| #define LOG_RTT_BUFFER_SIZE 256 |
| |
| /** |
| * @def LOG_RTT_COLOR_ENABLE |
| * |
| * Enable colors on RTT Viewer. |
| * |
| */ |
| #define LOG_RTT_COLOR_ENABLE 1 |
| |
| /** |
| * @def LOG_PARSE_BUFFER_SIZE |
| * |
| * LOG buffer used to parse print format. It will be locally allocated on the |
| * stack. |
| * |
| */ |
| #define LOG_PARSE_BUFFER_SIZE 128 |
| |
| /** |
| * @def LOG_TIMESTAMP_ENABLE |
| * |
| * Enable timestamp in the logs. |
| * |
| */ |
| #define LOG_TIMESTAMP_ENABLE 1 |
| |
| /******************************************************************************* |
| * @section Radio Driver Configuration. |
| ******************************************************************************/ |
| |
| /** |
| * @def RADIO_CCA_MODE |
| * |
| * RADIO CCA Mode. |
| * |
| */ |
| #define RADIO_CCA_MODE NRF_RADIO_CCA_MODE_ED |
| |
| /** |
| * @def RADIO_CCA_ED_THRESHOLD |
| * |
| * RADIO Energy Detection Threshold. |
| * |
| */ |
| #define RADIO_CCA_ED_THRESHOLD 0x2D |
| |
| /** |
| * @def RADIO_CCA_CORR_THRESHOLD |
| * |
| * RADIO Correlator Threshold. |
| * |
| */ |
| #define RADIO_CCA_CORR_THRESHOLD 0x2D |
| |
| /** |
| * @def RADIO_CCA_CORR_LIMIT |
| * |
| * RADIO Correlator limit. |
| * |
| */ |
| #define RADIO_CCA_CORR_LIMIT 0x02 |
| |
| /** |
| * @def RADIO_IRQ_PRIORITY |
| * |
| * RADIO Interrupt priority. |
| * |
| */ |
| #define RADIO_IRQ_PRIORITY 0 |
| |
| /** |
| * @def RADIO_PENDING_SHORT_ADDRESSES |
| * |
| * RADIO Number of slots containing short addresses of nodes for which pending data is stored. |
| * |
| */ |
| #define RADIO_PENDING_SHORT_ADDRESSES OPENTHREAD_CONFIG_MAX_CHILDREN |
| |
| /** |
| * @def RADIO_PENDING_EXTENDED_ADDRESSES |
| * |
| * RADIO Number of slots containing extended addresses of nodes for which pending data is stored. |
| * |
| */ |
| #define RADIO_PENDING_EXTENDED_ADDRESSES OPENTHREAD_CONFIG_MAX_CHILDREN |
| |
| /** |
| * @def RADIO_RX_BUFFERS |
| * |
| * RADIO Number of buffers in receive queue. |
| * |
| */ |
| #define RADIO_RX_BUFFERS 16 |
| |
| #endif // PLATFORM_CONFIG_H_ |