【分享】USB_DEV_MSC移植到BIOS详细步骤 - TMS320C6748 - 嵌入式开发者社区 - 51ele.net
设为首页收藏本站

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 21973|回复: 29

【分享】USB_DEV_MSC移植到BIOS详细步骤

[复制链接]

24

主题

125

帖子

1466

积分

金牌会员

Rank: 6Rank: 6

积分
1466
发表于 2015-6-2 15:09:16 | 显示全部楼层 |阅读模式
1.新建BIOS工程,命名为USB_DEV_MSC_sysbios
2.把原USB_DEV_MSC工程中的main.c文件外的c文件和h文件复制到
USB_DEV_MSC_sysbios工程中。

本帖子中包含更多资源

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

x
回复

使用道具 举报

24

主题

125

帖子

1466

积分

金牌会员

Rank: 6Rank: 6

积分
1466
 楼主| 发表于 2015-6-2 15:31:40 | 显示全部楼层
希望缄默 发表于 2015-6-2 15:29
谢谢分享~
不过我觉得单单这些步骤应该还不够吧

不知道怎么在帖子中间插入图片,所以只能分步上传
回复 支持 1 反对 0

使用道具 举报

24

主题

125

帖子

1466

积分

金牌会员

Rank: 6Rank: 6

积分
1466
 楼主| 发表于 2015-6-2 15:12:13 | 显示全部楼层
本帖最后由 lushidegreen 于 2015-6-2 15:15 编辑

C:\Documents and Settings\Administrator\桌面\2.jpg3.复制原USB_DEV_MSC工程的main.c文件中除main函数外的所有代码,粘贴到新工程的main.c文件中#include <ti/sysbios/knl/Task.h>语句后面

本帖子中包含更多资源

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

x
回复 支持 反对

使用道具 举报

24

主题

125

帖子

1466

积分

金牌会员

Rank: 6Rank: 6

积分
1466
 楼主| 发表于 2015-6-2 15:16:32 | 显示全部楼层
4.将原USB_DEV_MSC工程的main函数中USBDMSCInit()函数之前的代码复制,粘贴到新工程main函数System_printf("enter main()\n");语句后面

本帖子中包含更多资源

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

x
回复 支持 反对

使用道具 举报

24

主题

125

帖子

1466

积分

金牌会员

Rank: 6Rank: 6

积分
1466
 楼主| 发表于 2015-6-2 15:17:38 | 显示全部楼层
本帖最后由 lushidegreen 于 2015-6-2 15:57 编辑

5.将原USB_DEV_MSC工程的main函数中USBDMSCInit()函数及之后的代码复制,粘贴到新工程main函数taskFxn()任务函数中,替代其原来的内容。
6. 添加平台配置,如下图

本帖子中包含更多资源

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

x
回复 支持 反对

使用道具 举报

24

主题

125

帖子

1466

积分

金牌会员

Rank: 6Rank: 6

积分
1466
 楼主| 发表于 2015-6-2 15:19:42 | 显示全部楼层
7.参考原USB_DEV_MSC工程添加包含路径

本帖子中包含更多资源

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

x
回复 支持 反对

使用道具 举报

24

主题

125

帖子

1466

积分

金牌会员

Rank: 6Rank: 6

积分
1466
 楼主| 发表于 2015-6-2 15:21:40 | 显示全部楼层
8. 参考原USB_DEV_MSC工程添加库文件

本帖子中包含更多资源

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

x
回复 支持 反对

使用道具 举报

24

主题

125

帖子

1466

积分

金牌会员

Rank: 6Rank: 6

积分
1466
 楼主| 发表于 2015-6-2 15:24:53 | 显示全部楼层
本帖最后由 lushidegreen 于 2015-6-2 15:27 编辑

9.编译工程,发现一个错误,27个警告。
错误是,epInfo没有定义。该变量是在usb_msc_structs.c中定义的,
在usb_msc_structs.c中搜索找到其位置,发现需要定义一个宏DMA_MODE才能使用该变量。
到工程选择中设置即可
重新编译,只剩下警告,这27个警告是一样的。
在上述界面中添加一个宏定义ewarm即可。重新编译,没有错误和警告了。

本帖子中包含更多资源

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

x
回复 支持 反对

使用道具 举报

24

主题

125

帖子

1466

积分

金牌会员

Rank: 6Rank: 6

积分
1466
 楼主| 发表于 2015-6-2 15:28:17 | 显示全部楼层
10.删除DSP中断初始化函数InterruptInit(),因为BIOS启动后会对DSP中断进行初始化。
11.注册USB中断函数
USBInterruptInit()的功能是将USB中断映射到硬件中断INT4上,中断ID为SYS_INT_USB0(19),中断函数USB0DeviceIntHandler()。
在BIOS中,到cfg文件中进行配置,如下图,配置完成后,将USBInterruptInit()函数删除。

本帖子中包含更多资源

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

x
回复 支持 反对

使用道具 举报

15

主题

1357

帖子

4579

积分

创龙

Rank: 8Rank: 8

积分
4579
发表于 2015-6-2 15:29:11 | 显示全部楼层
谢谢分享~
不过我觉得单单这些步骤应该还不够吧
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|嵌入式开发者社区 ( 粤ICP备15055271号

GMT+8, 2024-3-19 13:34 , Processed in 0.045662 second(s), 26 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

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