zephyr/samples/drivers/led_lp5562
Andy Ross 32bb2395c2 timeout: Fix up API usage
Kernel timeouts have always been a 32 bit integer despite the
existence of generation macros, and existing code has been
inconsistent about using them.  Upcoming commits are going to make the
timeout arguments opaque, so fix things up to be rigorously correct.
Changes include:

+ Adding a K_TIMEOUT_EQ() macro for code that needs to compare timeout
  values for equality (e.g. with K_FOREVER or K_NO_WAIT).

+ Adding a k_msleep() synonym for k_sleep() which can continue to take
  integral arguments as k_sleep() moves away to timeout arguments.

+ Pervasively using the K_MSEC(), K_SECONDS(), et. al. macros to
  generate timeout arguments.

+ Removing the usage of K_NO_WAIT as the final argument to
  K_THREAD_DEFINE().  This is just a count of milliseconds and we need
  to use a zero.

This patch include no logic changes and should not affect generated
code at all.

Signed-off-by: Andy Ross <andrew.j.ross@intel.com>
2020-03-31 19:40:47 -04:00
..
boards
src timeout: Fix up API usage 2020-03-31 19:40:47 -04:00
CMakeLists.txt
prj.conf
README.rst
sample.yaml

.. _lp5562:

LP5562: 4-Channel RGB
######################

Overview
********

This sample controls 4 LEDs connected to a TI LP5562 driver, using the
following pattern:

 1. turn on LEDs to be red
 2. turn on LEDs to be green
 3. turn on LEDs to be blue
 4. turn on LEDs to be white
 5. turn on LEDs to be yellow
 6. turn on LEDs to be purple
 7. turn on LEDs to be cyan
 8. turn on LEDs to be orange
 9. turn off LEDs
 10. blink the LEDs in white
 11. turn off LEDs
 12. blink the LEDs in purple
 13. turn off LEDs

Refer to the `LP5562 Manual`_ for the RGB LED connections and color channel
mappings used by this sample.

Building and Running
********************

Build the application for the :ref:`nrf52840dk_nrf52840` board, and connect
a LP5562 LED driver on the bus I2C0 at the address 0x30.

.. zephyr-app-commands::
   :zephyr-app: samples/drivers/led_lp5562
   :board: nrf52840dk_nrf52840
   :goals: build
   :compact:

For flashing the application, refer to the Flashing section of the
:ref:`nrf52840dk_nrf52840` board documentation.

.. _LP5562 Manual: http://www.ti.com/lit/ds/symlink/lp5562.pdf