Crate nrf52dk

Source
Expand description

Tock kernel for the Nordic Semiconductor nRF52 development kit (DK), a.k.a. the PCA10040.

It is based on nRF52838 SoC (Cortex M4 core with a BLE transceiver) with many exported I/O and peripherals.

nRF52838 has only one port and uses pins 0-31!

Furthermore, there exist another a preview development kit for nRF52840 but it is not supported yet because unfortunately the pin configuration differ from nRF52-DK whereas nRF52840 uses two ports where port 0 has 32 pins and port 1 has 16 pins.

§Pin Configuration

§GPIOs

  • P0.27 -> (top left header)
  • P0.26 -> (top left header)
  • P0.02 -> (top left header)
  • P0.25 -> (top left header)
  • P0.24 -> (top left header)
  • P0.23 -> (top left header)
  • P0.22 -> (top left header)
  • P0.12 -> (top mid header)
  • P0.11 -> (top mid header)
  • P0.03 -> (bottom right header)
  • P0.04 -> (bottom right header)
  • P0.28 -> (bottom right header)
  • P0.29 -> (bottom right header)
  • P0.30 -> (bottom right header)
  • P0.31 -> (bottom right header)

§LEDs

  • P0.17 -> LED1
  • P0.18 -> LED2
  • P0.19 -> LED3
  • P0.20 -> LED4

§Buttons

  • P0.13 -> Button1
  • P0.14 -> Button2
  • P0.15 -> Button3
  • P0.16 -> Button4
  • P0.21 -> Reset Button

§UART

  • P0.05 -> RTS
  • P0.06 -> TXD
  • P0.07 -> CTS
  • P0.08 -> RXD

§NFC

  • P0.09 -> NFC1
  • P0.10 -> NFC2

§LFXO

  • P0.01 -> XL2
  • P0.00 -> XL1

§Author

Modules§

io
UART Writer
tests 🔒

Structs§

Platform
Supported drivers by the platform

Constants§

BUTTON1_PIN 🔒
BUTTON2_PIN 🔒
BUTTON3_PIN 🔒
BUTTON4_PIN 🔒
BUTTON_RST_PIN 🔒
FAULT_RESPONSE 🔒
LED1_PIN 🔒
LED2_PIN 🔒
LED3_PIN 🔒
LED4_PIN 🔒
NUM_PROCS 🔒
UART_CTS 🔒
UART_RTS 🔒
UART_RXD 🔒
UART_TXD 🔒
_SPI_CLK 🔒
_SPI_MISO 🔒
_SPI_MOSI 🔒

Statics§

CHIP 🔒
PROCESSES 🔒
PROCESS_PRINTER 🔒
STACK_MEMORY
Dummy buffer that causes the linker to reserve enough space for the stack.

Functions§

main
Main function called after RAM initialized.
start
This is in a separate, inline(never) function so that its stack frame is removed when this function returns. Otherwise, the stack space used for these static_inits is wasted.

Type Aliases§

RngDriver 🔒
TemperatureDriver 🔒