当前位置:网站首页>Lvgl usage experience
Lvgl usage experience
2022-07-03 03:16:00 【Dorthyn】
There is too much to write , For a moment, I didn't know where to start . It's the Dragon Boat Festival holiday , Let's be healthy first , Roughly record the key points
Purpose
Add a menu interface to the board of Hisilicon chip .
course
- framebufferr
Try what the official manual recommends osd Not very good at , I found... By chance framebuffer useful , Just use this to make the menu . Very curious about the industry ( The embedded ) What happened UI Of , After asking so many questions, no one can answer , I think this question is very new , Hey, do it yourself . - lvgl
Look for embedded Related videos , I found that Mr. Wei Dongshan spoke well ,b Station has upload . So use framebuffer The basic menu is made in the way of dotting and adding font , Use a double linked list +json Storage menu , For a long time , It's too ugly to watch anymore , So I began to find alternative . Browse b I found squareline Of ui Design software , At last, I found lvgl And I saw that someone successfully applied it on Hisilicon , It's it ! - Engineering organization
Before that, there was actually a leftover problem that had not been solved : Hayes's sdk How to use ? How based on Hisilicon sdk Develop your own applications ? Such a big project , Handwritten with editor ? all 21 The century , There shouldn't be such low . ? New things should be fast , So start running the program directly in sample Under the demo Editor , direct make Just fine , Don't consider so many messy . This leads to the program relying on make Report errors and correct them , There is no deep understanding of cross compilation gdb How to operate . stay vscode Can rely on plug-ins combined with general makefile debugging , Hayes's sdk This road is obviously impassable . The problem is put on hold . - broken
squareline It is recommended to run with simulator ui, According to their official statement , The simulator runs through , Other platforms are also migrating quickly . export c/c++ Project only supports eclipse, Then you have to download eclipse Simulation run . First contact c/c++ Of eclipse, before ( During college ) use eclipse Compile java, Android program , Not seen for many years , It's still inseparable ~windows Run up gcc The program is inseparable from mingw, Now there is an upgraded version mingw64. - mingw64 Stumbling block
Official website There is a problem with the installation package provided , It can only be installed manually .

After a long toss, I finally It's not done , cut Linux Well , I can't stand it ! - Ubuntu Under the eclipse and squareline engineering
The following passage comes from squareline Export project
Eclipse project for SquareLine Studio and LVGL
This project can be used to build and run C/C++ UI code exported from SquareLine Studio.
Get started
- Install a compiler and related tools if you don’t have them yet:
- On Windows MinGW can be a good choice
- On Linux type in the Terminal:
sudo apt-get install gcc g++ gdb build-essential
- Install SDL (required to simulate a display)
- On Windows see for example this guide
- On Linux
sudo apt-get install libsdl2-dev
- Download and Install Eclipse CDT from http://www.eclipse.org/cdt/
Add the UI files
In SquareLine Studio click Export->Export Files and select the ui folder of this project
Open and build the project
- Start Eclipse
- Select the parent folder of the exported project as “Workspace”
- Select
File->Import->General->Exisiting project into Workspaceclick “Next” and browse the project - Build the project with
Project->Build - Run the project with
Run->Run.
The problem is that the prompt is not installed png library , direct sudo Download a development version -dev Just fine :
sudo apt install libpng-dev
Then follow the above steps to see demo The interface of .
7. transplant
Before deciding to try lvgl after , Just look for relevant information on how to make Hisilicon chip run this program .
Hayes Hi3519 transplant freetype zlib libpng16 libharfbuzz Add subtitles
I find Linux Many open source libraries of seem to have the same configuration process , First config, Again mak && make install, It is not clear why ~
How stupid is the first transplant ? Because I want to transfer the results directly to the Hisilicon chip , So after recompiling the libraries used above with a cross compiler, copy the whole package , Unrecognized libraries are put into /usr/lib/ Next , It turns out , Running is running , But what permission is denied when an error is reported , At present, I haven't figured out the reason .
- eclipse in c++ Add operations including paths and Library paths in development
- 【 The embedded 】— Cross compilation transplant ALSA1.2.2
stay eclipse Inferior transplantation squareline Use it to get .. I wanted to include Replace the directory with the directory under the cross compilation package ~ - lvgl framebuffer Transplantation practice reference
- There are different transplant methods for impassable chips , It's not just about changing the compiler , For details, please refer to the official github Instructions for use .
- lvgl stay linux Porting on the platform , And some of my own application attempts
The above link helps a lot , however lvgl The library structure has been adjusted , You can refer to how to configure parameters ( such as demos 's location has changed ) - Official transplantation , according to readme Just operate it .
- I will lvgl Change framebuffer
Combined with the above link readme, Change
#define USE_FBDEV 1
#define USE_EVDEV 1
- eclipse To configure c/c++ development environment
- Download from the official website c/c++ Version of eclipse
- Once you download it help/check for updates/cdt
- Project properties Internal configuration builder choose cdt
- makefile The project cannot be matched ( There is no such option )
- If it's cross compiling , Then the compiler and path can refer to the following configuration :
/opt/hisi-linux/x86-arm/aarch64-himix100-linux/
aarch64-himix100-linux-
- lvgl transplant —Linux fbdev&evdev( be based on LVGL v7)
- LVGL linux arm Detailed migration process on the platform ( On )
- LVGL linux arm Detailed migration process on the platform ( Next )
- lvgl transplant —Linux fbdev&evdev( be based on LVGL v7)
- LVGL8.1 Hi3536C Platform use
- [ Hayes ]–Hi3516aMpp Development environment configuration
- Hayes MPP Migration to eclipse Down to the present eclipse Use Hisilicon cross compiler to compile
- eclipse Flexible use makefile To compile the C/C++
- Learning notes linux( 3、 ... and )Linux Next IDE Configuration of
hearmissing semesterNot bad , I'm going to have a look - Universal Makefile Compilation and use in project engineering Makefile, Large project organization
First run the ./configure to generate the Makefile. After that, if you have CDT installed,just choose the option “File->New->Makefile Project With Existing Code” and point to the directory where the Makefile is stored.
With the above method, you can load Hisilicon sample, Work well
Linux + Eclipse Configure cross compile environment
10. makefile You can conditionally compile header files
I feel that Hisilicon will makefile Have fun ,linux,liteos,multi-core,single… Use different header files ,c The header files referenced by the file are not in the current directory ,ide I can't find it , Only when compiling make Intelligent compilation of [email protected] $^ Look for . I don't know how to use it like this makefile and eclipse application sdk Is that right -_-||
边栏推荐
- Limit of one question per day
- Vs 2019 configuration du moteur de génération de tensorrt
- How to use asp Net MVC identity 2 change password authentication- How To Change Password Validation in ASP. Net MVC Identity 2?
- I2C 子系统(四):I2C debug
- 从输入URL到页面展示这中间发生了什么?
- PHP constructor with parameters - PHP constructor with a parameter
- 基于QT的tensorRT加速的yolov5
- Yolov5 project based on QT
- C # general interface call
- [pyg] understand the messagepassing process, GCN demo details
猜你喜欢
![45 lectures on MySQL [index]](/img/f6/70be00028908cbd9ed7f2c77687cee.png)
45 lectures on MySQL [index]

Limit of one question per day

MySql实战45讲【全局锁和表锁】

LVGL使用心得

Spark on yarn resource optimization ideas notes

Docker install MySQL

敏捷认证(Professional Scrum Master)模拟练习题-2

idea 加载不了应用市场解决办法(亲测)

VS code配置虚拟环境

Section 26 detailed explanation and demonstration of IPSec virtual private network configuration experiment - simulation experiment based on packettracer8.0
随机推荐
How to limit the size of the dictionary- How to limit the size of a dictionary?
Docker install redis
float与0比较
解决高並發下System.currentTimeMillis卡頓
左连接,内连接
[pyg] understand the messagepassing process, GCN demo details
PAT乙级常用函数用法总结
Anhui University | small target tracking: large-scale data sets and baselines
模型转换onnx2engine
Agile certification (professional scrum Master) simulation exercise-2
Sous - système I2C (IV): débogage I2C
文件重命名
MySQL practice 45 [SQL query and update execution process]
idea 加载不了应用市场解决办法(亲测)
L'index des paramètres d'erreur est sorti de la plage pour les requêtes floues (1 > Nombre de paramètres, qui est 0)
Destroy the session and empty the specified attributes
MySQL Real combat 45 [SQL query and Update Execution Process]
BigVision代码
解决高并发下System.currentTimeMillis卡顿
二进制流转换成字节数组