|
求教使用STM32 USB 做一个MSC设备,将一个外部Flash作为存储介质,这个Flash比较特殊,每一页有16字节,一共2175页,只能按页写和擦除,不能写任意地址。我使用的是STM32_USB-FS-Device_Lib的Mass_Storage例程, 1.现在要修改Mass_Memory_Size,Mass_Block_Size不知道应该怎样修改??数据包的大小是 Maximum packet size (64 bytes) ,这个要不要修改?? 2.另外,我对USB协议还不熟,不知道主机是怎样将文件写入存储介质的?从代码看调用的是SCSI_Read10_Cmd和SCSI_Write10_Cmd函数,最终调用MAL_Read和MAL_Write,这个uint16_t MAL_Write(uint8_t lun, uint32_t Memory_Offset, uint32_t *Writebuff, uint16_t Transfer_Length)函数里的Memory_Offset是指哪个地址呢?? |
微信公众号
手机版
主机只是负责将数据通过USB的MSC方式把数据给stm32的MCU,至于MCU接收到数据后,要存在什么介质、怎么存则取决于硬件资源,与USB通讯无关了...
我现在有点搞明白怎么写的了,你说的对,MCU收到数据后要怎么处理与USB通讯无关了。只是插上USB后主机就一直发命令读盘是为什么?
STM32做USB DEVICE ,
这个不知道,没有做过....