chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

聚豐項(xiàng)目 > 基于AB32智能音樂(lè)播放器

基于AB32智能音樂(lè)播放器

本項(xiàng)目用ab32v103開(kāi)發(fā)板,運(yùn)行RT-Thread嵌入式操作系統(tǒng),主要功能有播放音樂(lè),串口實(shí)時(shí)檢測(cè),同時(shí),0.96oled屏幕顯示當(dāng)前播放的音樂(lè)以及播放聲音的大小。

劉紅濤 劉紅濤

分享
0 喜歡這個(gè)項(xiàng)目
團(tuán)隊(duì)介紹

劉紅濤 劉紅濤

團(tuán)隊(duì)成員

劉紅濤 隊(duì)長(zhǎng)

分享
項(xiàng)目簡(jiǎn)介
本項(xiàng)目用ab32v103開(kāi)發(fā)板,運(yùn)行RT-Thread嵌入式操作系統(tǒng),主要功能有播放音樂(lè),串口實(shí)時(shí)檢測(cè),同時(shí),0.96oled屏幕顯示當(dāng)前播放的音樂(lè)以及播放聲音的大小。
硬件說(shuō)明

本項(xiàng)目用ab32v103開(kāi)發(fā)板,運(yùn)行RT-Thread嵌入式操作系統(tǒng),主要功能有播放音樂(lè),串口實(shí)時(shí)檢測(cè),同時(shí),0.96oled屏幕顯示當(dāng)前播放的音樂(lè)以及播放聲音的大小。

當(dāng)開(kāi)機(jī)時(shí)顯示歡迎界面

圖片.png

當(dāng)按s2時(shí)可以切換播放歌曲,同時(shí)0.96oled屏幕實(shí)時(shí)顯示

圖片.png

當(dāng)按s3時(shí)可以切換聲音大小,同時(shí)0.96oled屏幕實(shí)時(shí)顯示










軟件說(shuō)明

軟件環(huán)境

  • RT-Studio 版本: 2.1.0

  • RT-Thread_source_code V4.03

  • bluetrum(中科藍(lán)訊軟件包)V1.04

  • wavplayer軟件包 V-latest

  • optparse軟件包 V-latest

  • multibutton軟件包 V-latest

1、開(kāi)發(fā)環(huán)境搭建

最近也是工作比較忙,對(duì)audio的評(píng)測(cè)也沒(méi)做什么多余的東西,主要是根據(jù)官方的指導(dǎo),實(shí)現(xiàn)了功能,后續(xù)事件充足了再來(lái)好好玩玩這塊板子。

使用的是RT-thread官方stduio平臺(tái),先更新軟件源代碼至最新版,下載中科藍(lán)訊軟件包,下載RISC-V-GCC工具鏈,編譯程序會(huì)用到。


圖片.png圖片.png

2、軟件包配置

選擇基于開(kāi)發(fā)板,默認(rèn)選項(xiàng)就是中科藍(lán)訊,也是本次要測(cè)評(píng)的板子,點(diǎn)擊完成oK。

圖片.png

接下來(lái)選擇我們本次實(shí)驗(yàn)用到的軟件包,wavplayer軟件包、optparse軟件包和multibutton軟件包,實(shí)現(xiàn)通過(guò)板載按鍵控制聲音的播放語(yǔ)音量的增減。

圖片.png

然后對(duì)軟件包進(jìn)行簡(jiǎn)單配置,按鍵的示例代碼可以勾選也可以不勾選,后面要對(duì)此進(jìn)行修改,改為評(píng)測(cè)板上的用戶按鍵,optparse軟件包默認(rèn)即可。

圖片.png

3、應(yīng)用代碼編寫

基于RT-Thread的便利,這部分幾乎不需要用戶怎么操作,軟件包已經(jīng)配置完成,只需要少量代碼將功能整合起來(lái)即可,非常的方便。
首先修改要存儲(chǔ)的音樂(lè)文件,把romfs.c的內(nèi)容替換為本次實(shí)驗(yàn)用到的,


具體代碼:

main.c

/*
 * Copyright (c) 2020-2021, Bluetrum Development Team
 *
 * SPDX-License-Identifier: Apache-2.0
 *
 * Change Logs:
 * Date           Author       Notes
 * 2020/12/10     Autho    The first version
 */

/**
 * Notice!
 * All functions or data that are called during an interrupt need to be in RAM.
 * You can do it the way exception_isr() does.
 */

#include


/*
 * Copyright (c) 2020, RudyLo





演示效果

效果如視頻所示:

附件

(12.95 MB)下載

評(píng)論區(qū)(0 )