# lv_st_ltdc.h (/api/public/drivers/display/lv_st_ltdc_h)



<ApiSummary functions="2" />

Functions [#functions]

<ApiMember kind="function" name="lv_st_ltdc_create_direct" file="public/drivers/display/lv_st_ltdc.h" line="42" url="https://github.com/lvgl/lvgl/tree/e1a0ad863f29742359bc680d6a7d973448ec2285/include/lvgl/drivers/display/lv_st_ltdc.h#L42">
  lv_st_ltdc_create_direct [#lv_st_ltdc_create_direct]

  Create a direct render mode display bound to a LTDC layer.

  ```c title=" " lineNumbers=1
  lv_display_t * lv_st_ltdc_create_direct(void *fb_adr_1, void *fb_adr_2, uint32_t layer_idx)
  ```

  <span className="sr-only">
    Parameters
  </span>

  | Name        | Type       | Description                                                                                                               |
  | ----------- | ---------- | ------------------------------------------------------------------------------------------------------------------------- |
  | `fb_adr_1`  | `void *`   | The LTDC layer's framebuffer memory address.                                                                              |
  | `fb_adr_2`  | `void *`   | An additional framebuffer-sized buffer to use for double buffering. **May** be `NULL`. When NULL a single buffer is used. |
  | `layer_idx` | `uint32_t` | The LTDC layer number to bind the display to. Typically 0 or 1.                                                           |

  **Returns:** <ApiLink name="lv_display_t" display="lv_display_t *" /> — The display.
</ApiMember>

<ApiMember kind="function" name="lv_st_ltdc_create_partial" file="public/drivers/display/lv_st_ltdc.h" line="54" url="https://github.com/lvgl/lvgl/tree/e1a0ad863f29742359bc680d6a7d973448ec2285/include/lvgl/drivers/display/lv_st_ltdc.h#L54">
  lv_st_ltdc_create_partial [#lv_st_ltdc_create_partial]

  Create a partial render mode display bound to a LTDC layer. The layer's framebuffer is flushed to internally. Enable `LV_ST_LTDC_USE_DMA2D_FLUSH` for parallel flushing.

  ```c title=" " lineNumbers=1
  lv_display_t * lv_st_ltdc_create_partial(void *render_buf_1, void *render_buf_2, uint32_t buf_size, uint32_t layer_idx)
  ```

  <span className="sr-only">
    Parameters
  </span>

  | Name           | Type       | Description                                                                                             |
  | -------------- | ---------- | ------------------------------------------------------------------------------------------------------- |
  | `render_buf_1` | `void *`   | A render buffer.                                                                                        |
  | `render_buf_2` | `void *`   | An additional render buffer for double-buffering. **May** be `NULL`. When NULL a single buffer is used. |
  | `buf_size`     | `uint32_t` | The size of the buffer(s) in bytes.                                                                     |
  | `layer_idx`    | `uint32_t` | The LTDC layer number to bind the display to. Typically 0 or 1.                                         |

  **Returns:** <ApiLink name="lv_display_t" display="lv_display_t *" /> — The display.
</ApiMember>

Dependencies [#dependencies]

<FileIncludes includes="[&#x22;lv_conf_internal.h&#x22;, &#x22;lv_display.h&#x22;]" includedBy="[&#x22;lvgl.h&#x22;]" transitiveIncludes="[&#x22;lv_area.h&#x22;, &#x22;lv_assert.h&#x22;, &#x22;lv_color.h&#x22;, &#x22;lv_color_op.h&#x22;, &#x22;lv_event.h&#x22;, &#x22;lv_log.h&#x22;, &#x22;lv_math.h&#x22;, &#x22;lv_mem.h&#x22;, &#x22;lv_palette.h&#x22;, &#x22;lv_timer.h&#x22;, &#x22;lv_types.h&#x22;]" />
