当前位置:网站首页>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 Workspace
click “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 semester
Not 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 -_-||
边栏推荐
- The series of hyperbolic function in daily problem
- @Accessors注解作用指定前缀遵守驼峰命名
- Basic information of Promethus (I)
- Why does thread crash not cause JVM crash
- Pytorch配置
- The difference between componentscan and componentscans
- Pytoch lightweight visualization tool wandb (local)
- PAT乙级常用函数用法总结
- Model transformation onnx2engine
- Converts a timestamp to a time in the specified format
猜你喜欢
别再用 System.currentTimeMillis() 统计耗时了,太 Low,StopWatch 好用到爆!
3D drawing example
函数栈帧的创建与销毁
The idea setting code is in UTF-8 idea Properties configuration file Chinese garbled
力扣------网格中的最小路径代价
Anhui University | small target tracking: large-scale data sets and baselines
VS 2019 配置tensorRT生成engine
I2C 子系统(二):I3C spec
VS code配置虚拟环境
LVGL使用心得
随机推荐
3D drawing example
Chart. JS multitooltip tag - chart js multiTooltip labels
The idea cannot be loaded, and the market solution can be applied (pro test)
com. fasterxml. jackson. databind. Exc.invalidformatexception problem
Opengauss database development and debugging tool guide
MySQL Real combat 45 [SQL query and Update Execution Process]
[mathematical logic] normal form (conjunctive normal form | disjunctive normal form | major item | minor item | maximal item | minor item | principal conjunctive normal form | principal disjunctive no
VS克隆时显示403错误
模糊查询时报错Parameter index out of range (1 > number of parameters, which is 0)
Docker install redis
[combinatorics] number of solutions of indefinite equations (number of combinations of multiple sets R | number of non negative integer solutions of indefinite equations | number of integer solutions
The series of hyperbolic function in daily problem
softmax的近似之NCE详解
VS 2019安装及配置opencv
程序员新人上午使用 isXxx 形式定义布尔类型,下午就被劝退?
Find the storage address of the elements in the two-dimensional array
别再用 System.currentTimeMillis() 统计耗时了,太 Low,StopWatch 好用到爆!
[Chongqing Guangdong education] cultural and natural heritage reference materials of China University of Geosciences (Wuhan)
Sous - système I2C (IV): débogage I2C
监听对象中值变化及访问