查看: 8996|回复: 34

[原创] 【YL-KL26Z开发】+ 简易WAV音乐播放器

[复制链接]

该用户从未签到

42

主题

340

帖子

0

高级会员

Rank: 4

积分
722
最后登录
2016-1-9
发表于 2015-8-30 14:19:12 | 显示全部楼层 |阅读模式
本帖最后由 LokTarOgar 于 2015-8-30 14:23 编辑

    写在前面(可跳过直接到正文)

    好久没有发帖子了,是我食言了,我没有完成之前自己计划的任务,在次对论坛管理员及网友说一声抱歉。  
    由于暑假提前回家了,所以在我将大部分模块调试过后,本来要按计划进行的,但是发现还有几天就要回家,因此就直接跳过第二步,改为直接上手调试我之前想过的东西,也就是音乐播放器。
    就这么花了大约20几天的时间,现在已经基本实现了所有功能。本来只需要两个星期就可以完成的任务,由于在家中效率实在太低,因此浪费了时间。

     正文

      在此我会简单描述具体实现的功能,以及需要改进的和不足的地方。

    实现功能:
     1.SD卡读取WAV文件。
     2.PIT+DAC播放WAV文件
     3.OLED通过调用外部FLASH中的字库显示歌曲名称。
     4.TSI控制歌曲实现暂停/播放、上/下曲切换。

    不足之处:
     1.无法实现通过I2S来进行播放音频文件。
     2.SD卡读取文件名为短文件名,无法读取长文件名,导致OLED只显示6个字节(即三个汉字)。
     3.SD卡每次读取固定大小的数据放入缓冲数组,导致在每次一组数据使用完毕后,在重新读取的间隔中会使扬声器长生咔哒的声音。
     4.OLED无法混合显示汉字和英文。

      

    程序中的PIT、DAC、ADC、TSI、SPI在之前的测试中都已经调试过,需要了解的可以看我之前的帖子。
     
     需要说明的是SD和OLED,以及各个标志位的处理。
     
     SD:这里的难度很高,到目前为止,我只是会简单的根据之前论坛网友的程序进行简单的修改,我只是懂了一些皮毛,如果需要深入学习,我是帮不上忙的。

    OLED:
    1.字库的下载以及调用。
         可以通过SD读取字库文件,之后通过SPI烧写至外部FLASH中即可。
         字库的调用可以通过C语言中汉字的内码,进而根据字库的规则可以很简单的找到所需要的数据。
         注:这里如果有网友需要我会重开一贴,详细的介绍本模块。由于附件上传限制,我在网盘分享一个字库软件。
         https://pan.baidu.com/s/1jGzqFAY       
      2.汉字的显示。
         这里的内容在我之前的贴子   【YL-KL26Z开发】+ SPI驱OLED     中有详细的介绍,这里就不再多提。
         https://www.nxpic.org.cn/module/forum/thread-600349-1-1.html            

      标志的处理:
      我个人认为本程序最关键的部分就是各个标志的配置,正是这样才会实现以上的歌曲切换的功能。
      在程序中我设置了许多标志,在这里主要说明几个:
      1.flag、flagpause、flagnext、flaglast     以上的标志会通过TSI来控制歌曲的变化
         flag:当上/下曲标志置位时,该位置0,读取数据的循环就会跳出,再通过加减歌曲名指针大小来切换歌曲。
         flagpause:通过该位的变化来控制音频数据数组指针是否加一,进而控制音频暂停。
         flagnaex\flaglast:判断是否置位flag,以及是否将歌曲名指针加减。
      2.enable:当数据缓冲数组满且数据指针未到最大时,该位为0,将会禁止读取歌曲数据。
      3.error:通过与文件大小转换后的值进行比较,可以大致判断歌曲是否播放完毕,进而跳出循环继续播放下一曲。
   

     如果网友有其他不清楚的地方可以直接回帖,下面是资料:

     源工程: SD.zip (3.37 MB, 下载次数: 95)
回复

使用道具 举报

  • TA的每日心情
    开心
    2018-7-23 21:04
  • 签到天数: 103 天

    [LV.6]常住居民II

    228

    主题

    5379

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    15315
    最后登录
    1970-1-1
    发表于 2015-8-30 14:38:54 | 显示全部楼层
    好好内容,楼主要能详细些更好!
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2018-7-23 21:04
  • 签到天数: 103 天

    [LV.6]常住居民II

    228

    主题

    5379

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    15315
    最后登录
    1970-1-1
    发表于 2015-8-30 14:39:56 | 显示全部楼层
    我也正在学习这部分,回头交流
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    5

    主题

    182

    帖子

    0

    高级会员

    Rank: 4

    积分
    703
    最后登录
    2017-4-26
    发表于 2015-8-30 20:14:20 | 显示全部楼层
    多谢分享,学习学习
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2017-2-9 14:16
  • 签到天数: 17 天

    [LV.4]偶尔看看III

    25

    主题

    1785

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    2245
    最后登录
    2024-4-12
    发表于 2015-8-31 10:43:22 | 显示全部楼层
    又有更新了。。。我也跟着更新。。
    freescaleic.org.png
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    42

    主题

    340

    帖子

    0

    高级会员

    Rank: 4

    积分
    722
    最后登录
    2016-1-9
     楼主| 发表于 2015-8-31 12:29:21 | 显示全部楼层
    lkl0305 发表于 2015-8-30 14:38
    好好内容,楼主要能详细些更好!

    大部分模块之前都有分享过,主要还是整合的问题,流程图上很详细。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    21

    主题

    435

    帖子

    0

    高级会员

    Rank: 4

    积分
    916
    最后登录
    2020-4-8
    发表于 2015-9-8 22:30:00 | 显示全部楼层
    好内容 谢谢楼主分享!!!
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2019-10-17 08:07
  • 签到天数: 273 天

    [LV.8]以坛为家I

    74

    主题

    2338

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    7357
    最后登录
    2021-8-30
    发表于 2015-9-15 14:52:31 | 显示全部楼层
    谢谢lz的分享
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    郁闷
    2022-4-4 11:28
  • 签到天数: 351 天

    [LV.8]以坛为家I

    141

    主题

    8054

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    5740
    最后登录
    2022-4-4
    发表于 2015-9-20 23:47:46 | 显示全部楼层
    谢谢分享 154120hhw0q0e0hpw374yw.png
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2020-11-5 18:45
  • 签到天数: 158 天

    [LV.7]常住居民III

    26

    主题

    669

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    1724
    最后登录
    2020-11-5
    发表于 2015-9-24 11:17:42 | 显示全部楼层
    看来这块板子不错。
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /4 下一条

    Archiver|手机版|小黑屋|恩智浦技术社区

    GMT+8, 2024-5-3 01:58 , Processed in 0.155321 second(s), 29 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

    快速回复 返回顶部 返回列表