<acronym id="s8ci2"><small id="s8ci2"></small></acronym>
<rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
<acronym id="s8ci2"></acronym>
<acronym id="s8ci2"><center id="s8ci2"></center></acronym>
0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
創作中心

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

3天內不再提示

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

安信可科技 ? 來源:安信可科技 ? 2024-01-13 15:18 ? 次閱讀

2024年的第一篇教程來了,本篇學習如何添加LVGL事件,并制作完成一個電子木魚(小美苦苦哀求,我略微出手而已)。祝大家2024積德累功,心想事成!接下來看看如何用小安派-Eyes-S1做一個電子木魚。

01

GUI-Guider 頁面設計

先新建一個工程。

668eb87c-b134-11ee-8b88-92fbcf53809c.png

直接進入 UI 設計界面,這里用到了兩個組件,一個是圖片按鈕,一個是文本框。

先添加一個圖片按鈕,這就需要一張木魚圖,大家可以添加自己喜歡的任意圖案。大小比例記得調整,需要注意的是,這里建議準備兩張一模一樣的圖片,區別在于他們的大小,一張大圖+一張小圖,大圖添加在釋放后的圖片,小圖添加在按下時圖片,就達成敲下去的變化效果。

66a43ec2-b134-11ee-8b88-92fbcf53809c.jpg

添加一個文本框,先固定好位置,在右側的文本輸入“功德 +1”字樣,注意字體選擇simsun才可以顯示中文。到這一步,所需要的組件已經添加成功了。

接下來添加圖片按鍵的事件。需要實現的效果是,在按下圖片(木魚)時將“功德 +1"的文本框向上移動,在釋放圖片(木魚)時將”功德 +1“隱藏。這樣的效果就是點擊時會出現”功德 +1“飄出來的效果。

1.點擊左側 imgbtn_1,圖片按鈕

66b2d09a-b134-11ee-8b88-92fbcf53809c.jpg

2.點擊手指圖標事件設置。只需要配置兩個事件,Pressed(按下)和 Released(釋放)。

3.點擊 Pressed(按下),在組件里選中 label_1,也就是文本框,在 Animation 選項下勾選移動,設置需要移動的坐標,也就是按下后lable_1 移動的最終位置,下圖中最終位置 x 坐標為206,y 坐標為 25,動畫效果選擇 linear 線性,持續時間為 50ms,也就是整個移動過程的持續時間。

66cf611a-b134-11ee-8b88-92fbcf53809c.jpg

4.返回上一層,點擊 Released,一樣在組件里選中 lable_1,首先 General 下勾選可視化,選擇隱藏,也就是我們釋放按鈕后會隱藏文本框。

66eade40-b134-11ee-8b88-92fbcf53809c.jpg

5.其次在 Animation 下勾選移動,將按下圖片后的文本框移動回原來的位置(即一開始的坐標位置,x 坐標 206,y 坐標 45),動畫選擇 linear 線性,持續時間 0 秒也就是瞬間移動。這樣在按下圖片時 Y 軸移動文本框 20 個像素,然后在釋放圖片時會將文本框移動回原來的位置并且隱藏。就可以實現”功德 +1“飄出來的效果。

67034552-b134-11ee-8b88-92fbcf53809c.jpg

記得運行一下,看一下模擬器的效果,這里同時也會生成需要的工程文件。

671d8b38-b134-11ee-8b88-92fbcf53809c.gif

02

文件移植

這里建議使用 FreeRTOS 加一個刷新 LVGL 屏幕的任務。將上次沒移植的文件,也就是 lv_user_config 的.c 和.h 文件一并放進來,文件可以在 AiPi-Radar-WakeUp 下的 components 下的 UI 復制過來,方法不在贅述。

由于本次刷新 LVGL 需要 FreeRTOS,所以還需要復制 config 下的 FreeRTOSConfig.h,一并放在工程目錄下,同時修改 proj.conf 文件,添加 set(CONFIG_FREERTOS 1),開啟 RTOS。

6732980c-b134-11ee-8b88-92fbcf53809c.jpg

其次將所有的文件通過 CMakeLists.txt 添加編譯。這里附上 CMake。

6751b926-b134-11ee-8b88-92fbcf53809c.jpg

在 Main 里面添加一個任務,附上完整齊Mian供大家參考。

6763af32-b134-11ee-8b88-92fbcf53809c.png

03

添加木魚敲擊音頻

光有畫面還不行,電子木魚的靈魂在于敲擊的聲音,主打一個靈魂洗滌。

這里為了方便制作,將 8388 的驅動也移植到了 commponents,修改了部分配置文件。驅動的原理是 I2S 驅動 8388 芯片,將音頻文件燒錄至 flash 中,然后再接口中通過 dma 輸出音頻文件。

這里已經找到的音頻文件是wav的格式,采樣率是 44100。

6788abc0-b134-11ee-8b88-92fbcf53809c.jpg

679c2d3a-b134-11ee-8b88-92fbcf53809c.jpg

將音頻文件放進去,然后修改 flash_prog_cfg.ini 將音頻文件燒錄進 flash 中,可以參考截圖中的方法,起始地址可以參考 flash 教學博文中,這里選擇 0x230000,如果是燒錄多個文件的話,記得計算文件大小,確保地址空間不重復。

67af5964-b134-11ee-8b88-92fbcf53809c.jpg

添加一個 muyu_8388_pcm.h 文件,定義木魚音頻的起始地址和大小。這里初始化函數在 8388_pcm.c 中已經有,只需要編寫一個 voice_MuYu 的函數。

67ca147a-b134-11ee-8b88-92fbcf53809c.jpg

修改8388_pcm.c 文件,編寫一個播放函數,這個函數也是調用 play_voice 這個接口,參數為音頻文件的地址和大小。同時修改 i2s 的初始化,采樣率是 44100。

67e03e12-b134-11ee-8b88-92fbcf53809c.jpg

主函數中記得將 8388 芯片初始化。

67fc90a8-b134-11ee-8b88-92fbcf53809c.jpg

修改LVGL工程中的 events_init.c,這個文件是事件控制文件,添加muyu_8388_pcm.h 頭文件,在 Pressed 事件中加入播放音頻的接口。

68158888-b134-11ee-8b88-92fbcf53809c.jpg

來看看最終效果

684153a0-b134-11ee-8b88-92fbcf53809c.gif








審核編輯:劉清

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

    關注

    12

    文章

    473

    瀏覽量

    61404
  • 模擬器
    +關注

    關注

    2

    文章

    831

    瀏覽量

    42733
  • GUI
    GUI
    +關注

    關注

    3

    文章

    615

    瀏覽量

    38903
  • LVGL
    +關注

    關注

    0

    文章

    75

    瀏覽量

    2504

原文標題:功德+1,用小安派-Eyes-S1做一個電子木魚

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

收藏 人收藏

    評論

    相關推薦

    基于Eyes-DU板子制作一個PWM循環呼吸燈

    上周發布了新的開源硬件——小安派-Eyes-DU,DU板子亮點是什么?小安來解釋下。
    的頭像 發表于 08-11 17:50 ?1431次閱讀
    基于<b class='flag-5'>Eyes</b>-DU板子制作一個PWM循環呼吸燈

    零基礎開發小安派-Eyes-DU之【PWM循環呼吸燈】

    上周發布了新的開源硬件——小安派-Eyes-DU,DU板子亮點是什么?小安來解釋下。 小安派-Eyes-DU支持USB OTG 功能,可以通
    的頭像 發表于 08-14 15:37 ?531次閱讀
    零基礎開發<b class='flag-5'>小安</b>派-<b class='flag-5'>Eyes</b>-DU之【PWM循環呼吸燈】

    何用小安派玩小霸王游戲

    “啊哈!小霸王!其樂無窮??!”,還記得小時候玩的小霸王游戲機嗎?這次小安派的用戶來帶大家回憶起童年啦,來看看安信可社區大佬如何用小安派玩小霸王游戲。
    的頭像 發表于 11-05 10:08 ?414次閱讀
    如<b class='flag-5'>何用</b><b class='flag-5'>小安</b>派玩小霸王游戲

    零基礎開發安信可小安-Eyes-S1【入門篇】——初識小安-Eyes-S1

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

    小安派-Eyes-S1/S2多功能開發板簡介

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

    安信可開源工程——小安派-Eyes-S1/S2多功能開發板

    前言 AiPi-Eyes-S1 是安信可開源團隊專門為Ai-M61-32S設計的一款開發板,支持WiFi6、BLE5.3。所搭載的Ai-M61-32S 模組具有豐富的外設接口,具體包括 DVP
    的頭像 發表于 06-20 09:51 ?398次閱讀
    安信可開源工程——<b class='flag-5'>小安</b>派-<b class='flag-5'>Eyes-S1</b>/S2多功能開發板

    小安派開源硬件制作一個桌面天氣站

    上周安信可推出了小安派的2款開源硬件——AiPi-Eyes-S1、AiPi-Eyes-S2,安信可應用開發團隊用小安派開源硬件制作了一款桌面天氣站,為出行做好參考~
    的頭像 發表于 07-02 11:07 ?592次閱讀
    用<b class='flag-5'>小安</b>派開源硬件制作一個桌面天氣站

    安派-Eyes-DU開發板的參數說明

    本周又來一款小安派開源硬件——小安派-Eyes-DU開發板,來看看參數~
    的頭像 發表于 08-06 10:18 ?391次閱讀
    安派-<b class='flag-5'>Eyes</b>-DU開發板的參數說明

    安信可開源硬件——小安派-Eyes-DU開發板

    安信可科技又來一款小安派開源硬件——小安派-Eyes-DU開發板,來看看參數~ 01概述 小安派-Eyes-DU用安信可M61模組作為控制核
    的頭像 發表于 08-07 14:52 ?582次閱讀
    安信可開源硬件——<b class='flag-5'>小安</b>派-<b class='flag-5'>Eyes</b>-DU開發板

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

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

    零基礎開發小安派-Eyes-S1【入門篇】——初識小安派-Eyes-S1

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

    小安派-Eyes-S1安裝VMware與Ubuntu教程

    設置了中文,換好了國內的清華APT源,安裝VScode與必要的插件,拉取了截至目前更新的小安派最新的SDK和子模塊,配置好了編譯環境。由于集成度較高,本次下載的壓縮包高達10G。選擇上傳了百度云(主要是莫工有會員),若有其他需求后期也可以上傳至其他云。
    的頭像 發表于 09-24 10:58 ?515次閱讀
    <b class='flag-5'>小安</b>派-<b class='flag-5'>Eyes-S1</b>安裝VMware與Ubuntu教程

    零基礎開發安信可小安派-Eyes-S1【入門篇】——安裝VMware與Ubuntu

    Ubuntu 18.04已經給大家設置了中文,換好了國內的清華APT源,安裝VScode與必要的插件,拉取了截至目前更新的小安派最新的SDK和子模塊,配置好了編譯環境。由于集成度較高,本次下載的壓縮包
    的頭像 發表于 09-26 09:00 ?336次閱讀
    零基礎開發安信可<b class='flag-5'>小安</b>派-<b class='flag-5'>Eyes-S1</b>【入門篇】——安裝VMware與Ubuntu

    制作86智能屏,用安信可的小安派-Eyes-R1/R2

    最近持續關注我們的朋友們知道,小安派新品開發我們都快卷死自己了,又上新??! ? 接口說明及系統框圖 AiPi-Eyes-R1 AiPi-Eyes-R2 乍一看,這兩款板子似乎
    的頭像 發表于 10-23 17:55 ?357次閱讀
    制作86智能屏,用安信可的<b class='flag-5'>小安</b>派-<b class='flag-5'>Eyes</b>-R1/R2

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

    2024積德累功,心想事成!接下來 看看如何用小安派-Eyes-S1做一個電子木魚 。 01、G
    的頭像 發表于 01-16 14:33 ?231次閱讀
    功德+1,用<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>
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
    <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
    <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
    <acronym id="s8ci2"></acronym>
    <acronym id="s8ci2"><center id="s8ci2"></center></acronym>