色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

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

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

3天內不再提示

零基礎開發(fā)小安派-Eyes-S1——初識LVGL并搭建最小工程

安信可科技 ? 來源:安信可科技 ? 2025-01-03 14:09 ? 次閱讀

AiPi-Eyes-S1是安信可開源團隊專門為Ai-M61-32S設計的一款開發(fā)板,支持WiFi6、BLE5.3。所搭載的Ai-M61-32S 模組具有豐富的外設接口,具體包括 DVP、MJPEG、Dispaly、AudioCodec、USB2.0、SDU、以太網(wǎng) (EMAC)、SD/MMC(SDH)、SPI、UARTI2C、I2S、PWM、GPDAC、GPADC、ACOMP 和 GPIO 等。

AiPi-Eyes-S1集成了SPI屏幕接口,DVP攝像頭接口,外置ES8388音頻編解碼芯片以及預留TF卡座,并且引出USB接口,可接入USB攝像頭。

從零開始學習小安派:

1、零基礎開發(fā)小安派-Eyes-S1【入門篇】——初識小安派-Eyes-S1

2、零基礎開發(fā)小安派-Eyes-S1【入門篇】——安裝VMware與Ubuntu

3、入門篇:零基礎開發(fā)小安派-Eyes-S1——新建工程并燒錄調試

4、零基礎開發(fā)小安派-Eyes-S1入門篇——Win下SSH連接Linux

5、零基礎開發(fā)小安派-Eyes-S1【入門篇】——Samba共享文件夾

6、零基礎開發(fā)小安派-Eyes-S1【入門篇】——工程文件架構

7、零基礎開發(fā)小安派-Eyes-S1【外設篇】——GPIO 輸入輸出

8、零基礎開發(fā)小安派-Eyes-S1【外設篇】——GPIO中斷編程

9、零基礎開發(fā)小安派-Eyes-S1【外設篇】——PWM

10、零基礎開發(fā)小安派-Eyes-S1【外設篇】——UART

11、零基礎開發(fā)小安派-Eyes-S1【外設篇】——I2C

12、零基礎開發(fā)小安派-Eyes-S1【外設篇】——ADC

13、零基礎開發(fā)小安派-Eyes-S1【外設篇】——I2S

14、零基礎開發(fā)小安派-Eyes-S1【外設篇】——TIMER

15、零基礎開發(fā)小安派-Eyes-S1【外設篇】——DAC

教程已經(jīng)更新了一段時間了,現(xiàn)在和各位小伙伴一同進入小安派的進階篇。進階篇的內容其實只是加上了 LVGL 的運用,可以更加直觀的使用交互界面而完成一個中控屏的項目。

LVGL(輕量級和通用圖形庫) 是一個免費和開源的圖形庫,它提供了創(chuàng)建嵌入式 GUI 所需的一切,具有易于使用的圖形元素,美麗的視覺效果和低內存占用。小安派-Eyes-S1配備了一塊3.5寸的屏幕,搭配上LVGL可以顯示所需的交互界面。

01 安裝 GUI-Guider

GUI-Guider 是恩智浦為 LVGL 開發(fā)的一個上位機 GUl 設計工具,可以通過拖放控件的方式設計 LVGL GUl 頁面,加速 GUI 的設計,總得來說,可以使用這個軟件設計需要顯示的內容以及交互界面,相當于設計一個前端界面。

這里先附上LVGL的開發(fā)手冊(全英):LVGL 官方手冊

看不懂英文的可以用百問網(wǎng)的LVGL中文手冊:百問網(wǎng) LVGL 手冊

首先進入NXP的官網(wǎng),這里附上網(wǎng)址:NPX 官網(wǎng)

搜索 GUI Guider,這里可能需要注冊賬號,跟隨提示注冊好賬號后才可以正常下載軟件

999fad72-c8bf-11ef-9310-92fbcf53809c.png

在下載里選擇對應的軟件下載,這里選擇1.6.1的 win10 版本(實測筆者的win11 系統(tǒng)一樣可以使用)。

99badfd4-c8bf-11ef-9310-92fbcf53809c.png

下載完需要的安裝包后,點擊打開安裝程序。

99d0ae04-c8bf-11ef-9310-92fbcf53809c.png

選擇下載的位置,這里在E盤中常用的位置創(chuàng)建了相應的文件夾。

99eaddc4-c8bf-11ef-9310-92fbcf53809c.png

點擊下一步等待完成安裝。

99fcc78c-c8bf-11ef-9310-92fbcf53809c.png

安裝完成后點擊進入軟件界面。

02 設計一個最簡單的UI 界面

點擊 Create a new project,創(chuàng)建新的工程。

9a0e8396-c8bf-11ef-9310-92fbcf53809c.png

LVGL 版本選擇 V8.3.5。

9a1e9f4c-c8bf-11ef-9310-92fbcf53809c.png

設備模板選擇模擬Simulator

9a3321ec-c8bf-11ef-9310-92fbcf53809c.png

選擇 EmptyUI空白模板。

9a4ba17c-c8bf-11ef-9310-92fbcf53809c.png

項目配置信息,填入工程名字,工程目錄(建議在自己方便查找的位置建立一個 Project 文件夾存儲所有的工程文件),色彩深度選擇 16bit 即可。

面板類型根據(jù)顯示屏類型來選擇,S1 配備的3.5寸屏幕,由于默認的顯示屏是豎屏顯示的,可以選擇自定義 240x320,筆者個人比較喜歡橫屏顯示,選擇 320x240,后續(xù)修改顯示屏配置文件旋轉 90°即可。

9a6e285a-c8bf-11ef-9310-92fbcf53809c.png

在前面的截圖中可能會是英文界面,但也基本能看懂。在創(chuàng)建了第一個工程后可以在界面進行一些頁面顯示設置,右上角有語言的設置,這里選擇中文,界面的顏色選擇暗色。

9a851786-c8bf-11ef-9310-92fbcf53809c.png

9aa07a9e-c8bf-11ef-9310-92fbcf53809c.png

這是 Gui-Guider 的基本界面。

9ab19bee-c8bf-11ef-9310-92fbcf53809c.png

首先設置背景板,可以在右側的屬性中選擇自己喜歡的顏色和透明板,這里選擇淺藍色。

9ad77d6e-c8bf-11ef-9310-92fbcf53809c.png

添加一個二維碼組件,右側屬性中可以填入掃碼的內容。

9ae5084e-c8bf-11ef-9310-92fbcf53809c.png

添加一個文本框,右側輸入想輸入的內容,大小隨意調整,可以拖動邊框移動位置。這里注意字體選擇 simsun,可以顯示中文

9afefb46-c8bf-11ef-9310-92fbcf53809c.png

添加字體的方式可以在上面的“工具”導入字體,也可以在資源管理-字體,導入自己喜歡的字體。

9b1694e0-c8bf-11ef-9310-92fbcf53809c.png

點擊右上角的綠色三角型進行仿真,可以看到仿真出來的顯示效果。同時會生成 LVGL 的工程文件文件方便移植。

9b32bb3e-c8bf-11ef-9310-92fbcf53809c.png

03 將生成的 LVGL 文件移植到小安派

首先將 aithinker_Ai-M6X_SDK 中examples 下的 lvgl 工程文件夾復制下來。粘貼到SDK外方便管理,這里放在 AiPi-Open-Kits 下,也就是和其它demo的同一層。

9b445632-c8bf-11ef-9310-92fbcf53809c.png

簡簡單單修改個文件名。修改一下 Makefile,一樣鏈接到 SDK。

9b5b810e-c8bf-11ef-9310-92fbcf53809c.png

在修改下 flash_prog_cfg.ini,注意燒錄名稱和文件夾名稱一致。

9b6c367a-c8bf-11ef-9310-92fbcf53809c.png

為了方便工程文件的管理,把原文件下的 demos 文件夾、lcd_conf_user.h、lv_conf.h 全刪了,創(chuàng)建 components 文件夾,在 components 文件夾下創(chuàng)建 UI 文件夾

關鍵的地方來了!需要添加新的 lcd_conf_user.h、lv_conf.h,以及觸控 IC 配置文件 touch_conf_user.h 到 UI 文件夾下。

這三個文件推薦在AiPi-Radar-WakeUp工程下尋找,路徑在componets下的UI界面(和剛剛創(chuàng)建的一樣),這里可以看到多了兩個lv_user_config 的.c 和.h 文件,這兩個文件目前使用 rtos ,本次教程暫時不用。

9b874bb8-c8bf-11ef-9310-92fbcf53809c.png

9b9a375a-c8bf-11ef-9310-92fbcf53809c.png

UI界面下還有兩個 custom 和 generated 文件夾,這是剛剛從 GUI-Guider 中生成的工程中 copy 過來的,進入前面生成的 LVGL 工程目錄中(如下圖),復制custom 和 generated,粘貼到UI 文件夾下

9bb66c90-c8bf-11ef-9310-92fbcf53809c.png

9bd259dc-c8bf-11ef-9310-92fbcf53809c.png

這里使用 Samba,所以在Linux 和 Windows 共同操作文件很方便,不會的朋友看之前出過的教程,因為不僅僅適用于本教程。

(五)零基礎開發(fā)小安派-Eyes-S1【入門篇】——Samba 共享文件夾)

修改CMakeLists.txt,將剛剛添加的所有文件、文件夾參與編譯。

9bee6fe6-c8bf-11ef-9310-92fbcf53809c.png

最后修改Main,由于只顯示圖片,觸控功能也還沒用上,簡單調用一下,注釋可以查看如下代碼。

Main

#include "board.h"
#include "bflb_gpio.h"
#include "bflb_l1c.h"
#include "bflb_mtimer.h"


#include "lv_conf.h"
#include "lvgl.h"


#include "lv_port_disp.h"
#include "lv_port_indev.h"


#include "lcd.h"
#include "gui_guider.h"
#include "custom.h"


lv_ui guider_ui;
//該類型變量必須是全局變量


/* lvgl log cb */
void lv_log_print_g_cb(const char *buf)
{
    printf("[LVGL] %s", buf);
}


int main(void)
{
    board_init();


    printf("lvgl case
");


    /* lvgl init */
    lv_log_register_print_cb(lv_log_print_g_cb);
    lv_init();


    //顯示器初始化
    lv_port_disp_init();


    //外部輸入初始化(Touch觸摸)
    lv_port_indev_init();


    //設計小部件的UI布局
    setup_ui(&guider_ui);


    printf("lv_task_handler
");


    custom_init(&guider_ui);


    printf("lvgl success
");


    while (1) {
        //LVGL事物處理
        lv_task_handler();
        bflb_mtimer_delay_ms(1);
    }
}

04 配置文件修改

看到前面是不是迫不及待編譯?發(fā)現(xiàn)編譯不了,因為還沒說完9c0a7452-c8bf-11ef-9310-92fbcf53809c.png,這里LVGL 工程是添加了二維碼控件的,所以需要修改 lv_conf.h 下的控件,打開 lv_conf.h,可以看到里面有許多控件的宏定義,這邊打開對應的宏定義即可,聰明的小伙伴應該知道了在工程中添加了什么組件,需要這邊打開對應的宏定義,QRCODE 控件在 667 行,將 0 改為 1.保存編譯燒錄即可。

9c164232-c8bf-11ef-9310-92fbcf53809c.png

燒錄完是不是看到圖片是豎著的,因為又還沒說完9c0a7452-c8bf-11ef-9310-92fbcf53809c.png,前面提到的分辨率設置問題,320x240還是240x320。這里選擇 320x240 設置就是橫屏顯示,但是屏幕默認是豎屏顯示,所以需要修改 lcd_conf_user.h。順便教給大家配置的方法,3.5 寸屏幕和 2.4 寸屏幕共用一個驅動。所以進入到 lcd_conf_user.h 中,首先宏定義屏幕驅動。

9c4e488a-c8bf-11ef-9310-92fbcf53809c.png

LCD_SPI_ST7796_Ai 是屏幕驅動,然后下拉到 LCD_SPI_ST7796_Ai 的相關配置下,修改顯示的配置,將 LCD_ROTATED_NONE 注釋掉,然后將 LCD_ROTATED_90 取消注釋,這樣屏幕就是橫屏顯示了。

9c5e83bc-c8bf-11ef-9310-92fbcf53809c.png

05 效果顯示

屏幕效果展示

9c7ea7dc-c8bf-11ef-9310-92fbcf53809c.jpg

掃碼后頁面顯示

9c99e5c4-c8bf-11ef-9310-92fbcf53809c.jpg

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

    關注

    25

    文章

    5068

    瀏覽量

    97639
  • LVGL
    +關注

    關注

    1

    文章

    85

    瀏覽量

    2991

原文標題:零基礎開發(fā)小安派-Eyes-S1【進階篇】——初識 LVGL 并搭建最小工程

文章出處:【微信號:安信可科技,微信公眾號:安信可科技】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    零基開發(fā)小安-Eyes-DU之【PWM循環(huán)呼吸燈】

    性能。 既然是開源硬件,那必然講究一個DIY,今天小安親自用小安-Eyes-DU來制作一個PWM循環(huán)呼吸燈,來看看詳細教程。 ? 01工程
    的頭像 發(fā)表于 08-14 15:37 ?810次閱讀
    <b class='flag-5'>零基</b>礎<b class='flag-5'>開發(fā)</b><b class='flag-5'>小安</b><b class='flag-5'>派</b>-<b class='flag-5'>Eyes</b>-DU之【PWM循環(huán)呼吸燈】

    如何用小安-Eyes-S1做一個電子木魚?

    2024年的第一篇教程來了,本篇學習如何添加LVGL事件,制作完成一個電子木魚(小美苦苦哀求,我略微出手而已)。祝大家2024積德累功,心想事成!接下來看看如何用小安-
    的頭像 發(fā)表于 01-13 15:18 ?1046次閱讀
    如何用<b class='flag-5'>小安</b><b class='flag-5'>派</b>-<b class='flag-5'>Eyes-S1</b>做一個電子木魚?

    零基開發(fā)小安-Eyes-S1外設篇——GPIO 輸入輸出

    等。 AiPi-Eyes-S1集成了SPI屏幕接口,DVP攝像頭接口,外置ES8388音頻編解碼芯片以及預留TF卡座,并且引出USB接口,可接入USB攝像頭。 從開始學習小安
    的頭像 發(fā)表于 10-25 13:50 ?1039次閱讀
    <b class='flag-5'>零基</b>礎<b class='flag-5'>開發(fā)</b><b class='flag-5'>小安</b><b class='flag-5'>派</b>-<b class='flag-5'>Eyes-S1</b>外設篇——GPIO 輸入輸出

    零基開發(fā)小安-Eyes-S1外設篇——GPIO中斷編程

    等。 AiPi-Eyes-S1集成了SPI屏幕接口,DVP攝像頭接口,外置ES8388音頻編解碼芯片以及預留TF卡座,并且引出USB接口,可接入USB攝像頭。 產(chǎn)品資料:https://docs.ai-thinker.com/eyes
    的頭像 發(fā)表于 10-29 14:56 ?768次閱讀
    <b class='flag-5'>零基</b>礎<b class='flag-5'>開發(fā)</b><b class='flag-5'>小安</b><b class='flag-5'>派</b>-<b class='flag-5'>Eyes-S1</b>外設篇——GPIO中斷編程

    零基開發(fā)小安-Eyes-S1外設篇——I2S

    等。 AiPi-Eyes-S1集成了SPI屏幕接口,DVP攝像頭接口,外置ES8388音頻編解碼芯片以及預留TF卡座,并且引出USB接口,可接入USB攝像頭。 從開始學習小安
    的頭像 發(fā)表于 12-13 18:02 ?1030次閱讀
    <b class='flag-5'>零基</b>礎<b class='flag-5'>開發(fā)</b><b class='flag-5'>小安</b><b class='flag-5'>派</b>-<b class='flag-5'>Eyes-S1</b>外設篇——I2<b class='flag-5'>S</b>

    零基開發(fā)小安-Eyes-S1 外設篇——DAC

    等。 AiPi-Eyes-S1集成了SPI屏幕接口,DVP攝像頭接口,外置ES8388音頻編解碼芯片以及預留TF卡座,并且引出USB接口,可接入USB攝像頭。 從開始學習小安
    的頭像 發(fā)表于 12-27 10:55 ?725次閱讀
    <b class='flag-5'>零基</b>礎<b class='flag-5'>開發(fā)</b><b class='flag-5'>小安</b><b class='flag-5'>派</b>-<b class='flag-5'>Eyes-S1</b> 外設篇——DAC

    零基開發(fā)安信可小安-Eyes-S1【入門篇】——初識小安-Eyes-S1

    初識小安-Eyes-S1 前言:本教程針對零基礎人員可以快速上手小安
    發(fā)表于 09-08 11:06

    小安-Eyes-S1/S2多功能開發(fā)板簡介

    今天,我們在小安放出新鮮的開發(fā)板產(chǎn)品AiPi-Eyes-S1小安-
    的頭像 發(fā)表于 06-19 10:10 ?977次閱讀
    <b class='flag-5'>小安</b><b class='flag-5'>派</b>-<b class='flag-5'>Eyes-S1</b>/<b class='flag-5'>S</b>2多功能<b class='flag-5'>開發(fā)</b>板簡介

    小安-Eyes-S1外設接口簡介

    前言:本教程針對零基礎人員可以快速上手小安-Eyes-S1實現(xiàn)一些簡單的應用開發(fā),僅供參考學習,本人也在學習的過程中,感謝大家支持。
    的頭像 發(fā)表于 09-18 09:55 ?874次閱讀

    零基開發(fā)小安-Eyes-S1【入門篇】——初識小安-Eyes-S1

    前言:本教程針對零基礎人員可以快速上手小安-Eyes-S1實現(xiàn)一些簡單的應用開發(fā),僅供參考學習,本人也在學習的過程中,感謝大家支持。
    的頭像 發(fā)表于 09-18 15:41 ?739次閱讀
    <b class='flag-5'>零基</b>礎<b class='flag-5'>開發(fā)</b><b class='flag-5'>小安</b><b class='flag-5'>派</b>-<b class='flag-5'>Eyes-S1</b>【入門篇】——<b class='flag-5'>初識</b><b class='flag-5'>小安</b><b class='flag-5'>派</b>-<b class='flag-5'>Eyes-S1</b>

    功德+1,用小安-Eyes-S1做一個電子木魚

    2024積德累功,心想事成!接下來 看看如何用小安-Eyes-S1做一個電子木魚 。 01、GUI-Guider 頁面設計 先新建一個工程。 直接進入 UI 設計界面,這里用到了兩個
    的頭像 發(fā)表于 01-16 14:33 ?782次閱讀
    功德+<b class='flag-5'>1</b>,用<b class='flag-5'>小安</b><b class='flag-5'>派</b>-<b class='flag-5'>Eyes-S1</b>做一個電子木魚

    零基開發(fā)小安-Eyes-S1【入門篇】——工程文件架構

    -Eyes-S1【入門篇】——初識小安-Eyes-S12、零基
    的頭像 發(fā)表于 11-06 16:10 ?181次閱讀
    <b class='flag-5'>零基</b>礎<b class='flag-5'>開發(fā)</b><b class='flag-5'>小安</b><b class='flag-5'>派</b>-<b class='flag-5'>Eyes-S1</b>【入門篇】——<b class='flag-5'>工程</b>文件架構

    零基開發(fā)小安-Eyes-S1【外設篇】——PWM

    小安-Eyes-S1【入門篇】——初識小安-Eyes-S
    的頭像 發(fā)表于 11-06 16:10 ?171次閱讀
    <b class='flag-5'>零基</b>礎<b class='flag-5'>開發(fā)</b><b class='flag-5'>小安</b><b class='flag-5'>派</b>-<b class='flag-5'>Eyes-S1</b>【外設篇】——PWM

    零基開發(fā)小安-Eyes-S1 外設篇 ——I2C

    。 AiPi-Eyes-S1集成了SPI屏幕接口,DVP攝像頭接口,外置ES8388音頻編解碼芯片以及預留TF卡座,并且引出USB接口,可接入USB攝像頭。 從開始學習小安
    的頭像 發(fā)表于 11-27 16:39 ?244次閱讀
    <b class='flag-5'>零基</b>礎<b class='flag-5'>開發(fā)</b><b class='flag-5'>小安</b><b class='flag-5'>派</b>-<b class='flag-5'>Eyes-S1</b> 外設篇 ——I2C

    零基開發(fā)小安-Eyes-S1【外設篇】——FLASH

    。 AiPi-Eyes-S1集成了SPI屏幕接口,DVP攝像頭接口,外置ES8388音頻編解碼芯片以及預留TF卡座,并且引出USB接口,可接入USB攝像頭。 從開始學習小安
    的頭像 發(fā)表于 12-05 14:31 ?226次閱讀
    <b class='flag-5'>零基</b>礎<b class='flag-5'>開發(fā)</b><b class='flag-5'>小安</b><b class='flag-5'>派</b>-<b class='flag-5'>Eyes-S1</b>【外設篇】——FLASH
    主站蜘蛛池模板: 国产综合视频在线观看一区| 在线播放性xxx欧美| 国产精品爽爽久久久久久蜜桃网站 | 苍井空教师BD在线观看全集| 亚洲色图在线播放| 色噜噜狠狠色综合欧洲| 久青草影院| 国产在线观看不卡| 超嫩校花被灌醉在线观看| 中文天堂www资源| 亚洲精品免费网站| 在线观看插女生免费版| 帅哥操帅哥| 欧美在线视频一区| 老色哥网站| 黄色片软件大全| 国产精品色吧国产精品| 冰山高冷受被c到哭np双性| 2020最新国产自产精品| 亚洲人女同志video| 午夜精品久久久久久99热蜜桃| 日本精品久久久久中文字幕2| 麻豆国产自制在线观看| 久草在线一免费新视频| 国产在线观看www| 国产色婷婷精品人妻蜜桃成熟时| 成人麻豆日韩在无码视频| 99视频在线看观免费| 中文字幕一区二区三区在线观看 | 中文字幕在线不卡日本v二区| 亚洲精品久久无码AV片银杏| 四虎国产精品免费观看视频| 欧美无码专区| 欧美2019高清hd巨大| 棉签和冰块怎么弄出牛奶视频| 久久这里只有精品视频e| 久久国产免费观看精品1| 久久www免费人成_看片高清| 金发欧美一区在线观看| 九九热视频这里只有精| 九九热这里只有精品视频免费|