当前位置: 首页 > news >正文

网站建设 证书建购物网站 资质

网站建设 证书,建购物网站 资质,太原网页设计师,wordpress模板开发想要在ESP32-C3使用Micropython开发GUI,所以需要编译lv_micropython,当前github上的版本是9.1.0。 一、开发环境 因为编译lv_micropython需要在linux系统下,但是我的电脑是windows系统,所以我在windows系统上安装了VMware虚拟机&…

        想要在ESP32-C3使用Micropython开发GUI,所以需要编译lv_micropython,当前github上的版本是9.1.0。

一、开发环境

        因为编译lv_micropython需要在linux系统下,但是我的电脑是windows系统,所以我在windows系统上安装了VMware虚拟机,在VMware虚拟机中安装了ubuntu18系统。

二、下载lv_micropython

github:GitHub - lvgl/lv_micropython: Micropython bindings to LVGL for Embedded devices, Unix and JavaScript

在ubuntu系统中其中命令终端,cd到存放源码的目录。

克隆lv_micropython:

git clone https://github.com/lvgl/lv_micropython.git

 更新其子模块:

cd lv_micropython
git submodule update --init --recursive lib/lv_bindings

三、编译lv_micropython

1、编译mpy-cross:
make -C mpy-cross

mpy-cross 是一个用于将 Python 代码预编译为适用于 MicroPython 设备的 .mpy 文件的工具。 

2、编译Unix (Linux) port(如果需要在PC上开发LVGL需要执行这一步)

更新软件包: 

sudo apt-get update

安装build-essential libreadline-dev libffi-dev:

sudo apt-get install build-essential libreadline-dev libffi-dev

安装libsdl2-2.0-0 libsdl2-dev :

sudo apt-get install libsdl2-2.0-0 libsdl2-dev

libsdl2-2.0-0 是 Simple DirectMedia Layer 2.0 库,用于提供低层次的访问音频、键盘、鼠标、半导体和显示硬件。libsdl2-dev 是开发 SDL 应用程序所需的开发文件。

安装parallel:

sudo apt-get install parallel

parallel 是 GNU 工具的一部分,用于并行执行多个任务。 

安装Python3:

sudo apt-get install python3.8

 也可安装python3的其它版本,如果系统已经安装了python3就不用再安装了,可通过命令:

python3 -V

查询是否已安装python3以及安装的版本。

初始化和更新ports/unix子模块:

make -C ports/unix submodules

编译 ports/unix:

make -C ports/unix

 编译成功后ports/unix/build-standard/路径下会生成一个micropython文件,这个和github上展示的不一样,github展示的是在ports/unix/路径下生成一个micropython文件。

注意:如果编译出错,请看“遇到问题”章节。 

四、运行demo

运行advanced_demo.py示例,在文件末尾添加以下代码,然后保存。

if __name__ == '__main__':import timewhile True:time.sleep(1)

执行命令运行demo:

./ports/unix/build-standard/micropython lib/lv_bindings/examples/advanced_demo.py 

UI效果: 

五、遇到问题

../../lib/lv_bindings/lvgl/src/drivers/sdl/lv_sdl_window.c: In function ‘texture_resize’:
../../lib/lv_bindings/lvgl/src/drivers/sdl/lv_sdl_window.c:375:5: error: unknown type name ‘SDL_PixelFormatEnum’; did you mean ‘SDL_PixelFormat’?SDL_PixelFormatEnum px_format = SDL_PIXELFORMAT_RGB565;^~~~~~~~~~~~~~~~~~~SDL_PixelFormat
See https://github.com/micropython/micropython/wiki/Build-Troubleshooting
../../py/mkrules.mk:83: recipe for target 'build-standard/lib/lv_bindings/lvgl/src/drivers/sdl/lv_sdl_window.o' failed
make: *** [build-standard/lib/lv_bindings/lvgl/src/drivers/sdl/lv_sdl_window.o] Error 1
make: Leaving directory '/home/caiyong/share/lv_micropython/ports/unix'

不知道的SDL_PixelFormatEnum类型,可能是SDL2版本不匹配,打开/usr/include/SDL2/下的一些.h文件,也没有找到SDL_PixelFormatEnum声明。

解决方法:

打开lv_micropython/lib/lv_bindings/lvgl/src/drivers/sdl/lv_sdl_window.c文件,修改代码。

将:

#if LV_COLOR_DEPTH == 32SDL_PixelFormatEnum px_format = SDL_PIXELFORMAT_RGB888; /*same as SDL_PIXELFORMAT_RGB888, but it's not supported in older versions*/
#elif LV_COLOR_DEPTH == 24SDL_PixelFormatEnum px_format = SDL_PIXELFORMAT_BGR24;
#elif LV_COLOR_DEPTH == 16SDL_PixelFormatEnum px_format = SDL_PIXELFORMAT_RGB565;

改为:

#if LV_COLOR_DEPTH == 32Uint32 px_format = SDL_PIXELFORMAT_RGB888; /*same as SDL_PIXELFORMAT_RGB888, but it's not supported in older versions*/
#elif LV_COLOR_DEPTH == 24Uint32 px_format = SDL_PIXELFORMAT_BGR24;
#elif LV_COLOR_DEPTH == 16Uint32 px_format = SDL_PIXELFORMAT_RGB565;

使用 Uint32代替SDL_PixelFormatEnum定义px_format 变量。

http://www.yayakq.cn/news/631153/

相关文章:

  • 做网站用微信收款还是支付宝网站有版权吗
  • 徐州市 两学一做网站seo排名工具站长
  • 哈尔滨住房和城乡建设局网站宝洁公司网站建设现状
  • 湖州网站建设哪家公司好wordpress wpdx
  • 左右翻网站模版wordpress批量修改文章内容
  • wordpress 4.9.3结构优化
  • 国外网站排行郑州网站推广方法
  • 仿站吧网站建设部门的职责
  • 网站开发商务合同人工智能网站建设
  • 网站的互动功能商城网站支付端怎么做的
  • 大良网站建设如何建设网站 (公司)
  • 织梦做网站的详情怎么制作网页支付链接
  • 上传商品的网站做二手手机交易网站
  • 品牌策划网站推荐wordpress中collapse
  • 建设拍卖网站开发个app需要多少钱?
  • 网站如何接广告华东建设安装有限公司网站
  • 汕头企业网站建设模板图片制作表情包怎么做
  • 天津做网站就到徽信xiala5建设运营网站
  • 南京建设行政主管部门网站网站开发需求方案模板
  • 北京工程建设交易信息网站检察内网门户网站建设
  • 关键词网站建设福州 建站 软件
  • 定制网站建设流程lnmp wordpress 树莓派
  • 一条龙网站建设价格创建网站的成本
  • 学校招聘教师网站建设开小厂一年赚50万
  • 农业畜牧网站开发西安做网站商标
  • 个人网站可以备案几个做淘宝优惠券推广网站
  • 手机网站商城建设深圳网站建设公司服务怎么做
  • dede 友情链接 网站简况 调用襄阳注册公司
  • 网站公司设计上海人才市场档案存放中心
  • h5网站开发流程共享办公室租赁平台