搜索
bottom↓
回复: 43

【转载分享】基于Kinetis KL25/KL26USB读写U盘的例程

[复制链接]

出0入0汤圆

发表于 2014-12-31 16:20:54 | 显示全部楼层 |阅读模式
不知道以前有没有人发过。。。

原帖地址:http://blog.chinaaet.com/detail/38978

最近发现有很多使用低端MCU作为USB主机读写U盘的低成本需求,Kinetis KL2x系列作为MCU平台比较合适,飞思卡尔也为此提供了bare mental版(不带RTOS)的USB Stack,不过官方原版的USB Stack(4.1.1版本)经常会出现挑U盘的现象(即有些U盘不能识别),为此我和同事在官方原版代码的基础上做了修改,并且自己写了使用部分FatFS文件系统常用的几个API函数的demo(见msd_fat_demo.c文件中Fat_Demo_Test()函数,官方原版的测试函数接口为fat_demo()函数,FatFS的API函数很多,但是我们常用来操作U盘的API就那几个,索性我就写了个简单的test就这几个常用的API做了demo演示),经过测试,可以兼容市场上大部分的U盘,效果还是很不错的,下面我简单介绍下(以IAR版为例,Keil版的我就先不介绍了,跟IAR类似),并在文章最后附上了IAR和Keil版的源代码供广大博友参考:

测试平台:IAR7.3 + KL25 FRDM板(我电脑刚更新了IAR到最新版,老版本的应该也没有问题)

测试代码:\Kinetis KL25 HOST MSD\msd_mfs_generic\iar_ew(基于FSL USB Stack 4.1.1)

测试上位机:超级终端,波特率为9600bps,端口为USB调试端口虚拟的Com口

(1)如下图所示为测试平台,Freedom板自带两个USB接口,其中一个为调试端口与电脑相连,同时电脑通过该USB接口为Freedom板子5v供电,而另一个USB端口则主要用来测试KL25的USB模块的。不过需要注意的问题是,Freedom板默认只能测试USB device功能(板子做USB Device的时候,外部USB Host可以给板子供电),但是如果做USB Host则需要对板子做些许改动,因为如果Freedom板做为USB Host,Device端是无源的设备需要Host端通过VBUS为其供电,所以这时不仅需要调试端口的USB接到电脑端为板子供电,而且还需要加一根跳线将调试端口USB的5v连到测试USB端口的VBUS上为USB Device供电(因为Freedom板子默认没有把这两个USB端口的5v VBUS端相连),如图中我加的绿色跳线,需要自己焊接一下,这样准备工作就Ok了;



(2)打开IAR工程并编译,最后下载到Freedom板子上,复位芯片。然后将准备好的U盘插到板子的测试USB端口(需要准备一根大口转小口的USB线),见证奇迹的时刻就到来了,如下图:



好了,就说这么多了。怎么样,如果没试过的赶紧试一试,还是挺好玩的,哈哈。

附件为完整的测试工程:

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

阿莫论坛20周年了!感谢大家的支持与爱护!!

一只鸟敢站在脆弱的枝条上歇脚,它依仗的不是枝条不会断,而是自己有翅膀,会飞。

出100入101汤圆

发表于 2014-12-31 16:40:58 | 显示全部楼层
不错的资源,这个可以参加本坛的活动了。

出0入0汤圆

发表于 2014-12-31 17:21:16 | 显示全部楼层
支持lz,很好的资源

出0入0汤圆

 楼主| 发表于 2014-12-31 21:26:38 | 显示全部楼层
fengyunyu 发表于 2014-12-31 16:40
不错的资源,这个可以参加本坛的活动了。

这个例程还是挺不错的呢

出0入0汤圆

 楼主| 发表于 2014-12-31 21:27:54 | 显示全部楼层
jiwx2011 发表于 2014-12-31 17:21
支持lz,很好的资源

多谢支持

出0入0汤圆

 楼主| 发表于 2014-12-31 22:22:47 | 显示全部楼层
动手能力强的小伙伴们可以按照例程试试呢

出0入0汤圆

发表于 2014-12-31 22:24:24 | 显示全部楼层
这个作者在我们论坛哈。。FSL的版主哈。

出0入0汤圆

 楼主| 发表于 2014-12-31 22:26:31 | 显示全部楼层
彼岸花开@ 发表于 2014-12-31 22:24
这个作者在我们论坛哈。。FSL的版主哈。

是哪位版主  以前不知道呢

出0入0汤圆

发表于 2014-12-31 22:28:26 | 显示全部楼层
IAR的版本好高啊 , 都7.3啦

出0入0汤圆

 楼主| 发表于 2014-12-31 22:29:47 | 显示全部楼层
franki 发表于 2014-12-31 22:28
IAR的版本好高啊 , 都7.3啦

IAR更新的速度还算可以  主要是芯片推陈出新的比较快

出0入0汤圆

发表于 2014-12-31 22:37:18 | 显示全部楼层
彼岸花开@ 发表于 2014-12-31 22:24
这个作者在我们论坛哈。。FSL的版主哈。

哈 ,此贴的原作者在论坛啊

出0入93汤圆

发表于 2014-12-31 22:38:38 | 显示全部楼层
彼岸花开@ 发表于 2014-12-31 22:24
这个作者在我们论坛哈。。FSL的版主哈。

哈哈,原来是论坛版主啊

出0入0汤圆

发表于 2014-12-31 23:00:58 | 显示全部楼层
去他的博客转了一圈,这个哥们是个大神。

出0入0汤圆

发表于 2014-12-31 23:03:58 | 显示全部楼层
franki 发表于 2014-12-31 22:37
哈 ,此贴的原作者在论坛啊

版主挺好的。。很和蔼。。有幸听过他将K60 。当时啥也不会。彻底蒙了哈、

出0入0汤圆

发表于 2014-12-31 23:12:05 | 显示全部楼层
彼岸花开@ 发表于 2014-12-31 23:03
版主挺好的。。很和蔼。。有幸听过他将K60 。当时啥也不会。彻底蒙了哈、 ...

在那讲的K60视频 ,麻烦发个链接 ,谢谢啦

出0入0汤圆

发表于 2015-1-4 09:30:23 | 显示全部楼层
确实是FSL的版主,还有啊,最近也在做模拟U盘

出0入0汤圆

 楼主| 发表于 2015-1-4 10:32:34 | 显示全部楼层
yzb1019 发表于 2015-1-4 09:30
确实是FSL的版主,还有啊,最近也在做模拟U盘

是哪位版主 ?

出0入0汤圆

发表于 2015-1-4 10:58:15 | 显示全部楼层
牛人辈出~

出0入0汤圆

发表于 2015-1-4 10:58:36 | 显示全部楼层

同问,膜拜牛人

出0入0汤圆

发表于 2015-1-4 11:13:07 | 显示全部楼层

是FAE_Jicheng。也是当年听他讲过Kinetis的人了

出0入0汤圆

 楼主| 发表于 2015-1-4 11:20:39 | 显示全部楼层
yzb1019 发表于 2015-1-4 11:13
是FAE_Jicheng。也是当年听他讲过Kinetis的人了

谢谢  知道了

出0入0汤圆

发表于 2015-1-4 11:39:18 来自手机 | 显示全部楼层
感觉飞思好好玩,可惜快要找工作没什么时间了

出0入0汤圆

发表于 2015-1-4 14:40:38 | 显示全部楼层
不错,收藏!

出0入0汤圆

发表于 2015-1-4 17:12:04 | 显示全部楼层
非常有用,谢谢!

出0入0汤圆

发表于 2015-1-5 20:25:30 | 显示全部楼层
不错,很有参考价值的资料

出0入0汤圆

发表于 2015-1-5 20:40:17 | 显示全部楼层
Ray______ 发表于 2015-1-4 11:39
感觉飞思好好玩,可惜快要找工作没什么时间了

飞思 玩好了更容易找到好工作 。

出0入0汤圆

 楼主| 发表于 2015-1-5 20:47:42 | 显示全部楼层
Ray______ 发表于 2015-1-4 11:39
感觉飞思好好玩,可惜快要找工作没什么时间了

工作学习两不误 可以晚上的时候玩一玩芯片

出0入0汤圆

发表于 2015-1-5 21:34:09 | 显示全部楼层
转来转去

出0入0汤圆

 楼主| 发表于 2015-1-5 21:47:54 | 显示全部楼层

好资料让大家都能看到 等用到的时候方便查找

出0入0汤圆

发表于 2015-1-5 22:00:38 | 显示全部楼层
好贴转的快,谢谢分享!收藏了

出0入0汤圆

发表于 2015-1-5 23:12:26 | 显示全部楼层
子鱼 发表于 2015-1-5 20:47
工作学习两不误 可以晚上的时候玩一玩芯片

是啊,现在手上收集了好几个系统板,可惜没有USBDM,也不便宜:(

出0入13汤圆

发表于 2015-1-9 11:51:50 | 显示全部楼层
好东西,KE02的板子没有USB口,但留着以后弄个KL系列的板子来弄弄

出0入0汤圆

发表于 2015-1-10 21:27:28 | 显示全部楼层
写的很详细的例程 ,学习一下USB编程 !

出0入0汤圆

发表于 2015-1-14 23:15:15 | 显示全部楼层
不错,我也试试

出0入0汤圆

发表于 2015-1-14 23:28:43 | 显示全部楼层
KL25能读U盘,很强大啊

出0入0汤圆

发表于 2015-1-15 00:34:21 | 显示全部楼层
不错,这个看上去挺好玩的

出0入0汤圆

发表于 2015-2-26 15:11:28 | 显示全部楼层
yzb1019 发表于 2015-1-4 09:30
确实是FSL的版主,还有啊,最近也在做模拟U盘

你的模拟U盘做到哪一步了

出0入0汤圆

发表于 2015-3-2 11:18:29 | 显示全部楼层
我用IAR for ARM 6.4的编译,发现编译很多错误,有谁编译通过的求解一下

出0入0汤圆

发表于 2015-3-2 11:20:39 | 显示全部楼层
duhui75 发表于 2015-2-26 15:11
你的模拟U盘做到哪一步了

这个USB例程序,你的能编译通过吗??

出0入0汤圆

发表于 2015-3-3 12:35:25 | 显示全部楼层
lnso 发表于 2015-3-2 11:20
这个USB例程序,你的能编译通过吗??

可以通过的

出0入0汤圆

发表于 2015-3-3 12:45:48 | 显示全部楼层

我的用IAR 6的版本编译提示缺少很多头文件,请问要如何添加呢?

出0入0汤圆

发表于 2015-3-4 10:44:53 | 显示全部楼层
lnso 发表于 2015-3-3 12:45
我的用IAR 6的版本编译提示缺少很多头文件,请问要如何添加呢?

我是用的IAR7.1版本的,你试试这个

出0入0汤圆

发表于 2015-3-4 10:46:43 | 显示全部楼层
如果用这个7.1版本,是不是不用配置任何文件就能编译通过呢?

出0入0汤圆

 楼主| 发表于 2015-3-4 10:50:01 | 显示全部楼层
lnso 发表于 2015-3-4 10:46
如果用这个7.1版本,是不是不用配置任何文件就能编译通过呢?

我用的是7.3版本,可以在官网上下载最新的 然后再进行编译
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-5-18 02:02

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

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