1.. _module-pw_display: 2 3========== 4pw_display 5========== 6.. pigweed-module:: 7 :name: pw_display 8 9.. attention:: 10 This module's initial implementation is informed by SEED :ref:`seed-0104`, 11 but is being reevaluated as it is migrated from `Pigweed's experimental 12 repsitory <https://pigweed.googlesource.com/pigweed/experimental/>`_. 13 14--------- 15Libraries 16--------- 17 18Color 19----- 20.. seealso:: 21 Color API: :ref:`module-pw_display-api-color` 22 23The color library defines base pixel format types and the `ColorRgba` class for 24converting between various types. 25 26Display controllers often support a variety of data formats for representing a 27single pixel. For example: 28 29256 color grayscale: 30 8 bits per pixel for a total of 256 shades of gray 314k color: RGB444 32 12 bits total; 4 bits for each color: red, green, blue 3365k color: RGB565 34 16 bits total; 5 bits for red, 6 bits for green and 5 bits for blue 35262k color: RGB666 36 18 bits total; 6 bits for each color: red, green, blue 3716.7M color: RGB888 38 24 bits total; 8 bits for each color: red, green, blue 39 40.. note:: 41 ``pw_display`` drawing libraries will initially only operate on RGB565 pixels 42 for a few reasons: 43 44 - 16 bits per color is easily represented as a single 16 bit unsigned 45 integer. No special framebuffer data packing logic is needed for 100% 46 memory utilization. 47 - RGB565 is 65k color which is a good compromise on color fidelity and memory 48 footprint. 49 - RGB565 has wide support by common display controllers used in the embedded 50 space. 51 52.. toctree:: 53 :hidden: 54 :maxdepth: 1 55 56 api 57