代码量:850(独立编写代码)+2108(文件系统移植代码)=2958行
代码开发与整机调试:二十天
硬件开发周期:无
简介:SD卡驱动,FAT32文件系统,5110液晶驱动,vs1003语言解码模块驱动
收获:①SD卡的电平是3.3v,而单片机的电压是5v,二者之间的连接必须考虑到电平的转换,直接连接的话不但得不到正确的结果,还会对SD卡造成伤害。
②SD的版本不同,其初始化的命令是不同的,使用时一定要注意区分,利用版本查询命令查询。本程序使用的是1.0版本的SD卡,初始化命令是CMD0+CMD8。
③vs1003为了保证音质,设置了0.5KB的缓冲区,在本实验中,由于种种因素,未能采用这个机制,致音质不佳。ADXL345模块还未完美拼接,以进行切换歌曲,调整音量。此外,程序仍存在跑飞的现象,后期版本仍需改进。
④对于大容量的存储系统的文件管理,需移植文件系统。
⑤熟悉了I2c通信协议,但是对于avr单片机来说,设置了大量的寄存器,导致浪费了大量的时间。
⑥由于5110不带字库,所以只在程序中添加了ASCII英文字库,网上下载的中文字库太大,单片机放不下。有种设想是放在SD卡中,但是没有去做。
图片:
整机图:
5110显示屏: