Merge pull request #28 from sdalu/nRF51-DK

NRF51 DK board
This commit is contained in:
Fabio Utzig 2016-02-02 07:41:46 -02:00
commit 76f7411dee
3 changed files with 142 additions and 0 deletions

View File

@ -0,0 +1,80 @@
/*
Copyright (C) 2015 Fabio Utzig
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/
#include "hal.h"
#if HAL_USE_PAL || defined(__DOXYGEN__)
/**
* @brief PAL setup.
* @details Digital I/O ports static configuration as defined in @p board.h.
* This variable is used by the HAL when initializing the PAL driver.
*/
const PALConfig pal_default_config =
{
.pads = {
PAL_MODE_UNCONNECTED, /* P0.0 */
PAL_MODE_UNCONNECTED, /* P0.1 */
PAL_MODE_UNCONNECTED, /* P0.2 */
PAL_MODE_UNCONNECTED, /* P0.3 */
PAL_MODE_UNCONNECTED, /* P0.4 */
PAL_MODE_UNCONNECTED, /* P0.5 */
PAL_MODE_UNCONNECTED, /* P0.6 */
PAL_MODE_OUTPUT_OPENDRAIN, /* P0.7 : SCL */
PAL_MODE_OUTPUT_PUSHPULL, /* P0.8 : UART_RTS */
PAL_MODE_OUTPUT_PUSHPULL, /* P0.9 : UART_TX */
PAL_MODE_INPUT_PULLUP, /* P0.10: UART_CTS */
PAL_MODE_INPUT_PULLUP, /* P0.11: UART_RX */
PAL_MODE_UNCONNECTED, /* P0.12 */
PAL_MODE_UNCONNECTED, /* P0.13 */
PAL_MODE_UNCONNECTED, /* P0.14 */
PAL_MODE_UNCONNECTED, /* P0.15 */
PAL_MODE_UNCONNECTED, /* P0.16 */
PAL_MODE_INPUT_PULLUP, /* P0.17: BTN1 */
PAL_MODE_INPUT_PULLUP, /* P0.18: BTN2 */
PAL_MODE_INPUT_PULLUP, /* P0.19: BTN3 */
PAL_MODE_INPUT_PULLUP, /* P0.20: BTN4 */
PAL_MODE_OUTPUT_PUSHPULL, /* P0.21: LED1 */
PAL_MODE_OUTPUT_PUSHPULL, /* P0.22: LED2 */
PAL_MODE_OUTPUT_PUSHPULL, /* P0.23: LED3 */
PAL_MODE_OUTPUT_PUSHPULL, /* P0.24: LED4 | SPI_SEL */
PAL_MODE_OUTPUT_PUSHPULL, /* P0.25: SPI_MOSI */
PAL_MODE_UNCONNECTED, /* P0.26: XTAL (32MHz) */
PAL_MODE_UNCONNECTED, /* P0.27: XTAL (32MHz) */
PAL_MODE_INPUT_PULLUP, /* P0.28: SPI_MISO */
PAL_MODE_OUTPUT_PUSHPULL, /* P0.29: SPI_SCK */
PAL_MODE_OUTPUT_OPENDRAIN, /* P0.30: SDA */
PAL_MODE_UNCONNECTED, /* P0.31 */
},
};
#endif
/**
* @brief Early initialization code.
* @details This initialization is performed just after reset before BSS and
* DATA segments initialization.
*/
void __early_init(void)
{
}
/**
* @brief Late initialization code.
* @note This initialization is performed after BSS and DATA segments
* initialization and before invoking the main() function.
*/
void boardInit(void)
{
}

View File

@ -0,0 +1,57 @@
/*
Copyright (C) 2015 Fabio Utzig
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/
#ifndef _BOARD_H_
#define _BOARD_H_
/* Board identifier. */
#define BOARD_NRF51_DK
#define BOARD_NAME "nRF51 DK"
/* Board oscillators-related settings. */
#define XTAL_VALUE 16000000
/* GPIO pins. */
#define BTN1 17
#define BTN2 18
#define BTN3 19
#define BTN4 20
#define LED1 21
#define LED2 22
#define LED3 23
#define LED4 24
#define UART_RTS 8
#define UART_TX 9
#define UART_CTS 10
#define UART_RX 11
#define SPI_SCK 29
#define SPI_MOSI 25
#define SPI_MISO 28
#define SPI_SS 24
#define I2C_SCL 7
#define I2C_SDA 30
#if !defined(_FROM_ASM_)
#ifdef __cplusplus
extern "C" {
#endif
void boardInit(void);
#ifdef __cplusplus
}
#endif
#endif /* _FROM_ASM_ */
#endif /* _BOARD_H_ */

View File

@ -0,0 +1,5 @@
# List of all the board related files.
BOARDSRC = ${CHIBIOS_CONTRIB}/os/hal/boards/NRF51-DK/board.c
# Required include directories
BOARDINC = ${CHIBIOS_CONTRIB}/os/hal/boards/NRF51-DK