基于Kinetis的KL系列之Cortex-M0的WAV音频播放器——系统设计(1)

本文介绍了基于飞思卡尔Kinetis KL系列的Cortex-M0单片机MKL26Z256VLH4设计的WAV音频播放器。讨论了MCU资源选择、功能规划,包括SPI、UART、USB设备、触摸按键和音量控制等。还探讨了DAC的选取,选择了CS43L22,并考虑了时钟源问题。此外,指出了驱动开发的挑战,如时钟配置、GPIO、SPI、UART、I2C和DAC等,并计划使用protothread进行调度。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一直想找个机会接触并使用飞思卡尔的KL系列来做一个小东西,对该Cortex-M0单片机 达到熟练运用的程度,从而能够使之在项目中得到推广,因为飞思卡尔的东西质量还是值得称赞的(虽然我司的FAE支持奇差无比,但还是难以抵挡其性价比高得诱惑尴尬,另外目前飞思卡尔对于样片放开申请,很容易就能申请到也是其中之一的原因)


第一是确定功能,目前构思如下:

控制MCU: 初步选择MKL26Z256VLH4,具有以下资源

RAM: 32KB(按照以前做过WAV播放器,大概44.1kbps/16bit 音频数据时 系统耗费大概7KB内存左右,选了个这么大的,可以考虑软件MP3,或者做一个简单的GUI)

Flash:256KB(感觉如果存中文字库,貌似还不够啊,到时候看能不能压缩 选择个1000个常用汉字)

SPI: 2个(应该够了,SD卡需要独占一个SPI(因为有片选高发送DUMMY的操作,以前挂了2个是不是 软件写得有问题没操作起来),另外就可以挂很多SPI外设,用不同片选区分, 目前能想到的有SPI_LCD, SPI_Flash(存字库->或者不用)

UART: 3个,够用了,一个debug,另外一个用作命令解析

USB Device: 1个,用来将设备枚举成U盘

触摸按键:4个,刚好这个是KL系列的特色,一定得用上,作为播放器的功能按键

音量按键:2个,根据以往做过WAV播放器的经验,没有音量按键简直用得生不如死

音频DAC:最好选一款SNR高又集成耳放的,原先使用过WM8978,PCM1770,音质都一般,感觉缺少点味道。最后确定使用CS43L22(STM32F4 discovery,音质堪称完美 (对于木耳朵)),查了下手册,发现时I2C控制接口,我一直觉得

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值