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

产品网站建设广州口碑好的网站建设

产品网站建设,广州口碑好的网站建设,上海工程建设信息网官网,删除网站栏目一、简介LVGL全程LittleVGL#xff0c;是一个轻量化的#xff0c;开源的#xff0c;用于嵌入式GUI设计的图形库。并且配合LVGL模拟器#xff0c;可以在电脑对界面进行编辑显示#xff0c;测试通过后再移植进嵌入式设备中#xff0c;实现高效的项目开发。SquareLine Studi…一、简介LVGL全程LittleVGL是一个轻量化的开源的用于嵌入式GUI设计的图形库。并且配合LVGL模拟器可以在电脑对界面进行编辑显示测试通过后再移植进嵌入式设备中实现高效的项目开发。SquareLine Studio是LVGL官方推荐的UI设计平台可以便捷地设计界面并一键生成代码导出。导出的代码在模拟器和嵌入式设备上都适用。目前支持的LVGL版本为8.2和8.3。对个人而言注册即可免费使用。 官方地址SquareLine Studio二、platformio 移植1 PlatformIO下载LVGL库 在PlatformIO库中直接搜索LVGL库添加到工程ps因为这里下载的v8.1.0版本没有lv_demos若需要运行例程可以自己再下载一个不过注意下载完后需要lv_demo_conf_template.h改成lv_demo_conf.h要不然不能编译 2 修改文件名 lvgl_config_template.h修改为lvgl_config.h#if 0 的0改为1 这时候就可以编译了否则编译报错 3 移植显示驱动 添加TFT_eSPI库定义彩屏引脚在User_Setup.h文件里配置文件修改 在User_Setup.h文件中选择取消注释你需要的驱动文件修改分辨率 psLVGL的长宽设置是横着来看的原本TFT库的是竖着来看的所以这里长宽需要反过来当然视具体情况而定其他就不说了具体修改如下#define ST7789_DRIVER //色彩 #define ESP32_DMA #define TFT_RGB_ORDER TFT_BGR #define TFT_INVERSION_OFF //分辨率 #define TFT_WIDTH 240 #define TFT_HEIGHT 240 //管脚 #define TFT_MISO 19 #define TFT_MOSI 23 #define TFT_SCLK 18#define TFT_CS 5 // Chip select control pin #define TFT_CS -1 #define TFT_DC 27 // Data Command control pin #define TFT_RST 26 // Reset pin (could connect to RST pin) //字体 #define SMOOTH_FONT //SPI速率 #define SPI_FREQUENCY 40000000 #define SPI_READ_FREQUENCY 6000000 测试代码#include Arduino.h #include lvgl.h #include TFT_eSPI.hstatic lv_disp_draw_buf_t draw_buf; //定义显示器变量 static lv_color_t buf[TFT_WIDTH * 10]; //定义刷新缓存TFT_eSPI tft TFT_eSPI();/* Display flushing */ void my_disp_flush(lv_disp_drv_t *disp, const lv_area_t *area, lv_color_t *color_p) {uint32_t w (area-x2 - area-x1 1);uint32_t h (area-y2 - area-y1 1);tft.startWrite(); //使能写功能tft.setAddrWindow(area-x1, area-y1, w, h); //设置填充区域tft.pushColors((uint16_t *)color_p-full, w * h, true); //写入颜色缓存和缓存大小tft.endWrite(); //关闭写功能lv_disp_flush_ready(disp); //调用区域填充颜色函数 }void setup() {tft.init(); //初始化tft.setRotation(3); //屏幕旋转方向横向lv_init();lv_disp_draw_buf_init(draw_buf, buf, NULL, TFT_WIDTH * 10);/*Initialize the display*/static lv_disp_drv_t disp_drv;lv_disp_drv_init(disp_drv);/*Change the following line to your display resolution*/disp_drv.hor_res TFT_WIDTH;disp_drv.ver_res TFT_HEIGHT;disp_drv.flush_cb my_disp_flush;disp_drv.draw_buf draw_buf;lv_disp_drv_register(disp_drv);/*获取LVGL版本信息*/String LVGL_Arduino Hello LVGL! ;LVGL_Arduino String(V) lv_version_major() . lv_version_minor() . lv_version_patch(); //版本lv_obj_t *label lv_label_create(lv_scr_act());lv_label_set_text(label, LVGL_Arduino.c_str());lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); //居中显示 }void loop() {lv_timer_handler(); /* let the GUI do its work */delay(5); }4 使用SquareLine Studio生成ui代码1打开创建工程界面这里可以看到SquareLine Studio可以直接选择Arduino的tft_espi库的接口这大大方便了我们的移植。2设置屏幕参数3设计UI界面4生成代码选择Export-Export UI Files导出项目文件并将该文件夹放置到platform项目中的lib文件目录下有时候会报一些配置的错误 直接排除就好。因为有时候你的屏幕没有触摸功能但是你的UI有并且生成了代码就会报错。测试代码#include Arduino.h #include lvgl.h #include TFT_eSPI.h #include ui.hstatic lv_disp_draw_buf_t draw_buf; //定义显示器变量 static lv_color_t buf[TFT_WIDTH * 10]; //定义刷新缓存TFT_eSPI tft TFT_eSPI();/* Display flushing */ void my_disp_flush(lv_disp_drv_t *disp, const lv_area_t *area, lv_color_t *color_p) {uint32_t w (area-x2 - area-x1 1);uint32_t h (area-y2 - area-y1 1);tft.startWrite(); //使能写功能tft.setAddrWindow(area-x1, area-y1, w, h); //设置填充区域tft.pushColors((uint16_t *)color_p-full, w * h, true); //写入颜色缓存和缓存大小tft.endWrite(); //关闭写功能lv_disp_flush_ready(disp); //调用区域填充颜色函数 }void setup() {tft.init(); //初始化lv_init();lv_disp_draw_buf_init(draw_buf, buf, NULL, TFT_WIDTH * 10);/*Initialize the display*/static lv_disp_drv_t disp_drv;lv_disp_drv_init(disp_drv);/*Change the following line to your display resolution*/disp_drv.hor_res TFT_WIDTH;disp_drv.ver_res TFT_HEIGHT;disp_drv.flush_cb my_disp_flush;disp_drv.draw_buf draw_buf;lv_disp_drv_register(disp_drv);ui_init(); }void loop() {lv_timer_handler(); /* let the GUI do its work */delay(5); }
http://www.dnsts.com.cn/news/165556.html

相关文章:

  • 网络管理员需要懂网站建设吗seo做的比较牛的公司
  • 做高端企业网站phpcmsv9 网站搬家
  • 长沙网站备案拍照点自建站是什么意思
  • html网站代码网站页面尺寸
  • 如何开网站建设公司网页框架图
  • 网站开发和软件开发那个简单网站如何被收录情况
  • 建设银行临江市支行网站qq降龙是哪个公司开发的
  • 下载爱南宁官方网站江苏省交通运输厅门户网站建设管理办法
  • 免费的行情网站app软件大全网站建设需要哪些费用
  • 集团网站下分网站 模板wordpress开启多站点好处
  • 手机网站拦截怎么解除不用wordpress 知乎
  • win7做本地网站连云港网站建设价位
  • 做电器推广的网站青岛推广信息
  • 网站后台文章列表里的每篇文章的文字全部乱码怎么办?网站开发有几个阶段
  • 山西省城乡住房和建设厅网站首页西安seo关键词排名优化
  • 礼物说网站模板青海省wap网站建设公司
  • 普洱市网站建设网站装修的代码怎么做
  • html5 手机网站 模版wordpress后台自定义页面
  • 河北唐山网站建设爱站查询工具
  • 互联网建站谷歌关键词推广怎么做
  • 推荐聊城做网站国家企业信用信息公示系统官网全国
  • 网络公司如何开网站湖南长沙旅游十大必去景区
  • 瑞金网站建设推广wordpress防攻击
  • 做网站的linux程序代码vs怎么做网站
  • 小说网站如何做书源一女被多男做的视频网站
  • 和京东一样的网站建设网站是做手机版好还是pc版好
  • 手机网站的推广工程师培训
  • 建设营销型网站广州网站建设里怎么写文章
  • 毕节网站建设公司有云服务器和域名怎么做网站
  • 网站开发可能存在的困难新闻国际最新消息