From 8c8de70f6edbc7996bf5e8bd9218af2a7accfcaf Mon Sep 17 00:00:00 2001 From: Johannes Hutter Date: Mon, 17 Sep 2018 21:15:08 +0200 Subject: [PATCH] samples: blink_led: add support for nRF boards Add support for nRF boards by using the software-based PWM driver. The prescaler has to be configured so that the clock runs slower in order to make the on-board LED blink in the way it is described in the Readme. Signed-off-by: Johannes Hutter --- samples/basic/blink_led/README.rst | 4 ++++ samples/basic/blink_led/prj_nrf52840_pca10056.conf | 7 +++++++ samples/basic/blink_led/src/main.c | 3 +++ 3 files changed, 14 insertions(+) create mode 100644 samples/basic/blink_led/prj_nrf52840_pca10056.conf diff --git a/samples/basic/blink_led/README.rst b/samples/basic/blink_led/README.rst index a5d5b34ad65..fb169bd6058 100644 --- a/samples/basic/blink_led/README.rst +++ b/samples/basic/blink_led/README.rst @@ -35,6 +35,10 @@ Hexiwear K64 No special board setup is necessary because there is an on-board RGB LED connected to the K64 PWM. +nRF52840_PCA10056 +================= +No special board setup is necessary because there is an on-board LED connected. + Building and Running ******************** diff --git a/samples/basic/blink_led/prj_nrf52840_pca10056.conf b/samples/basic/blink_led/prj_nrf52840_pca10056.conf new file mode 100644 index 00000000000..06ef306b9a1 --- /dev/null +++ b/samples/basic/blink_led/prj_nrf52840_pca10056.conf @@ -0,0 +1,7 @@ +CONFIG_STDOUT_CONSOLE=y +CONFIG_PRINTK=y +CONFIG_SYS_LOG=y +CONFIG_SYS_LOG_PWM_LEVEL=4 + +CONFIG_PWM=y +CONFIG_PWM_NRF5_SW_0_CLOCK_PRESCALER=9 diff --git a/samples/basic/blink_led/src/main.c b/samples/basic/blink_led/src/main.c index 558a458e8a1..63c0a6f76d8 100644 --- a/samples/basic/blink_led/src/main.c +++ b/samples/basic/blink_led/src/main.c @@ -27,6 +27,9 @@ #elif defined(CONFIG_SOC_QUARK_SE_C1000) || defined(CONFIG_SOC_QUARK_D2000) #define PWM_DRIVER CONFIG_PWM_QMSI_DEV_NAME #define PWM_CHANNEL 0 +#elif defined(CONFIG_SOC_FAMILY_NRF) +#define PWM_DRIVER CONFIG_PWM_NRF5_SW_0_DEV_NAME +#define PWM_CHANNEL LED0_GPIO_PIN #elif defined(CONFIG_BOARD_HEXIWEAR_K64) #define PWM_DRIVER GREEN_PWM_NAME #define PWM_CHANNEL GREEN_PWM_CHANNEL