当前位置:网站首页>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 -_-||
边栏推荐
- Vs 2019 configure tensorrt to generate engine
- LVGL使用心得
- Agile certification (professional scrum Master) simulation exercise-2
- 解决高并发下System.currentTimeMillis卡顿
- QT based tensorrt accelerated yolov5
- 敏捷认证(Professional Scrum Master)模拟练习题-2
- The idea cannot be loaded, and the market solution can be applied (pro test)
- [pyg] understand the messagepassing process, GCN demo details
- Réglez la hauteur et lancez le système. Currenttimemillis catton
- Pat class B common function Usage Summary
猜你喜欢

Do you really understand relays?
![MySQL practice 45 lecture [transaction isolation]](/img/a5/5420651d6be51e892976f02be8c43c.png)
MySQL practice 45 lecture [transaction isolation]

The calculation of stripe, kernel and padding in CNN

分布式事务

Segmentation fault occurs during VFORK execution

Creation and destruction of function stack frame

I2C 子系统(四):I2C debug

The series of hyperbolic function in daily problem

MySql实战45讲【事务隔离】

Yiwen takes you to know ZigBee
随机推荐
com.fasterxml.jackson.databind.exc.InvalidFormatException问题
Section 26 detailed explanation and demonstration of IPSec virtual private network configuration experiment - simulation experiment based on packettracer8.0
MySql实战45讲【SQL查询和更新执行流程】
Are there any recommended term life insurance products? I want to buy a term life insurance.
I2C 子系统(一):I2C spec
I2C subsystem (III): I2C driver
将时间戳转为指定格式的时间
Destroy the session and empty the specified attributes
[Chongqing Guangdong education] cultural and natural heritage reference materials of China University of Geosciences (Wuhan)
Agile certification (professional scrum Master) simulation exercises
Distributed transaction
VS克隆时显示403错误
Vs 2019 configuration tensorrt
Bigvision code
Variable declarations following if statements
函数栈帧的创建与销毁
基于Qt的yolov5工程
Why does thread crash not cause JVM crash
[AI practice] Application xgboost Xgbregressor builds air quality prediction model (I)
I2C subsystem (II): I3C spec