1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2024-12-29 04:50:03 +01:00
RIOT/boards/microbit/doc.txt

104 lines
3.7 KiB
Plaintext

/**
@defgroup boards_microbit BBC micro:bit
@ingroup boards
@brief Support for the BBC micro:bit
## Overview
The [micro:bit](https://www.microbit.co.uk/) was designed by the BBC and
released in 2015. The boards was distributed to all 11-12 year old children
throughout the UK.
The board is based on the Nordic nRF51822 SoC, featuring 16KiB of RAM, 256KiB
of ROM, and a 2.4GHz radio, that supports Bluetooth Low Energy (BLE) as well as
a Nordic proprietary radio mode.
Additionally the boards features 2 buttons, a 5x5 LED matrix, a MAG3110
3-axis magnetometer, and a MMA8653 3-axis accelerometer.
## Hardware
![micro:bit](https://github.com/RIOT-OS/RIOT/wiki/images/board_microbit.png)
| MCU | NRF51822QFAA |
|:----------------- |:--------------------------------- |
| Family | ARM Cortex-M0 |
| Vendor | Nordic Semiconductor |
| RAM | 16KiB |
| Flash | 256KiB |
| Frequency | 16MHz |
| FPU | no |
| Timers | 3 (2x 16-bit, 1x 32-bit [TIMER0]) |
| ADCs | 1x 10-bit (8 channels) |
| UARTs | 1 |
| SPIs | 2 |
| I2Cs | 2 |
| Vcc | 1.8V - 3.6V |
| Reference Manual | [Reference Manual](http://infocenter.nordicsemi.com/pdf/nRF51_RM_v3.0.pdf) |
## Flashing and Debugging
There are two possibilities to flash the board: using the default ARM DAPLink
or you can flash the board using Segger's JLink.
### DAPLink
The [DAPLink interface](https://www.mbed.com/en/development/hardware/prototyping-production/daplink/daplink-on-kl26z/) is the default way to flash the board and
works out of the box. When you plug the board to your host computer, it shows up
as a flash drive. To flash the board, you can simply copy your compiled `.hex`
file onto the board, and that's it.
The `micro:bit` port comes with a little script that does this automatically,
so you can flash the board as usual with
```
BOARD=microbit make flash
```
The DAPLink interface provides however not means for debugging the board.
### JLink
Recently, Segger released a JLink firmware for the interface MCU on the
`micro:bit`. You have to follow [these instructions](https://www.segger.com/bbc-micro-bit.html) to flash the JLink firmware on your `micro:bit`. Don't worry,
the process is very simple and you can revert the firmware back to the DAPLink
default anytime ([as described here](https://www.mbed.com/en/development/hardware/prototyping-production/daplink/daplink-on-kl26z/)).
Once you have flashed the JLink firmware, you can flash the board like this:
```
BOARD=microbit PROGRAMMER=jlink make flash
```
With the JLink firmware, you can now also do in-circuit debugging etc.
**Note: The current version of the JLink firmware
(JLink_OB_BBC_microbit_16-07-29.hex) does not support any serial port over USB,
so you can not use the RIOT shell with this firmware.**
### QEMU emulation
The microbit can be partly emulated by QEMU.
This requires at least QEMU 4.0 with ARM platform support enabled.
*NOTE*: not all peripherals are emulated. See
[this](https://wiki.qemu.org/Features/MicroBit) page for an overview.
E.g., there's no emulation for the radio, thus applications using that will
fail.
Use it like this:
$ cd examples/hello-world
$ BOARD=microbit make clean all -j4
$ EMULATE=1 BOARD=microbit make term
## Display
The 5x5 LED matrix display can be driven using the @ref boards_common_microbit.
*/