PWM
The PWM sample demonstrates how to configure and use Pulse Width Modulation (PWM) with nRF Connect SDK Bare Metal option.
Requirements
The sample supports the following development kits:
The following board variants do not have DFU capabilities:
S115:
Hardware platform |
PCA |
Board target |
|---|---|---|
PCA10156 |
bm_nrf54l15dk/nrf54l15/cpuapp/s115_softdevice |
|
nRF54L15 DK (emulating nRF54L10) |
PCA10156 |
bm_nrf54l15dk/nrf54l10/cpuapp/s115_softdevice |
nRF54L15 DK (emulating nRF54L05) |
PCA10156 |
bm_nrf54l15dk/nrf54l05/cpuapp/s115_softdevice |
PCA10184 |
bm_nrf54lm20dk/nrf54lm20a/cpuapp/s115_softdevice |
S145:
Hardware platform |
PCA |
Board target |
|---|---|---|
PCA10156 |
bm_nrf54l15dk/nrf54l15/cpuapp/s145_softdevice |
|
nRF54L15 DK (emulating nRF54L10) |
PCA10156 |
bm_nrf54l15dk/nrf54l10/cpuapp/s145_softdevice |
nRF54L15 DK (emulating nRF54L05) |
PCA10156 |
bm_nrf54l15dk/nrf54l05/cpuapp/s145_softdevice |
PCA10184 |
bm_nrf54lm20dk/nrf54lm20a/cpuapp/s145_softdevice |
The following board variants have DFU capabilities:
S115:
Hardware platform |
PCA |
Board target |
|---|---|---|
PCA10156 |
bm_nrf54l15dk/nrf54l15/cpuapp/s115_softdevice/mcuboot |
|
nRF54L15 DK (emulating nRF54L10) |
PCA10156 |
bm_nrf54l15dk/nrf54l10/cpuapp/s115_softdevice/mcuboot |
nRF54L15 DK (emulating nRF54L05) |
PCA10156 |
bm_nrf54l15dk/nrf54l05/cpuapp/s115_softdevice/mcuboot |
PCA10184 |
bm_nrf54lm20dk/nrf54lm20a/cpuapp/s115_softdevice/mcuboot |
|
PCA10214 |
bm_nrf54ls05dk/nrf54ls05b/cpuapp/s115_softdevice/mcuboot |
S145:
Hardware platform |
PCA |
Board target |
|---|---|---|
PCA10156 |
bm_nrf54l15dk/nrf54l15/cpuapp/s145_softdevice/mcuboot |
|
nRF54L15 DK (emulating nRF54L10) |
PCA10156 |
bm_nrf54l15dk/nrf54l10/cpuapp/s145_softdevice/mcuboot |
nRF54L15 DK (emulating nRF54L05) |
PCA10156 |
bm_nrf54l15dk/nrf54l05/cpuapp/s145_softdevice/mcuboot |
PCA10184 |
bm_nrf54lm20dk/nrf54lm20a/cpuapp/s145_softdevice/mcuboot |
Overview
The sample initializes a PWM instance that blinks LED 1 and LED 3 on the device.
Note
This sample uses GPIO pins connected to LEDs to demonstrate PWM functionality. The PWM signal can only be exposed on GPIO pins that belong to the same domain as the PWM instance. This limits which LEDs on a given DK can be used. For example, on the nRF54L Series, PWM20/21/22 and GPIO Port P1 share the same domain. Therefore, on the nRF54L15 DK, only LEDs connected to P1 work with PWM: LED 1 and LED 3.
User interface
- LED 0:
Lit when the device is initialized.
- LED 1:
Breathing pattern.
- LED 3:
Breathing pattern.
Building and running
This sample can be found under samples/peripherals/pwm/ in the Bare Metal folder structure.
For details on how to create, configure, and program a sample, see Getting Started with the samples.
Testing
You can test this sample by performing the following steps:
Compile and program the application.
Observe that the
PWM sample initializedmessage is printed.Observe that LED 1 and LED 3 have a breathing pattern.