这是我用STM32做的第一部作品,之前在AVR-MEGA128调试了部分功能,后来移植到了STM32F103ZET6上。
时间2009年,那时是大三上学期,由于要忙着考研,就匆匆结束了这个设计。有很多地方都不完善的,不管
软件还是硬件。我也不打算再更新这个东西的软件了,就当做毕业设计吧。基本功能是音乐播放,图片浏览和
电子书,喜欢的就拿去看咯。高手请拍砖!
说说这个东西,文件系统支持FAT16和FAT32,参考了正点原子大哥的东西。SD卡是SPI模式的。文件系统
方面,那个时候看了一个寒假的FAT理论,看多了自然就懂了,刚开始看是很晦涩的。懂了原理以后就用FATFS吧,
我现在就在用,很好用~
界面是我自己写,比较简洁的显示,GUI也是自己写的,比较简单的,现在看看要是用uCGUI那有多好。
程序纯裸跑的,状态机思路。没有上系统。
列个单子说明功能吧:
1.音乐播放,频谱显示,支持mp3,wma格式
2.图片浏览,支持bmp,jpg格式
3.电子书,只支持txt
4.USB2.0,STM32自带的控制器,目前没开双缓冲,速度不是很快~插上电脑就能当读卡器用
特别注明:这个工程是MDK环境下的,由于使用的STM32固件库版本较低,编译会出问题
请把工程中的MP3_by_ZSYlibstm32f10x_it.h文件覆盖到你的MDK的安装目录下
具体路径为:Program FilesUV3keilARMINCSTSTM32F10x,这样方能编译通过
不说太多,上图上程序!
主界面
(原文件名:1.JPG)
音乐播放时的文件选择页面
(原文件名:2.JPG)
音乐播放界面
(原文件名:3.JPG)
电子书时的文件选择页面
(原文件名:4.JPG)
电子书显示
(原文件名:5.JPG)
图片浏览时的文件选择页面
(原文件名:6.JPG)
显示图片
(原文件名:7.JPG)
显示图片
(原文件名:8.JPG)
插上USB数据线时的界面
(原文件名:9.jpg)
MP3整体照
(原文件名:10.JPG)
程序,MDK3.70
ourdev_618101V6TRP9.zip(文件大小:4.76M) (原文件名:MP3_by_ZSY.zip)
SD卡中的文件(图标字库等等)
ourdev_618102TX4IHL.zip(文件大小:5.34M) (原文件名:SD.zip)
在显示txt文件的时候
如果“下一页”的话,在当前读写指针位置顺序读取显示就成了
那么“前一页”要怎么办呢?一个字节一个字节的向前调整指针位置判断是汉字还是英文再显示?
再比如我手机上的电子书阅读功能,可以自己选择前翻后翻多少页
但是我手机第一次打开TXT文件的时候特别慢,我猜测难道是扫描了TXT一遍然后记录了所有页的指针位置?
大家指导一下,有什么比较好的思路吗?
-----------------------------------------------------------------------
那个时候由于时间问题,我也没能实现向上翻阅,的确是有些复杂的。
你可以参考一下网站上那位做STM32 PDA的仁兄的代码,他好像有实现。
但是如果你用FatFs的话这个问题就会简单多了,个人想法是利用f_lseek()函数
来实现对文件数据指针移动。具体可参考FatFs的说明文档,官方和论坛都有~
一周热门 更多>