在线时间36 小时
UID423505
注册时间2013-3-27
NXP金币0
该用户从未签到
高级会员

- 积分
- 651
- 最后登录
- 2020-9-4
|

楼主 |
发表于 2014-5-21 15:25:55
|
显示全部楼层
回复:在mqx操作系统下,用k60平台读写u盘,在哪个程序上修改最好?
回复第 4 楼 于2014-05-15 16:56:07发表:
你好,楼主!
如果你只想实现U盘的读写操作的话,建议楼主可以参考~\Freescale\Freescale USB Stack v4.1.1\Source\Host\examples\msd_mfs_generic\iar_ew\kinetis_k60例程。
楼主:你好!
我运行上面的例程,插上U盘后,下面程序在mass_device.dev_state = USB_DEVICE_IDLE;
进入不了USB_DEVICE_ATTACHED,底层挑U盘吗? 还是有什么限制?
楼主版解答一下!!
void Main_Task ( void )
{
/* Body */
USB_STATUS status = USB_OK;
static uint_8 fat_task_flag = 0;
/*----------------------------------------------------**
** Infinite loop, waiting for events requiring action **
**----------------------------------------------------*/
switch ( mass_device.dev_state )
{
case USB_DEVICE_IDLE:
break;
case USB_DEVICE_ATTACHED:
printf( "Mass Storage Device Attached\n\r" );
mass_device.dev_state = USB_DEVICE_SET_INTERFACE_STARTED;
status = _usb_hostdev_select_interface(mass_device.dev_handle,
mass_device.intf_handle, (pointer)&mass_device.class_intf);
/* Can run fat task */
fat_task_flag = 1;
break;
case USB_DEVICE_SET_INTERFACE_STARTED:
break;
case USB_DEVICE_INTERFACED:
if(1 == fat_task_flag)
{
fat_demo();
}
/* Disable flag to run FAT task */
fat_task_flag = 0;
break;
case USB_DEVICE_DETACHED:
printf ( "\n\rMass Storage Device Detached\n\r" );
mass_device.dev_state = USB_DEVICE_IDLE;
break;
case USB_DEVICE_OTHER:
break;
default:
printf ( "Unknown Mass Storage Device State = %d\n\r",\
mass_device.dev_state );
break;
} /* Endswitch */
} /* Endbody */
|
|