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

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

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

3天內不再提示

Hi3861移植LVGL教程

嵌入式Share ? 來源:嵌入式Share ? 2023-05-18 09:23 ? 次閱讀

一、前言

給 Hi3861 適配了硬件 spi ,master 模式下最高 spi 速率可以達到 40M,用來驅動 oled 屏幕。適配過程遇到了一個芯片bug,困擾了很久,clk 管腳驅動能力差,需要外接一個上拉電阻才能正常運行。適配完成移植 lvgl 8,分享適配的過程。

47bba072-f519-11ed-90ce-dac502259ad0.png

二、LVGL移植

上lvgl開源倉搞代碼,https://github.com/lvgl/lvgl

2.1 適配 Porting 層

關鍵點在于將 oled 的畫點函數和 lvgl 代碼 disp_flush 關聯起來。參考如下我的移植,此處 draw point 將畫點數據放到一個軟件 buff 里面不會刷新硬件,硬件的刷新我單獨創建一個線程干這活,所以使用 for 循環遍歷,簡單!

47d5fce2-f519-11ed-90ce-dac502259ad0.png

因為只有一個顯示,沒有適配輸入以及文件系統,這兩個 port 的適配之后再做。

2.2 頭文件適配

因為是 oled,只有單色,所以顏色我選了最低8 位色,同時將 lvgl 字體調整為 8 位。

除此之外就是調整 lv_conf.h 里面的屏幕寬度了,其他的可以再后續修改。

47f074dc-f519-11ed-90ce-dac502259ad0.png

2.3 liteos 線程適配

首先適配 lvgl tick 心跳,創建一個軟件定時器,1ms 自加 1:

480d1bd2-f519-11ed-90ce-dac502259ad0.png

再創建一個軟件定時器周期性的調用 lvgl 的 周期處理函數:

48270e02-f519-11ed-90ce-dac502259ad0.png

前面說的我的 oled 的 spi 硬件刷新在單獨的線程里面執行,中斷回調的方式,每次刷新256字節,刷新器件,刷新線程會被掛起,釋放 cpu 資源,線程設計如下:

483d8574-f519-11ed-90ce-dac502259ad0.png

三、簡單的 Demo

寫一個簡單的 buttom demo:

static void lvgl_ui_init(void)
{
static lv_style_t style;
lv_style_init(&style);
lv_style_set_radius(&style, 2);
lv_style_set_outline_width(&style, 2);
lv_style_set_outline_color(&style, lv_palette_main(LV_PALETTE_BLUE));
lv_style_set_outline_pad(&style, 0);
lv_obj_t *bkg_obj = lv_obj_create(lv_scr_act()); /*創建 obj*/
lv_obj_set_style_bg_color(bkg_obj , lv_color_hex(0x0),0);
lv_obj_set_pos(bkg_obj ,0, 0);
lv_obj_set_size(bkg_obj, 128, 64);
lv_obj_t *btn = lv_btn_create(lv_scr_act()); /*Add a button to the current screen*/
lv_obj_set_style_bg_color(btn , lv_color_hex(0x0),0);
lv_obj_set_size(btn, 70, 24); /*Set its size*/
lv_obj_add_style(btn, &style, 0);
lv_obj_center(btn);
lv_obj_t * label = lv_label_create(btn); /*Add a label to the button*/
lv_label_set_text(label, "Button"); /*Set the labels text*/
}

四、下載運行

可以看到 oled 顯示創建好的按鍵。

485f1ad6-f519-11ed-90ce-dac502259ad0.png

審核編輯:湯梓紅

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

    關注

    455

    文章

    50714

    瀏覽量

    423137
  • 上拉電阻
    +關注

    關注

    5

    文章

    359

    瀏覽量

    30606
  • 移植
    +關注

    關注

    1

    文章

    379

    瀏覽量

    28124
  • Hi3861
    +關注

    關注

    1

    文章

    59

    瀏覽量

    6491
  • LVGL
    +關注

    關注

    1

    文章

    83

    瀏覽量

    2957

原文標題:四、下載運行

文章出處:【微信號:嵌入式Share,微信公眾號:嵌入式Share】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    中文編程鴻蒙Hi3861開發基礎案例之-04八段數碼管

    中文編程鴻蒙Hi3861開發控制八段數碼管
    的頭像 發表于 05-11 11:47 ?2877次閱讀
    中文編程鴻蒙<b class='flag-5'>Hi3861</b>開發基礎案例之-04八段數碼管

    小熊派Hi3861獲取mpu6050數據在oled屏幕中顯示

    小熊派Hi3861獲取mpu6050數據在oled屏幕中顯示
    的頭像 發表于 08-14 14:39 ?2354次閱讀
    小熊派<b class='flag-5'>Hi3861</b>獲取mpu6050數據在oled屏幕中顯示

    鴻蒙OpenHarmony【輕量系統 燒錄】 (基于Hi3861開發板)

    針對Hi3861開發板,除了DevEco Device Tool
    的頭像 發表于 05-10 16:59 ?1124次閱讀
    鴻蒙OpenHarmony【輕量系統 燒錄】 (基于<b class='flag-5'>Hi3861</b>開發板)

    hi3861如何在移植的main.c中初始化kernel和系統

    代燒友提問:hi3861的vendor代碼中找不到如何從flashboot的main.c文件啟動內核以及系統的函數和過程。無法從hi3861代碼中得到移植啟示。其中boot_kernel函數中使用了
    發表于 11-19 12:03

    鴻蒙OpenHarmony-HI3861L移植教程

    HI3861有兩款單片機一個是HI3861,一個是HI3861L,HI3861L是HI3861的低功耗版本
    發表于 08-30 19:50

    HarmonyOS Hi3861開發套件-編程速查

    針對Hi3861開發套件整理的編程速查框圖,有需要的小伙伴可以自行下載查看。
    發表于 10-19 16:54 ?86次下載
    HarmonyOS <b class='flag-5'>Hi3861</b>開發套件-編程速查

    HarmonyOS Hi3861 WiFi操作 熱點鏈接

    之前我們使用Hi3861的時候,是使用AT指令連接到WiFi熱點的。但是很多時候,我們需要實現開機后自動連接到某個熱點,光靠AT指令不行。Hi3861為我們提供了WiFi操作的相關API,方便我們編寫代碼,實現熱點連接。
    發表于 10-21 16:44 ?69次下載
    HarmonyOS <b class='flag-5'>Hi3861</b> WiFi操作 熱點鏈接

    基于鴻蒙系統+Hi3861的WiFi小車詳解

    我們得有一套WiFi小車套件,其實也是Hi3861加上電機、循跡模塊、超聲波等模塊。
    的頭像 發表于 11-01 09:41 ?7688次閱讀

    Hi3861其他驅動的開發示例

    摘要:本文簡單介紹Hi3861其他驅動的開發示例、包括PWM、SPI、SDIO等。
    的頭像 發表于 03-02 18:04 ?3500次閱讀
    <b class='flag-5'>Hi3861</b>其他驅動的開發示例

    基于鴻蒙系統+Hi3861的WiFi小車開發

    本文簡單介紹鴻蒙系統 + Hi3861 的WiFi小車開發,適用于開發潤和Hi3861開發板的小伙伴們。
    的頭像 發表于 03-03 09:31 ?5686次閱讀
    基于鴻蒙系統+<b class='flag-5'>Hi3861</b>的WiFi小車開發

    Hi3861編譯燒錄更快捷

    Windows環境開發Hi3861,顯著提升編譯、燒錄效率,同時還帶來了更多實用的功能及模板,為廣大開發者朋友帶來更加高效、便捷的開發體驗。接下來,讓我們來看看吧! 純Windows環境開發Hi3861,編譯燒錄
    的頭像 發表于 02-11 13:25 ?929次閱讀

    中文編程鴻蒙Hi3861開發基礎案例之-01創建新工程

    中文編程鴻蒙Hi3861開發創建新工程
    的頭像 發表于 05-11 09:53 ?2739次閱讀
    中文編程鴻蒙<b class='flag-5'>Hi3861</b>開發基礎案例之-01創建新工程

    中文編程鴻蒙Hi3861開發基礎案例之-02LED燈控制

    中文編程鴻蒙Hi3861開發控制LED燈
    的頭像 發表于 05-11 09:54 ?2919次閱讀
    中文編程鴻蒙<b class='flag-5'>Hi3861</b>開發基礎案例之-02LED燈控制

    中文編程鴻蒙Hi3861開發基礎案例之-03交通紅綠燈

    中文編程鴻蒙Hi3861開發模擬交通紅綠燈亮與滅控制
    的頭像 發表于 05-11 11:27 ?2155次閱讀
    中文編程鴻蒙<b class='flag-5'>Hi3861</b>開發基礎案例之-03交通紅綠燈

    中文編程鴻蒙Hi3861開發基礎案例之-05按鍵檢測

    中文編程鴻蒙Hi3861開發對按鍵進行輸入檢測
    的頭像 發表于 05-11 12:04 ?2965次閱讀
    中文編程鴻蒙<b class='flag-5'>Hi3861</b>開發基礎案例之-05按鍵檢測
    主站蜘蛛池模板: 琪琪SEE色原网色原网站18| 精品第一国产综合精品蜜芽| 一道精品视频一区二区| 丝瓜影院观看免费高清国际观察| 暖暖日本免费播放| 男的插曲女的下面免费APP| 久久久久久久久久毛片精品美女| 黑人猛挺进小莹的体内视频| 国产精品亚洲视频在线观看| 国产成人在线播放视频| 国产成a人片在线观看视频99| 穿白丝袜边走边尿白丝袜| CHINA中国东北GURMA| fryee性欧美18 19| s8sp视频高清在线播放| WWW国产亚洲精品久久久日本| G国产精品无马| 把内衣脱了把奶露出来| 超嫩校花被灌醉在线观看| YELLOW视频直播在线观看高清| 99久久精品久久久久久清纯| 97精品视频| 操他射他影院| 国产69精品久久久久无码麻豆| 少爷被多个暗卫肉高h| 久久aa毛片免费播放嗯啊| 96精品视频| 97超碰97资源在线观看| av亚洲色天堂2017| 成人在线小视频| 国产欧美在线亚洲一区刘亦菲| 国语92电影网午夜福利| 久久精品AV一区二区无码| 久久免费精品视频| 免费人成在线观看视频不卡| 欧美国产一区二区三区激情无套| 嫩草在线播放| 甜性涩爱免费下载| 亚洲午夜久久久久久久久电影网 | 国产国语在线播放视频| 国产成人高清视频|