mirror of
https://github.com/RIOT-OS/RIOT.git
synced 2024-12-29 04:50:03 +01:00
131 lines
5.3 KiB
Plaintext
131 lines
5.3 KiB
Plaintext
/**
|
|
@defgroup boards_p-nucleo-wb55 STM32 p-nucleo-wb55
|
|
@ingroup boards
|
|
@brief Support for the STM32 p-nucleo-wb55
|
|
|
|
## Overview
|
|
|
|
The p-nucleo-wb55 is a multi-protocol wireless and ultra-low-power
|
|
device embedding a powerful and ultra-low-power radio compliant with the
|
|
Bluetooth® Low Energy (BLE) SIG specification v5.0 and with IEEE
|
|
802.15.4-2011 board. It integrates an ARM Cortex-M4 STM32WB55RG microcontroller
|
|
with 256KB of RAM and 1MB of ROM Flash.
|
|
|
|
## Hardware
|
|
|
|
![st-nucleo-wb55](https://miro.medium.com/max/700/1*9OG-4Ix4EzHX9uBpMve2IA.jpeg)
|
|
|
|
## Pinout
|
|
|
|
@image html pinouts/p-nucleo-wb55.svg "Pinout for the p-nucleo-wb55" width=50%
|
|
|
|
### MCU
|
|
|
|
| MCU | STM32WB55RG |
|
|
|:----------------- |:------------------------------------- |
|
|
| Family | ARM Cortex-M4 |
|
|
| Vendor | ST Microelectronics |
|
|
| RAM | 256 KiB |
|
|
| Flash | 512 KiB |
|
|
| Frequency | 64 MHz |
|
|
| FPU | yes |
|
|
| Timers | 8 (3x 16-bit, 1x 32-bit [TIM5]) |
|
|
| LPTimers | 2x 16-bit |
|
|
| ADCs | 1x 19-channel 12-bit |
|
|
| UARTs | 1 |
|
|
| LUARTs | 1 |
|
|
| SPIs | 1 |
|
|
| I2Cs | 2 |
|
|
| RTC | 1 |
|
|
| Vcc | 1.65V - 3.6V |
|
|
| Datasheet | [Datasheet][Datasheet] |
|
|
| Reference Manual | [Reference Manual][Reference Manual] |
|
|
| User Manual | [User Manual][User Manual] |
|
|
|
|
[Datasheet]: https://www.st.com/resource/en/datasheet/stm32wb55cc.pdf
|
|
[Reference Manual]: https://www.st.com/resource/en/reference_manual/rm0434-multiprotocol-wireless-32bit-mcu-armbased-cortexm4-with-fpu-bluetooth-lowenergy-and-802154-radio-solution-stmicroelectronics.pdf
|
|
[User Manual]: https://www.st.com/content/ccc/resource/technical/document/user_manual/group1/13/58/22/1a/f2/ff/43/5c/DM00517423/files/DM00517423.pdf/jcr:content/translations/en.DM00517423.pdf
|
|
|
|
## Flashing the device
|
|
|
|
### Flashing the Board Using OpenOCD
|
|
|
|
The ST p-nucleo-wb55 board includes an on-board ST-LINK programmer and can be
|
|
flashed using OpenOCD (use version 0.11.0 at least).
|
|
|
|
To flash this board, just use the following command:
|
|
|
|
```
|
|
make BOARD=p-nucleo-wb55 flash -C examples/hello-world
|
|
```
|
|
|
|
### Flashing the Board Using ST-LINK Removable Media
|
|
|
|
On-board ST-LINK programmer provides via composite USB device removable media.
|
|
Copying the HEX file causes reprogramming of the board. This task could be
|
|
performed manually; however, the cpy2remed (copy to removable media) PROGRAMMER
|
|
script does this automatically. To program board in this manner, use the command:
|
|
|
|
```
|
|
make BOARD=p-nucleo-wb55 PROGRAMMER=cpy2remed flash
|
|
```
|
|
@note This PROGRAMMER was tested using ST-LINK firmware 2.37.26. Firmware updates
|
|
could be found on [this STM webpage](https://www.st.com/en/development-tools/sts
|
|
-link007.html).
|
|
|
|
|
|
## Accessing RIOT shell
|
|
|
|
Default RIOT shell access utilize VCP (Virtual COM Port) via USB interface,
|
|
provided by integrated ST-LINK programmer. In default configuration ST-LINK
|
|
is connected to the microcontroller USART1. For more details See table 7,
|
|
page 33 in board User Manual.
|
|
|
|
The default baud rate is 115 200.
|
|
|
|
Use the `term` target to open a terminal:
|
|
```
|
|
make BOARD=p-nucleo-wb55 -C examples/hello-world term
|
|
```
|
|
|
|
## User Interface
|
|
|
|
4 Button:
|
|
|
|
| NAME | RESET/SW4 | SW1 | SW2 | SW3 |
|
|
|:------ |:--------- |:----- |:----- |:----- |
|
|
| Pin | NRST | PC4 | PD0 | PD1 |
|
|
|
|
3 LED:
|
|
|
|
| NAME | LED1 | LED2 | LED3 |
|
|
| ----- | ------ | ------ | ------ |
|
|
| Color | blue | green | red |
|
|
| Pin | PB5 | PB0 | PB1 |
|
|
|
|
|
|
## Implementation Status
|
|
|
|
| Device | ID | Supported | Comments |
|
|
|:----------------- |:----------------- |:--------- |:---------- |
|
|
| MCU | stm32wb | yes | |
|
|
| | M0+ co-processor | no | |
|
|
| | BLE | no | |
|
|
| | 802.15.4 | no | |
|
|
| Low-level driver | GPIO | yes | |
|
|
| | UART | yes | USART1 |
|
|
| | LPUART | yes | LPUART1 |
|
|
| | I2C | yes | I2C1 |
|
|
| | SPI | yes | |
|
|
| | ADC | yes | |
|
|
| | RTT | yes | |
|
|
| | RTC | yes | |
|
|
| | RNG | yes | |
|
|
| | Timer | yes | TIM2 |
|
|
| | WDT | yes | |
|
|
| | USB | yes | |
|
|
| | PWM | yes | dev 0/4 ch |
|
|
| | AES | no | |
|
|
|
|
*/
|