Nordic Semiconductor PCA10040
The Nordic Semiconductor PCA10040 is a single-board development kit for wireless applications based on the Nordic Semiconductor nRF52832 SoC.
Interfaces
Interface | Hardware Supported | TinyGo Support |
---|---|---|
GPIO | YES | YES |
UART | YES | YES |
SPI | YES | YES |
I2C | YES | YES |
ADC | YES | YES |
PWM | YES | YES |
USBDevice | NO | NO |
Bluetooth | YES | YES |
Pins
Pin | Hardware pin | Alternative names |
---|---|---|
LED1 |
P0_17 |
LED |
LED2 |
P0_18 |
|
LED3 |
P0_19 |
|
LED4 |
P0_20 |
|
BUTTON1 |
P0_13 |
BUTTON |
BUTTON2 |
P0_14 |
|
BUTTON3 |
P0_15 |
|
BUTTON4 |
P0_16 |
|
UART_TX_PIN |
P0_06 |
|
UART_RX_PIN |
P0_08 |
|
ADC0 |
P0_03 |
|
ADC1 |
P0_04 |
|
ADC2 |
P0_28 |
|
ADC3 |
P0_29 |
|
ADC4 |
P0_30 |
|
ADC5 |
P0_31 |
|
SDA_PIN |
P0_26 |
|
SCL_PIN |
P0_27 |
|
SPI0_SCK_PIN |
P0_25 |
|
SPI0_SDO_PIN |
P0_23 |
|
SPI0_SDI_PIN |
P0_24 |
Machine Package Docs
Documentation for the machine package for the PCA10040
Flashing
There are two options to flash the PCA10040 board.
OpenOCD (Recommended)
You must install OpenOCD before you will be able to flash the PCA10040 board with your TinyGo code. You should check OpenOCD Documentation for installation and configuration instructions.
Once you have installed it correctly, you will be able to flash the PCA10040 board with your TinyGo code.
- Plug your PCA10040 into your computer’s USB port.
- Build and flash your TinyGo program using
tinygo flash -target=pca10040
nrfjprog/J-Link
Programs can be loaded onto the PCA10040 board using the nrfjprog
command line utility program.
First install the J-Link Software and Documentation Pack from Segger: https://www.segger.com/downloads/jlink/#J-LinkSoftwareAndDocumentationPack
Then install the nRF5x Command-Line Tools: https://docs.zephyrproject.org/latest/guides/tools/nordic_segger.html#nrf5x-command-line-tools-installation
Once you have installed both of these correctly, you will be able to flash the PCA10040 board with your TinyGo code.
- Plug your PCA10040 into your computer’s USB port.
- Build and flash your TinyGo program using
tinygo flash -target=pca10040 -programmer command