在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

RT-Thread LVGL觸摸屏對接記錄

冬至子 ? 來源:螺絲松掉的人 ? 作者:螺絲松掉的人 ? 2023-08-07 17:22 ? 次閱讀

LVGL(輕巧而多功能的圖形庫)是一個免費的開放源代碼圖形庫,它提供創建具有易于使用的圖形元素,精美的視覺效果和低內存占用的嵌入式GUI所需的一切。

RT-Thread 目前已經支持 LVGL,4.1.1 版本之后(含4.1.1)移植 LVGL 的時候,只需要完善lv_conf.h 、lv_port_disp.c、 lv_port_indev.c 這三個文件即可,這三個文件的作用在后面介紹。

開始移植之前,需要檢查使用的顯示和輸入設備是否已經有驅動支持,如果沒有驅動支持的話需要自行對接,不對接到 RT-Thread 的設備框架,直接驅動也是可以的。

準備工作

這里默認顯示和觸摸的驅動已經沒有問題,這次移植我使用的觸摸屏顯示芯片為 st7796 ,觸摸芯片為 gt911 。

首先可以直接復制一個已經對接好的 LVGL 文件作為模板,再在此基礎上進行修改,例如 rt-thread-masterbspstm32stm32l475-atk-pandoraapplicationslvgl ,結合板卡情況修改其中的lv_conf.h 、lv_port_disp.c、 lv_port_indev.c 三個文件即可, SConscript 自行按需修改。

LVGL 配置文件

lv_conf.h 為 lVGL 配置文件,其中需要配置一些顯示器的主要參數,移植時至少要配置好一下三個選項

LV_HOR_RES_MAX 顯示器的水平分辨率。
LV_VER_RES_MAX 顯示器的垂直分辨率。
LV_COLOR_DEPTH 顏色深度,其取值對應如下:
8 - RG332
16 - RGB565
32 - (RGB888和ARGB8888)
對接顯示接口
在lv_port_disp.c中對接 LVGL 的顯示接口,根據已有的模板,最重要的是對接以下接口

/*Flush the content of the internal buffer the specific area on the display
You can use DMA or any hardware acceleration to do this operation in the background but
'lv_disp_flush_ready()' has to be called when finished. /
static void disp_flush(lv_disp_drv_t * disp_drv, const lv_area_t * area, lv_color_t * color_p)
{
/
color_p is a buffer pointer; the buffer is provided by LVGL */
//在這里填入對應顯示驅動的加載接口
//示例:
//lcd_load(area->x1, area->x2, area->y1, area->y2, color_p);
/*IMPORTANT!!!
Inform the graphics library that you are ready with the flushing /
lv_disp_flush_ready(disp_drv);
}
在注釋的地方填入自己顯示驅動的對應接口即可,需要注意傳入的參數順序和類型。

還需要初始化 lv_disp_buf_t 和 lv_disp_drv_t 變量,

對接觸摸輸入接口

在lv_port_indev.c中對接 LVGL 的輸入接口,LVGL 支持多種類型的輸入設備,例如觸摸,鍵盤,編碼器等,我這里使用的是觸摸類型。

輸入接口必須初始化 lv_indev_drv_t 變量,最重要的是實現其 read_cb 回調函數,從而獲取觸摸信息。其余具體配置可以查看:Input device interface — LVGL documentation

對接完成以后,記得檢查 Kconfig 以及 scons 的相關配置。可以運行 demo 進行測試基本功能,例如觸摸點是否準確,點擊滑動等是否正常,顯示刷新是否正常等。

需要提醒大家注意的一個點:確保觸摸和顯示的坐標是否對應。

可以看出只要顯示和輸入設備的驅動沒有問題,對接 LVGL 是很快的。那么行動起來,讓 LVGL 運行起來吧!

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 觸摸屏
    +關注

    關注

    42

    文章

    2362

    瀏覽量

    118126
  • RT-Thread
    +關注

    關注

    32

    文章

    1372

    瀏覽量

    41565
  • STM32L4
    +關注

    關注

    1

    文章

    42

    瀏覽量

    9612
  • RGB屏
    +關注

    關注

    0

    文章

    9

    瀏覽量

    1281
  • LVGL
    +關注

    關注

    1

    文章

    100

    瀏覽量

    3571
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    RT-Thread記錄(一、版本開發環境及配合CubeMX)

    RT-Thread 學習記錄的第一篇文章,RT-Thread記錄(一、RT-Thread 版本、RT-T
    的頭像 發表于 06-20 00:28 ?5818次閱讀
    <b class='flag-5'>RT-Thread</b><b class='flag-5'>記錄</b>(一、版本開發環境及配合CubeMX)

    RT-Thread記錄(二、RT-Thread內核啟動流程)

    在前面我們RT-Thread Studio工程基礎之上講一講RT-Thread內核啟動流程.
    的頭像 發表于 06-20 00:30 ?5528次閱讀
    <b class='flag-5'>RT-Thread</b><b class='flag-5'>記錄</b>(二、<b class='flag-5'>RT-Thread</b>內核啟動流程)

    RT-Thread NUC97x 移植 LVGL

    不涉及 rt-thread 驅動,但是它是 LVGLrt-thread 的接口。LVGLrt-thread 上運行的基石。
    發表于 07-08 09:37 ?1659次閱讀

    RT-Thread Studio使用記錄資料匯總

    。剛好手頭有一塊吃灰很久的觸摸屏,再薅上嘉立創的羊毛做塊板子,準備做個觸摸小玩具。一、 做板 設計盡量使用手邊有的元器件,節省開支。芯片用 STM32F407VE ,再添加上 FLASH 、TF 卡
    發表于 03-22 10:26

    在基于PC的RT-Thread模擬器上搭建LVGL圖形庫

    前言RT-Thread 當前的版本:4.1.0,通過簡單的配置就可以支持最新的LVGL圖形庫,LVGL圖形庫以軟件包的方式加入工程LVGL 可以認為是當前開源、免費的優秀GUI的圖形庫
    發表于 06-13 11:03

    RT-Thread編程指南

    RT-Thread編程指南——RT-Thread開發組(2015-03-31)。RT-Thread做為國內有較大影響力的開源實時操作系統,本文是RT-Thread實時操作系統的編程指南
    發表于 11-26 16:06 ?0次下載

    RT-Thread Smart已正式上線

    構建或其他的構建工具,例如xmake,cmake等,并對接 RT-Thread 在線軟件包;同時支持 POSIX,方便 Linux 應用的移植。
    的頭像 發表于 11-29 10:31 ?3049次閱讀

    記錄——基于 RT-Thread 實現 USB 虛擬串口

    記錄——基于 RT-Thread 實現 USB 虛擬串口記錄一下我在正點原子 F429 阿波羅開發板上實現 USB 虛擬串口的過程,希望可以幫助到其他想要學習 USB 的人。首先,我更新了一下
    發表于 12-02 17:21 ?6次下載
    <b class='flag-5'>記錄</b>——基于 <b class='flag-5'>RT-Thread</b> 實現 USB 虛擬串口

    RT-Thread學習筆記 RT-Thread的架構概述

    RT-Thread 簡介 作為一名 RTOS 的初學者,也許你對 RT-Thread 還比較陌生。然而,隨著你的深入接觸,你會逐漸發現 RT-Thread 的魅力和它相較于其他同類型 RTOS
    的頭像 發表于 07-09 11:27 ?4925次閱讀
    <b class='flag-5'>RT-Thread</b>學習筆記 <b class='flag-5'>RT-Thread</b>的架構概述

    RT-Thread文檔_RT-Thread 簡介

    RT-Thread文檔_RT-Thread 簡介
    發表于 02-22 18:22 ?5次下載
    <b class='flag-5'>RT-Thread</b>文檔_<b class='flag-5'>RT-Thread</b> 簡介

    RT-Thread文檔_RT-Thread 潘多拉 STM32L475 上手指南

    RT-Thread文檔_RT-Thread 潘多拉 STM32L475 上手指南
    發表于 02-22 18:23 ?10次下載
    <b class='flag-5'>RT-Thread</b>文檔_<b class='flag-5'>RT-Thread</b> 潘多拉 STM32L475 上手指南

    RT-Thread文檔_RT-Thread SMP 介紹與移植

    RT-Thread文檔_RT-Thread SMP 介紹與移植
    發表于 02-22 18:31 ?9次下載
    <b class='flag-5'>RT-Thread</b>文檔_<b class='flag-5'>RT-Thread</b> SMP 介紹與移植

    基于RT-Thread Studio學習

    前期準備:從官網下載 RT-Thread Studio,弄個賬號登陸,開啟rt-thread學習之旅。
    的頭像 發表于 05-15 11:00 ?5075次閱讀
    基于<b class='flag-5'>RT-Thread</b> Studio學習

    基于 RT-Thread 的 RoboMaster 電控框架(一)

    記錄與分享,希望能幫助到更多初識 RT-Thread 的小伙伴,也歡迎大家交流分享,指正不足,共同進步。 背景
    的頭像 發表于 09-19 19:55 ?1118次閱讀

    LPC55S69對接RT-Thread PWM設備框架

    在使用 RT-Thread 的 bsp pwm 的時候,注意到 lpc55sxx 系列只對接了通用定時器2中的通道1作為 PWM 輸出。但其實 LPC55S69 具備非常多的 PWM 資源。于是根據 RT-Thread 設備驅動
    的頭像 發表于 10-11 15:02 ?1127次閱讀
    主站蜘蛛池模板: 天天操天 | 婷婷丁香四月 | 国内一级特黄女人精品片 | 三级网址在线观看 | 日本在线黄色 | 天天视频国产精品 | 777色狠狠一区二区三区香蕉 | 大杳蕉伊人狼人久久一本线 | 成年网站在线观看 | 日韩一级在线视频 | 99久久免费精品高清特色大片 | 91av视频在线 | 香蕉视频网站在线播放 | 神马午夜限制 | 一区二区三区www | 国产成人综合亚洲怡春院 | 成人男女啪啪免费观看网站 | 亚洲二区视频 | 在线片视频网站 | 藏经阁在线观看 | 直接看黄的网站 | 爱爱网站免费 | 亚洲香蕉网久久综合影院3p | 亚洲区一二三四区2021 | 天天弄天天模 | 婷婷 色天使 | 97午夜理伦片在线影院 | 日韩精品视频免费观看 | va在线 | 亚洲一区二区视频 | 视频黄色免费 | 亚洲伊人成人网 | 俄罗斯美女在线观看一区 | 男人搡女人视频免费看 | 91国内在线国内在线播放 | 亚洲国产成人最新精品资源 | 黄色一级视频欧美 | 好男人www社区影视在线 | 4455亚洲 | 最好免费高清视频观看韩国 | 在线亚洲成人 |