LVGL Minesweeper Game
Source Code Path: example/multimedia/lvgl/games/minesweeper
This is a minesweeper game example implemented based on LVGL. All operations are performed through the LVGL graphics library without the need to interface with underlying hardware. This example demonstrates how to use LVGL to create interactive game applications, including graphical interface rendering, user input handling, and game logic implementation.
Usage
The following sections provide only absolutely necessary information. For complete steps on configuring SiFli-SDK and using it to build and run projects, please refer to the SiFli-SDK Quick Start
Supported Development Boards
This example can run on the following development boards:
eh-lb563
SF32LB52x series
SF32LB56x series
This example demonstrates a minesweeper game where all operations are implemented based on LVGL without the need to interface with any underlying hardware.
Project Compilation and Download:
Board projects in the project directory can be compiled for specific boards by specifying the board:
To compile a project that can run on HDK 563, execute
scons --board=eh-lb563
to generate the projectDownload can be performed through download.bat in the build directory. For example, to flash the 563 project generated in the previous step, execute
build_eh-lb563\download.bat
for JLink downloadSpecial note: For SF32LB52x/SF32LB56x series, an additional uart_download.bat will be generated. You can execute this script and enter the download UART port number to perform the download Simulator project is located in the simulator directory:
Compile using scons. The simulator/msvc_setup.bat file needs to be modified accordingly to match your local MSVC configuration
You can also use
scons --target=vs2017
to generate an MSVC project (project.vcxproj) for compilation with Visual Studio.
Note
If you are not using VS2017 (e.g., VS2022), you will be prompted to upgrade the MSVC SDK when loading the project. It can be used after upgrading.
Troubleshooting
For any technical questions, please submit an issue on GitHub