<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天內不再提示

瑞薩RA2L1評估板初體驗-歌曲切換步驟

冬至子 ? 來源:當字符愛上音符 ? 作者:當字符愛上音符 ? 2023-10-11 12:57 ? 次閱讀

一、前言
第一次使用瑞薩的板子和RTT studio開發環境,跟著瑞薩活動的實踐步驟,從最初的不適應,到慢慢熟悉,現在覺得RTT studio的IDE做得非常方便,瑞薩的教程也做的十分詳細。但是因為工作原因,空閑時間有限,只跑了相關的幾個外設實驗,做了一個簡易的音樂播放器,用按鈕進行歌曲切換。后續將繼續研究其他的外設應用。

二、硬件連接

1.jpg

用到的硬件資源:
1、UART9: P109/P110
2、按鍵輸入(P004)
3、PWM輸出:P500
4、SPI0

1.jpg

三、軟件工具
1、環境搭建
? rt-thread studio 安裝;
? 靈活配置軟件包(FSP)
? CPK-RA2L1板級支持包安裝
? usb轉串口工具
(具體的步驟可參考瑞薩RA2L1開發實踐指南,圖文并茂,十分詳細)

2、另外用到軟件:
(1)中景園電子1.8寸顯示屏自帶漢字編碼軟件
(2)音樂編碼軟件Music Encode,通過手動輸入簡譜進行轉換,如下圖所示。

1.jpg

四、關鍵代碼:

play.c
int player_next(player_t player)
{
uint16_t len;
rt_uint32_t level;
/* 關閉全局中斷 /
level = rt_hw_interrupt_disable();
/
將當前播放歌曲的序號 加一 /
if (player->song_current < player->song_num)
{
player->song_current ++;
}
else
{
player->song_current = 1;
}
g_songnum = player->song_current;
/
更新播放器的當前歌曲的播放時間以及總時間 /
player->song_time_pass = 0;
/
打開全局中斷 /
rt_hw_interrupt_enable(level);
player->decode->control(player->song_sheet[player->song_current - 1], DECODE_OPS_CMD_GET_LEN, &len);
/
關閉全局中斷 /
level = rt_hw_interrupt_disable();
player->song_time_all = len;
/
打開全局中斷 */
rt_hw_interrupt_enable(level);
if (player->status != PLAYER_RUNNING)
{
player_play(player);
}
return 0;
}
LCD.c
void lcd_thread_handler(void *parameter)
{
rt_uint8_t temp = 0;
rt_kprintf("lcd thread handler!");
LCD_Init();
LCD_Fill(0,0,LCD_W,LCD_H,WHITE);
lcd_show_menu();
while(1)
{
rt_kprintf("lcd thread running!");
if(temp != g_songnum)
{
rt_kprintf("lcd,temp = %d,g_songnum = %d",temp,g_songnum);
temp = g_songnum;
LCD_Fill(1,128+8,LCD_W,LCD_H,WHITE);
}
lcd_show_pic1();
rt_thread_mdelay(500);
}
}
void lcd_show_menu(void)
{
LCD_ShowPicture(0,0,127,128,gImage_music);
LCD_ShowChinese(30,128-10,"正在播放",RED,WHITE,16,0);
LCD_ShowChinese(1,128+8,"快樂父子倆",RED,WHITE,16,0);
}
void lcd_show_pic1(void)
{
switch (g_songnum){
case 1 :LCD_ShowChinese(1,128+8,"快樂父子倆",RED,WHITE,16,0);break;
case 2 :LCD_ShowChinese(1,128+8,"葫蘆娃",RED,WHITE,16,0);break;
case 3 :LCD_ShowChinese(1,128+8,"送別",RED,WHITE,16,0);break;
case 4 :LCD_ShowChinese(1,128+8,"兩只老虎",RED,WHITE,16,0);break;
default: break;
}
}
key.h
#define KEY_NEXT_PIN 4
key.c
int key_init(void)
{
btn_last.press_logic_level = KEY_PRESS_LEVEL;
btn_last.hold_cyc_period = 100;
btn_last.cb = (my_button_callback)btn_cb;
btn_next = btn_play = btn_last;
btn_last.pin = KEY_PLAY_PIN;
btn_play.pin = KEY_LAST_PIN;
btn_next.pin = KEY_NEXT_PIN;
my_button_register(&btn_last);
my_button_register(&btn_play);
my_button_register(&btn_next);
my_button_start();
return 0;
}

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

    關注

    0

    文章

    118

    瀏覽量

    15155
  • 音樂播放器
    +關注

    關注

    0

    文章

    67

    瀏覽量

    15674
  • UART接口
    +關注

    關注

    0

    文章

    124

    瀏覽量

    15088
  • PWM輸出
    +關注

    關注

    1

    文章

    66

    瀏覽量

    5068
  • RTThread
    +關注

    關注

    7

    文章

    130

    瀏覽量

    40551
收藏 人收藏

    評論

    相關推薦

    RA2系列開發體驗】初識RA2L1開發

    RA2L1開發是一款基于R7FA2L1AB2DFL為主控芯片的開發,它具有優越的性能和低功耗的特點,并配有一定的外設資源以供測試。RA2L1
    發表于 11-29 10:06

    RA2系列開發體驗】開箱+環境搭建

    RA2L1 產品組基于 Arm? Cortex?-M23 核心(現今 Arm? Cortex-M 系列中功耗最低的 CPU)。 這款產品采用優化的制程和電子的低功耗工藝技術,是業界一流水平的超低
    發表于 12-01 11:30

    RA2系列開發體驗】RA2L1試用筆記

    前言??早聽說過這個芯片品牌,好像是電賽的贊助商。有機會申請到了RA2L1 的開發試用,因為工作上會用到CAN通信所以專門選了帶CAN通信接口的那款開發
    發表于 12-14 15:15

    RA2系列開發體驗】開箱體驗-Hg

    的 CPU)。 這款產品采用優化的制程和電子的低功耗工藝技術,是業界一流水平的超低功耗微控制器。 RA2L1 產品組能夠支持 1.6V 至 5.5V 寬電壓工作,CPU 時鐘頻率最高 48MHz
    發表于 12-21 01:04

    RA2系列開發體驗】基于Keil MDK環境搭建及最快上手例程

    一、開發簡介RA2L1 基于 Arm? Cortex?-M23 核心(現今 Arm? Cortex-M 系列中功耗最低的 CPU)。 這款產品采用優化的制程和電子的低功耗工藝技術
    發表于 12-23 22:15

    RA2系列開發體驗】測評RA2L1電容式觸摸

    RA2L1 MCU產品群關鍵特性:48MHz Arm Cortex-M23 CPU內核支持1.6V-5.5V寬范圍工作電壓超低功耗,提供64μA/MHz工作電流和250nA軟件待機電流,快速喚醒時間
    發表于 12-27 23:24

    RA2系列開發體驗】+RA2AL開發試用筆記

    前言??早聽說過這個芯片品牌,好像是電賽的贊助商。有機會申請到了RA2L1 的開發試用,因為工作上會用到CAN通信所以專門選了帶CAN通信接口的那款開發
    發表于 12-28 13:19

    Renesas RA2L1開發之I2C測評

    1、Renesas RA2L1開發之I2C  開發介紹  CPK-RA2L1
    發表于 10-24 16:29

    Renesas RA2L1開發之PWM呼吸燈功能設計實現

    1、Renesas RA2L1開發之PWM呼吸燈功能實現  CPK-RA2L1評估  MCU
    發表于 10-25 14:48

    Renesas RA2L1開發之CAN介紹

    1、Renesas RA2L1開發之CAN介紹  功能模塊的硬件介紹  CPK-RA2L1評估
    發表于 11-01 11:46

    Renesas RA2L1開發之PWM方波配置相關資料推薦

    1、Renesas RA2L1開發之PWM方波配置  工程的配置  時鐘的配置  本次直接基于官方的例程進行開發,使用
    發表于 11-02 15:31

    Renesas RA2L1開發之I2C接口評測

    1、Renesas RA2L1 開發之 I2C  開發介紹  CPK-RA2L1
    發表于 11-04 14:26

    RA4系列開發體驗】+ 3種開發的比較

    鍵和確認鍵。如果既使用觸摸鍵又使用機械鍵難免整體上看上去有些不倫不類。圖1RA-Eco-RA4M2-100PIN圖2R7FA2L1AB2DFL就這點來講,無疑 CPK-
    發表于 12-09 22:39

    基于RA2L1開發的初識點燈

      1. 開發  2. 開發介紹  RA2L1
    發表于 04-03 16:55

    RA2L1 ANE加解密協處理系統簡介

    芯片的模式,可以更好的增加安全性并且可以使用隨機秘鑰加強防破解能力?! ?b class='flag-5'>1、簡介  以下介紹的是采用RA2L1作為專用加解密協處理器的方案,稱它為ANE系統?! ”鞠到y的主要作用就
    發表于 04-03 17:28
    亚洲欧美日韩精品久久_久久精品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>