国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

立創(chuàng)梁山派GD32F450ZGT6--屏幕擴展板LVGL應用

這篇具有很好參考價值的文章主要介紹了立創(chuàng)梁山派GD32F450ZGT6--屏幕擴展板LVGL應用。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

該文章工程是基于裸機情況下運行的LVGL,通過GUI-Guider-1.4.0進行頁面布局配置。

一、介紹

GUI Guider是恩智浦為LVGL開發(fā)了一個上位機GUI設計工具,可以通過拖放控件的方式設計LVGL GUI頁面,加速GUI的設計。設計完成的GUI頁面可以在PC上仿真運行,確認設計完畢之后可以生成C代碼,再整合到MCU項目中。

GUI Guider(Version: 1.3.0-GA)的主要特征:

  1. 支持Windows 10和Ubuntu 20.04。

  1. 支持中文、英文。

  1. 兼容LVGL V7和LVGL V8版本。

  1. 支持拖放的所見即所得(WYSIWYG)用戶界面設計。

  1. 多種字體支持及第三方字體導入。

  1. 可定制的中文字符范圍。

  1. 小部件對齊方式:左、中、右。

  1. 自動產生LVGL 的C語言源代碼。

  1. 支持默認樣式和自定義樣式。

  1. 演示應用程序集成。

  1. 實時日志顯示。

  1. 集成上位機仿真器。

注意!!GUI-Guider會依賴javaJDK,因此需要安裝jdk.

接線:

lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔

二、安裝

2.1安裝Java-JDK

安裝JDK,我使用的JDK見下圖(如果你已經安裝有JDK,則忽略這里。)

JDK安裝我這里就不寫了,外面很多大佬關于JDK的安裝非常詳細。

lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔
2.2安裝GUI-Guider

下圖為安裝包。(我的電腦是64位?WIN10)

lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔
2.2.1?選擇中文(簡體)
lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔
2.2.2選擇同意協議
lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔
2.2.3?選擇安裝路徑
lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔
2.2.4等待安裝完成
lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔
2.2.5安裝完成
lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔

三、創(chuàng)建工程

使用的是立創(chuàng)梁山派的屏幕擴展板,4.3寸,高清的480*800分辨率加5點的電容觸摸屏。

詳情界面鏈接:立創(chuàng)·梁山派-屏幕擴展板

lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔
3.1選擇創(chuàng)建新工程

打開軟件后,創(chuàng)建新工程。

lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔
3.2選擇LVGL版本

這里使用的是V8版本的LVGL。

lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔
3.3選擇設備模板
lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔
3.4選擇應用模板

這里選擇了一個空白模板,如果感興趣可以試一試官方的模板。

lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔
3.5工程配置

屏幕的像素是480x800,我這里選擇的16位彩色,面板尺寸自定義為480x800(豎屏顯示)。工程路徑請務必放在英文路徑

lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔
3.6創(chuàng)建完成

創(chuàng)建完成之后,就是這樣啦。

lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔

四、常用組件的應用

4.1標簽

點擊標簽然后拖拽到我們的顯示界面上。

lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔
4.1.1標簽屬性設置

這里主要設置顯示的文本內容,和字體。注意:你使用一個字體,它就會生成一個字庫給你,所以請慎重考慮內存問題,或者將生成的字庫保存至外部FLASH里。

lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔
4.2按鈕

點擊按鈕然后拖拽到我們的顯示界面上。

lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔
4.2.1按鈕屬性設置
lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔
4.2.2按鈕事件添加

事件是按鈕的靈魂,涉及到我們后繼代碼如何判斷按鍵是否點擊

lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔

事件配置里,如果不隨便點一個動作,則軟件不會生成按鈕事件的C代碼,所以我選擇修改背景色。后面生成代碼后再把這個動作的代碼刪除。

lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔
4.3圖片

點擊圖片組件然后拖拽到我們的顯示界面上。

lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔
4.3.1添加圖片資源

點擊我們拉出來的圖片組件,在屬性設置里,添加我們的圖片資源。

lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔

在彈出的界面選擇添加。

lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔

這里我選擇了一張藍牙的圖標。

lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔

添加完成之后,選擇這個圖片。

lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔

這樣就顯示出來了。注意,每使用一張圖片,都會生成C代碼,注意內存問題,或保存至外部FLASH。

lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔
4.4生成第二個界面
lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔

返回之后,點擊+號,生成第二個界面。

lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔

點擊生成的第二個界面,就可以進行編輯了。

lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔
4.5圖片按鈕(界面切換)

這個圖片按鈕我們用來進行界面跳轉?;氐浇缑嬉唬鰣D片按鈕。

lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔

這里推薦一個圖標網站,對大多數的圖標都可以免費下載。

網站鏈接:iconfont-阿里巴巴矢量圖標庫

我下載了返回圖標和前進圖標。

lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔

將圖片加載到我們的圖片按鈕

lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔

設置圖片按鈕的事件為界面切換事件

lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔

去到第二個界面,設置返回鍵。

lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔

在返回鍵添加界面切換事件,讓其可以切換到第一個界面

lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔

五、進行模擬并生成代碼

點擊綠色按鍵,選擇C。開始模擬運行。(會比較慢)

lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔

運行效果。視頻效果見鏈接:

lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔

六、生成代碼并且移植

點擊生成代碼

lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔
lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔

去到這個Demo工程目錄下,找到生成的代碼。

我之前創(chuàng)建工程時的路徑

lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔

代碼就在工程目錄的generated和custom文件夾下。將兩個文件夾復制到我們的GD32LVGL工程文件夾里。

lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔

將我們之前復制的文件夾替換GD32LVGL工程里之前的文件夾。

lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔

打開我們替換后的GD32LVGL工程。刪除之前生成的代碼。

lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔

添加我們配置的界面代碼。

lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔

添加custom文件夾下的.c文件

lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔

添加generated文件夾下的.c文件。(界面和配置文件)

lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔

添加generated文件夾里的guider_fonts文件夾下的所有.c文件。(字庫文件)

lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔

添加generated文件夾里的images文件夾下的所有.c文件。(圖片資源文件)

lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔

最后是這樣的。(注意我的字體和圖片不一定和你一樣,所以不一定是和我添加的文件是完全一樣的)

lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔

添加完成后,編譯。編譯完成發(fā)現有錯誤。

lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔

錯誤主要是頭文件錯誤。跳轉到錯誤的地方

lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔

將原先錯誤的地方注釋,換成我圖片中的樣子。

#include?"../../lvgl.h"

lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔

重新編譯,發(fā)現還有一個錯誤。這個錯誤是在events_init.c文件查找不到guider_ui。

lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔

guider_ui是在main.c中定義的一個全局變量,我是定義為ui,所以要將main.c的變量ui,通過extern連接至events_init.c文件。

lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔
lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔

連接至events_init.c文件后,需要將events_init.c文件里的所有guider_ui替換為ui。

替換操作見下圖。

lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔

替換完成后,進行編譯,沒有錯誤。

lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔

七、下載驗證

初始界面

lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔

按下按鈕

lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔

界面切換

lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔

八、事件代碼修改

這里只講解btn_sw這個按鈕的事件。

lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔

如果需要按鈕按下時燈亮,再按時燈滅的效果,只需在事件中斷里,添加即可。

lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔

最后注意事項

1、有一些組件的代碼是不一樣的,需要注意。(我發(fā)現時鐘就不行)

2、當使用到事件時,需要給事件掃描一個心跳,即多少時間去掃描一次是否有事件發(fā)生。

我放在定時器里固定時間掃描一次。

lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔
lvgl上位機,立創(chuàng)梁山派GD32,stm32,單片機,Powered by 金山文檔

代碼百度網盤連接:

鏈接:https://pan.baidu.com/s/1Px2P43xuQtCciZlBzeJXOQ?pwd=1234

提取碼:1234 文章來源地址http://www.zghlxwxcb.cn/news/detail-543160.html

到了這里,關于立創(chuàng)梁山派GD32F450ZGT6--屏幕擴展板LVGL應用的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • GUI——LVGL移植+STM32f407zgt6(正點原子最小系統板+GUI Guider

    GUI——LVGL移植+STM32f407zgt6(正點原子最小系統板+GUI Guider

    首先是GUI Guider的介紹 GUI Guider是NXP公司開發(fā)的一個圖形化軟件,對于初學GUI或者寫ui界面的小白們非常合適,也非常方便,現在就示例寫一個demo ?首先是初始化界面,在相應的位置填寫相關信息(文件名,是否使用模板,以及數據位,最重要的 是大?。?,這個顯示的大小要和

    2023年04月24日
    瀏覽(26)
  • STM32F407ZGT6正點原子F4探索者開發(fā)板 -- 跑馬燈例程

    STM32F407ZGT6正點原子F4探索者開發(fā)板 -- 跑馬燈例程

    LED0 - PF9 LED1 - PF10 PF9 = 0, LED0 亮,PF9 = 1,LED0 滅 PF10 = 0, LED1 亮,PF10 = 1,LED1 滅

    2024年02月15日
    瀏覽(33)
  • STM32F407ZGT6控制ESP8266與OV2640下的百度智能圖片識別

    STM32F407ZGT6控制ESP8266與OV2640下的百度智能圖片識別

    前言: STM32F407ZGT6控制OV2640下采集到JPG圖片格式的二進制數據,然后對二進制數據進行BASE64編碼,接著通過串口將數據傳輸給ESP8266并上傳至訓練好的EASYDL的AI算法識別平臺進行識別并返回垃圾種類與邊緣信息。 STM32與ov2640 ov2640簡紹 stm32f407zgt6之dcmi stm32f407zgt6代碼 main.c main.h l

    2024年02月04日
    瀏覽(28)
  • 十四.EtherCAT開發(fā)之ST MCU STM32F407ZGt6+ AX58100的開發(fā)FOE應用

    STM32F407ZGt6與AX58100是 SPI連接,工作在SPI模式。 FoE(File Access over EtherCAT)可實現EtherCAT節(jié)點之間的文件傳輸。 boot mode與FOE支持 FOE 說是要在狀態(tài)機的boot mode下運行,實際測試了在OP模式也能收數據??赡苁菫榱朔€(wěn)定,減少出錯把,畢竟是升級固件。 14.1.1 XML支持字段 XML名稱—AX58

    2024年02月10日
    瀏覽(131)
  • 在Proteus中添加元件庫所沒有的單片機芯片(STM32F407ZGT6為例)

    在Proteus中添加元件庫所沒有的單片機芯片(STM32F407ZGT6為例)

    今天在畫仿真圖時發(fā)現proteus元件庫里的stm32系列并沒有我所需要的。通過百度才到了官網下載相應的元件,后自己導入到元件庫! 1、官網鏈接為:https://componentsearchengine.com/part-view/STM32F407ZGT6/STMicroelectronics 先注冊賬號后下載相應的元件即可。 2、解壓元件的壓縮包 3、打開p

    2024年02月16日
    瀏覽(25)
  • EFR32xG21燒錄_自己購買擴展板

    EFR32xG21燒錄_自己購買擴展板

    最近有用到EFR32xG21,新的開發(fā)板好像是不帶之前的擴展板了,想要采用開發(fā)板擴展燒錄的話 ,最好自己購買一個擴展板,淘寶就有,注意排針pin腳和間距。 原理 原理上還是通過jlink 燒錄的 過程 1.設置開發(fā)板為OUT模式 2.通過轉接板,接線到模板,原理還是通過開發(fā)板自帶jl

    2024年02月13日
    瀏覽(20)
  • 論如何零基礎stm32手搓出來一個多傳感時間同步板(基于STM32F407ZGT6+um982+mti300)

    論如何零基礎stm32手搓出來一個多傳感時間同步板(基于STM32F407ZGT6+um982+mti300)

    時間同步是組合導航里不得不解決的問題,為什么要做時間同步,用我自己的理解來說就是:不做時間同步,那就是用從前的A傳感器信息來校正當前的B傳感器信息,兩者都不是描述的同一個時間點的物體,融合出來的結果能對才是見了鬼了。 (ps:以工程經驗來說,其實不少

    2024年01月25日
    瀏覽(24)
  • 基于STM32的pca9535、pca9555IO擴展板開發(fā)

    基于STM32的pca9535、pca9555IO擴展板開發(fā)

    之前使用的pca9535由于芯片本身有些中斷問題和采購問題,目前換成了pca9555的IO擴展芯片來使用,本文章適用于這兩款芯片。 編譯器: keil5 工程庫: HAL庫 芯片型號:STM32F072 pca9535和pca9555基本一樣,這里我就主要說9535的手冊了。 手冊下載地址網上有很多,直接去百度搜索就行

    2024年02月11日
    瀏覽(24)
  • 關于STM32F407ZGT6的USB損壞后使用ST-Link和USART1實現串口功能

    關于STM32F407ZGT6的USB損壞后使用ST-Link和USART1實現串口功能

    開發(fā)板:STM32F407ZGT6; 目標:想使用軟件“串口調試助手” 情況:開發(fā)板上的USB_UART口所在器件損壞或者直接沒有; ? 解決辦法:查看該開發(fā)板的原理圖,可得:串口1的RX接TXD,串口1的TX接RXD,那么按如下步驟操作: 1、現在使用USB轉TTL模塊,將串口1的RX接USB轉TTL模塊的TXD,

    2024年02月08日
    瀏覽(50)
  • STM32F407ZGT6單片機連接ST_LINK和USB轉TTL的接線方法+舵機接線方法

    STM32F407ZGT6單片機連接ST_LINK和USB轉TTL的接線方法+舵機接線方法

    目錄 1.STM32F407ZG單片機連接ST_LINK 2.STM32F407ZG單片機連接USB轉TTL(用于串口通信) 3? 舵機 單片機? ? ? ? ? ? ?ST_LINK ? ? ?9--------------------6 ? ? ?7--------------------2 ? ? ?20------------------3/4 ? ? ?1--------------------7/8 ?這里附上具體的接線圖片: 單片機? ? ? USB轉TTL TX————

    2024年02月02日
    瀏覽(75)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包