如何在 LPC 54018 中通过 USB 通信写入和读取 Pendriver。
我使用的是 USB1 主机?
微控制器必须在 USB 主机模式下工作,因为笔式驱动器是 USB 大容量存储类 (MSC) 设备。
LPC54018 支持USB 2.0 全速主机,足以满足标准笔式驱动器的需求。
实施概述:
硬件要求
USB Type-A 接口
笔式硬盘的外部5V VBUS 电源
正确的 D+ 和 D- 连接
建议使用 VBUS 检测
USB 主机堆栈
使用恩智浦 MCUXpresso SDK
启用 USB 主机 + MSC 类驱动程序
使用FATFS处理文件系统
列举
插入时,USB 主机会枚举笔式驱动器
该设备被识别为大容量存储设备
大容量传输用于数据传输
文件系统访问
大多数笔式硬盘的格式为FAT32
挂载后,可执行标准文件操作
使用 f_open()、f_read() 和 f_write() 等应用程序接口
用例示例
这种 USB 存储访问通常用于嵌入式系统,以存储日志、媒体文件或缓存数据。
例如,嵌入式媒体播放器可从以下平台流式传输内容 HDOBOX等平台流式传输内容的嵌入式媒体播放器,就可以使用这种方法将配置文件、字幕或播放日志存储在 USB 闪存盘上。
重要说明
默认情况下不支持 exFAT 和 NTFS
USB 主机 + FATFS 需要足够的内存
安装前在设备连接后添加延迟
观影应用程序 HDO Box 电影 我使用这种方法进行管理,效果很好、
Pendriver 中的 USB 通信相当难用。
你好,@Arularasan、
为了再次确认,能否请您检查一下 USB1 端口是否正常工作?你可以尝试像使用其中一个 USB 示例的设备一样使用它。
另外,能否请您检查一下您的硬盘?将磁盘驱动器输入计算机时,计算机会检测到它吗?你能不能试试用另一个 pendrive 或 USB 设备的 USB 主机示例?
最后,能否请您用挂盘测试另一个 USB 主机示例?使用以下示例进行尝试可能会有所帮助:usb_host_cdc和/或usb_host_msd_command。
致以最诚挚的问候,劳尔。
你需要一个 JTAG 调试器来上市和调试在恩智浦 LPC54018 板上运行的代码。FreeRTOS 使用 OM40006 物联网模块进行了测试。有关支持的调试器的更多信息,请参阅 《恩智浦 LPC54018 物联网模块用户手册 》,该手册可从以下网站获取 OM40007 LPC54018 物联网模块 产品页面。
@RaRo感谢您的回复。
SDK 示例代码下的 USB HOST 演示 ("host_msd_fatfs_bm") 我已下载,但无法使用!
我 想通过 USB 通讯读写笔式驱动器,我使用的是 USB1。
请帮助我@RaRo
你好,@Arularasan、
您试过 host_msd_fatfs_bm 示例吗?该示例似乎使用了 f_write() 和 f_read(),它们用于通过 FATFS 和 USB 进行写入和读取。
您能否查看以下参考手册,了解有关 USB + FATFS 应用程序的更多信息?
致以最诚挚的问候,劳尔。
@RaRo是的,我已经在MCUXpresso IDE的帮助下完成了 lpc 54018 中的所有程序。
MCUXpresso IDE 生成的示例代码。没有创建读写功能,请帮助我通过 USB 通信在 lpc 54018(我使用的是 USB1 主机)中读写 Pendriver 的步骤。
你好,@Arularasan、
能否请您查看以下有类似问题的主题?已解决:我想使用 USB 连接从笔读取文件...- 恩智浦社区
此外,您还可以尝试使用 LPC54018 SDK 中的 USB 示例,如果使用的是 MCUXpresso IDE,请单击 "导入 SDK 示例... "并搜索 USB。您可以通过集成开发环境或以下链接下载 SDK:MCUXpresso SDK Builder。
[MCUXpresso IDE 快速启动面板和 SDK 导入向导]
可能需要定义您要使用的 USB:USB1 或 USB0。
致以最诚挚的问候,劳尔。