What's inside
2 sections- LVGL
- in Embedded Devices
- Table of Contents
- 1. Environment Setup
- Step 1.1 — Tools
- Step 1.2 — CubeMX Peripheral Configuration
- Step 1.3 — Add LVGL to the Project
- 2. Project Configuration (lv_conf.h)
- 3. Display & Input Driver Integration
- Step 3.1 — Frame Buffers
- Step 3.2 — Register the Display Driver
- Step 3.3 — Touch Input Driver
- Step 3.4 — Tick Source & Main Loop
- 4. LVGL Core Concepts
- 5. Widgets — Step by Step
- Label
- Button + Event
- Slider
- Switch / Checkbox
- Dropdown & Roller
- Bar & Spinner (progress/status)
- Table
- Tabview (for multi-page UIs)
- List & Menu
- 6. Building Forms
- Step 6.1 — Layout with Flex
- Step 6.2 — Labeled Text Field
- Step 6.3 — On-Screen Keyboard Binding
- Step 6.4 — Numeric Field with Validation
- Step 6.5 — Submit / Cancel Row
- 7. Charts & Graphs
- Step 7.1 — Line Chart
- Step 7.2 — Bar Chart
- Step 7.3 — Multiple Series & Legend
- Step 7.4 — Cursors & Tooltips (v9)
- 8. Real-Time Waveform Display (CRO / Oscilloscope)
- Approach A — lv_chart in "point count" scroll mode
- Approach B — lv_canvas for a true scope grid + trace (more control)
- Step 8.1 — Performance Notes for CRO-style Displays
- 9. Fonts
- Step 9.1 — Built-in Fonts
- Step 9.2 — Custom / Converted Fonts
- Step 9.3 — Icon Fonts / Symbols
- Step 9.4 — Storing Fonts in External Flash/SDRAM
- 10. Multi-Language / Internationalization
- Step 10.1 — UTF-8 Support
- Step 10.2 — Translation Table Approach
- Step 10.3 — Rebuilding UI Text on Language Switch
- Step 10.4 — Non-Latin Scripts (CJK, Arabic, etc.)
- Step 10.5 — Optional: gettext-style Workflow
- 11. Animations, Fading & Transitions
- Step 11.1 — Basic lv_anim_t Usage
- Step 11.2 — Fading an Object In/Out
- Step 11.3 — Style Transitions (hover/press states)
- Step 11.4 — Screen Transitions
- Step 11.5 — Looping / Repeating Animations (e.g., a pulsing status LED icon)
- Step 11.6 — Chained Animations
- Step 11.7 — Performance Note
- 12. Building a Simple Game
- Step 12.1 — Game Board with Canvas
- Step 12.2 — Game State
- Step 12.3 — Game Loop via lv_timer
- Step 12.4 — Redraw
- Step 12.5 — Input (buttons or swipe gestures)
- 13. Performance Tuning on STM32H7
- 14. Debugging Checklist
- Suggested Project Structure
- Where to Go Next
Code & supporting files
No supporting links for this eBook yet.More in Firmware
FirmwareSafety Standards in Firmware DevelopmentFirmwareSafety Standards in Firmware DevelopmentFirmwareEmbedded Debugging Complete Guide from ScratchFirmwareEmbedded Debugging Complete Guide from ScratchFirmwareZephyr RTOS - The Advanced Engineering HandbookFirmware › RTOSZephyr RTOS - The Advanced Engineering HandbookFirmwareSTM32H7 Graphics TutorialsFirmware › Microcontrollers › STM32STM32H7 Graphics Tutorials