找回密码
 注册
搜索
查看: 1934|回复: 24

MT6223D 上软件模拟SPI T卡 ,可以播mp3

[复制链接]
发表于 2009-11-8 11:09:14 | 显示全部楼层 |阅读模式
经过多种方法优化提速,可以播mp3.感兴趣可以交流。qq 277283438
发表于 2009-11-9 11:31:31 | 显示全部楼层
GPIO模拟SPI做大数据传输太耗CPU,performance应该不会太好,也就是说会影响别的任务运行,不可取
点评回复

使用道具 举报

 楼主| 发表于 2009-11-10 22:41:31 | 显示全部楼层
楼上的,这也是 低端 平台的一个卖点 呀 。。。
点评回复

使用道具 举报

发表于 2009-11-11 00:59:54 | 显示全部楼层
It does not matter if the platform is high or low . You should use the SPI interface  in interrupt mode to realize the feature instead of GPIO simulation to have a good performance. In this way, it will not cost any more....
点评回复

使用道具 举报

发表于 2009-11-25 10:12:46 | 显示全部楼层
MT6223D 上软件模拟SPI T卡 ,可以播mp3.楼主这个软件你能搞定了吗。有兴趣。你的QQ加不了的
点评回复

使用道具 举报

发表于 2009-12-11 00:34:36 | 显示全部楼层
能实现吗
点评回复

使用道具 举报

发表于 2009-12-16 19:36:57 | 显示全部楼层
Dear dyyjun ,what do you mean mentioned below:
You should use the SPI interface  in interrupt mode ?
点评回复

使用道具 举报

发表于 2009-12-17 09:19:18 | 显示全部楼层
以下是引用sainttv在2009-12-16 19:36:57的发言:
Dear dyyjun ,what do you mean mentioned below:
You should use the SPI interface                in interrupt mode ?

如果用GPIO模拟必然会耗费大量的CPU资源,时序模拟delay的时候所有的任务都会被block,什么也干不了,如果是中断模式
cpu就可以空闲干别的事情了,就这么简单。我很奇怪所有的MCU都有SPI,为什么要用软件模拟呢?
这种模式最好只用在传输一些控制信息上,不要用在大量的数据传输上
点评回复

使用道具 举报

发表于 2009-12-24 10:32:39 | 显示全部楼层
如果用GPIO模拟SPI的话,估计速度上会比较慢吧,我今天用23C试了一下用GPIO模拟的最大时钟是200kHz,这样的话读写的速度最大也就是这个速度,对于速率很高的mp3(200kbps以上),这个速度肯定是不行的啊,楼主的方案能支持高速率的mp3吗?

楼上的兄弟,专用的SPI接口目前好像都有别的用途了啊。
点评回复

使用道具 举报

发表于 2009-12-24 11:47:14 | 显示全部楼层
只要软件处理好,一个spi完全可以挂几个外设。
点评回复

使用道具 举报

发表于 2009-12-24 15:56:58 | 显示全部楼层
你是说通过CS来控制不同的device
点评回复

使用道具 举报

发表于 2009-12-24 16:38:04 | 显示全部楼层
我现在试了发现初始化总是不能成功,请问可能是什么原因?

2.8V供电,CLOCK上升沿读写,读写都是从MSB开始到LSB
点评回复

使用道具 举报

发表于 2009-12-25 02:00:14 | 显示全部楼层
以下是引用sainttv在2009-12-24 15:56:58的发言:
你是说通过CS来控制不同的device

CS of SPI can not be used to identify which device you are using.
You just need to set the other device to high impedance in SPI bus if you are using one device.
For example, maybe you can shutdown the other device.
You can try, good luck.
点评回复

使用道具 举报

发表于 2009-12-25 09:05:42 | 显示全部楼层
挂多个device

[em06]
点评回复

使用道具 举报

发表于 2009-12-26 11:24:02 | 显示全部楼层
以下是引用sainttv在2009-12-24 10:32:39的发言:
如果用GPIO模拟SPI的话,估计速度上会比较慢吧,我今天用23C试了一下用GPIO模拟的最大时钟是200kHz,这样的话读写的速度最大也就是这个速度,对于速率很高的mp3(200kbps以上),这个速度肯定是不行的啊,楼主的方案能支持高速率的mp3吗?

楼上的兄弟,专用的SPI接口目前好像都有别的用途了啊。


用23的GPIO模擬SPI,SCK可以作到~2MHz,而不是200KHz。
点评回复

使用道具 举报

发表于 2009-12-26 11:40:40 | 显示全部楼层
呵呵,哥们也有啊,可以播放700K的MP3。任何一个都可以啊。  QQ:38531376[em01]
点评回复

使用道具 举报

发表于 2009-12-31 11:14:57 | 显示全部楼层
我在23C上测试不停的写某个IO口,高低高低,量示波器发现只有200KHz啊,怎么达到2MHz的啊?请指教、
点评回复

使用道具 举报

发表于 2009-12-31 11:36:03 | 显示全部楼层
我最近在搞这个(GPIO模拟SPI),现在能够mount到T卡,也能进入到里面的文件(夹)列表,但是具体打开某个文件就出错,还不知道是什么原因,呵呵,有知道的高手指点一下,谢谢!
点评回复

使用道具 举报

发表于 2010-1-6 21:51:23 | 显示全部楼层

MT6223D 上软件模拟SPI T卡 ,可以播mp3

以下是引用angeloliou在2009-12-26 11:24:02的发言:


用23的GPIO模擬SPI,SCK可以作到~2MHz,而不是200KHz。


请问初始化时候除了写CMD0,CMD1,还有设置blocklength以外,还需要写什么命令?是不是要将gSD这个结构体数据都根据SD卡的情况赋值啊?我目前直接设定了这个结构体中的capacity和写保护特性直接赋值了,发现读文件(jpg)的时候,好像只有开始的一小段数据是对的,后面要不是全黑,要不就是错误的数据,写文件就根本不成功(虽然提示成功了),高手指点一下是什么原因啊?
另外,23C GPIO模拟SPI,CLK可以做到~2MHz?我不用MTK封装好的函数,而是直接写GPIO的相关寄存器用示波器量好像也只能达到500K啊,这位兄台怎么能做到~2MHz啊?
点评回复

使用道具 举报

发表于 2010-1-7 00:35:03 | 显示全部楼层
以下是引用sainttv在2010-1-6 21:51:23的发言:


请问初始化时候除了写CMD0,CMD1,还有设置blocklength以外,还需要写什么命令?是不是要将gSD这个结构体数据都根据SD卡的情况赋值啊?我目前直接设定了这个结构体中的capacity和写保护特性直接赋值了,发现读文件(jpg)的时候,好像只有开始的一小段数据是对的,后面要不是全黑,要不就是错误的数据,写文件就根本不成功(虽然提示成功了),高手指点一下是什么原因啊?
另外,23C GPIO模拟SPI,CLK可以做到~2MHz?我不用MTK封装好的函数,而是直接写GPIO的相关寄存器用示波器量好像也只能达到500K啊,这位兄台怎么能做到~2MHz啊?

Maybe it depends on the CPU main frequency and IO response timing, you can check these two points.
Also you need to check if you have code delay in your programing.
点评回复

使用道具 举报

高级模式
B Color Image Link Quote Code Smilies

本版积分规则

Archiver|手机版|小黑屋|52RD我爱研发网 ( 沪ICP备2022007804号-2 )

GMT+8, 2024-10-7 13:14 , Processed in 0.048806 second(s), 17 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

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