项目简介
本项目是一个代码示例,主要展示如何把EZ - PD™ PMG1 MCU的USB模块配置成大容量存储类(MSC)设备,同时在SRAM内存中模拟文件系统。固件借助内部内存模拟文件系统,存在一个对USB主机可见的文件,用户按下开发套件按钮时,文件内容会改变。
项目的主要特性和功能
- USB MSC设备模拟:成功将EZ - PD™ PMG1 MCU配置为USB MSC设备,能被PC等主机识别。
- SRAM文件系统模拟:在MCU的SRAM中模拟文件系统,提供可访问的文件。
- 交互性内容更新:用户按开发套件按钮,文件内容会相应改变,增强设备交互性。
- 多工具链支持:支持GNU Arm® Embedded Compiler、Arm® Compiler、IAR C/C++ Compiler等多种工具链。
- 多开发套件适配:适用于EZ - PD™ PMG1 - S2和EZ - PD™ PMG1 - S3等多种开发套件。
安装使用步骤
环境要求
- 安装ModusToolbox™软件 v3.0或更高版本(已在v3.0上测试)。
- 板级支持包(BSP)最低要求版本为3.0.0。
- 编程环境需支持C语言。
- 需使用EZ - PD™ PMG1 - S2 MCU或EZ - PD™ PMG1 - S3 MCU相关部件。
硬件设置
- 用提供的USB电缆,通过KitProg3 USB连接器将开发板连到PC,用于对PMG1 MCU设备编程。
- 用USB Type - C电缆,通过J10连接器将USB Type - C端口连到PC。参考EZ - PD™ PMG1 MCU原型开发套件指南确保开发板配置正确。
- 若启用UART调试打印消息,需进行UART连接,不同版本的PMG1原型开发套件UART引脚连接方式不同,查看套件用户指南确保开发板配置正确。
软件设置
若没有终端模拟器,需安装一个,本文档示例使用Tera Term。当DEBUG_PRINT启用时,用终端模拟器查看UART调试打印消息。
项目创建与使用
在Eclipse IDE for ModusToolbox™软件中
- 点击“Quick Panel”中的“New Application”链接(或用“File” > “New” > “ModusToolbox™ Application”),启动Project Creator工具。
- 在“Project Creator - Choose Board Support Package (BSP)”对话框列表中,选代码示例支持的开发套件,选后示例自动重新配置适配该套件。若后续用不同支持套件,用Library Manager选相应的BSP。
- 在“Project Creator - Select Application”对话框中,勾选选择示例。
- (可选)更改建议的“New Application Name”。
- “Application(s) Root Path”默认是Eclipse工作区,若要把应用程序存其他位置,可更改该值。共享库的应用程序应在同一根路径下。
- 点击“Create”完成应用程序创建过程。更多详细信息,参考Eclipse IDE for ModusToolbox™软件用户指南。
在命令行界面(CLI)中
ModusToolbox™软件提供图形界面工具和命令行工具“project - creator - cli”,位于“{ModusToolbox™软件安装目录}/tools_{版本}/project - creator/”目录下。
在CLI终端或批处理文件、shell脚本中使用该工具,Windows系统用ModusToolbox™软件安装提供的“modus - shell”程序,Linux和macOS系统用任何终端应用程序。
“project - creator - cli”工具参数及说明:
| 参数 | 描述 | 必需/可选 |
| ---- | ---- | ---- |
| --target-dir
| 若不想用默认当前工作目录,可指定应用程序创建目录 | 可选 |
| --user-app-name
| 若想用不同于示例默认名称的应用程序名称,可指定 | 可选 |
示例命令:
project - creator - cli --board - id PMG1 - CY7112 --app - id mtb - example - pmg1 - usbfs - msc - fs - sram --user - app - name MyUsbfsMscFsSram --target - dir "C:/mtb_projects"
若后续用不同支持套件,用Library Manager选相应的BSP。可在终端用make library - manager
命令调用Library Manager图形界面工具,或用Library Manager命令行工具“library - manager - cli”更改BSP。
“library - manager - cli”工具参数及说明:
| 参数 | 描述 | 必需/可选 |
| ---- | ---- | ---- |
| --add-bsp-name
| 应添加到应用程序的BSP名称 | 必需 |
| --set-active-bsp
| 应作为应用程序活动BSP的BSP名称 | 必需 |
| --add-bsp-version
| 若不想用清单中最新版本,可指定要添加到应用程序的BSP版本 | 可选 |
| --add-bsp-location
| 若想把BSP添加到共享路径,可指定BSP的位置(本地/共享) | 可选 |
示例命令:
~/ModusToolbox/tools_3.0/library - manager/library - manager - cli --project "C:/mtb_projects/MyUsbfsMscFsSram" --add - bsp - name PMG1 - CY7112 --add - bsp - version "latest - v3.X" --add - bsp - location "local"
~/ModusToolbox/tools_3.0/library - manager/library - manager - cli --project "C:/mtb_projects/MyUsbfsMscFsSram" --set - active - bsp APP_PMG1 - CY7112
在第三方IDE中
- 用独立的Project Creator工具:
- 从Windows开始菜单或“{ModusToolbox™软件安装目录}/tools_{版本}/project - creator/project - creator.exe”启动Project Creator。
- 在初始的“Choose Board Support Package”屏幕中,选BSP,然后点击“Next”。
- 在“Select Application”屏幕中,从“Target IDE”下拉菜单中选合适的IDE。
- 点击“Create”,按底部面板中打印的说明在相应的IDE中导入或打开导出的项目。
- 用命令行界面(CLI):
- 按“在命令行界面(CLI)”部分说明创建应用程序。
- 用
make <ide>
命令将应用程序导出到支持的IDE。 - 按终端中显示的说明创建或导入应用程序作为IDE项目。更多支持的IDE列表和详细信息,参考ModusToolbox™软件用户指南中的“Exporting to IDEs”部分。
操作步骤
- 确保完成硬件设置部分步骤。
- 确保电源选择跳线(J5)上的跳线短接片置于位置2 - 3,启用编程。
- 用以下方法之一对开发板编程:
- 用Eclipse IDE for ModusToolbox™软件:
- 在Project Explorer中选应用程序项目。
- 在“Quick Panel”中向下滚动,点击“
Program (KitProg3_MiniProg4)”。
- 用CLI:从终端执行
make program
命令,用默认工具链将应用程序构建并编程到默认目标。可在应用程序的Makefile中指定默认工具链,也可手动覆盖该值,例如:make program TOOLCHAIN = GCC_ARM
- 用Eclipse IDE for ModusToolbox™软件:
- 对开发套件编程后,将电源选择跳线(J5)位置改为1 - 2,通过USB PD端口为开发套件供电。
- 将另一根USB电缆(或重用编程用电缆)连到USB连接器(J10)。
- 在PC上,验证操作系统是否识别名为“PMG1 Drive”的新便携式设备。打开“PMG1 Drive”设备,确认文件“LOG.TXT”可读。
- 打开PC上的设备管理器,验证该设备是否被枚举为“USB Mass Storage Device”。
- 打开“LOG.TXT”文件读取内容,内容应为:
PMG1 MSC Device Content:
- 关闭“LOG.TXT”文件。
- 按下按钮五次,模拟设备弹出并重新插入,强制操作系统重新读取大容量存储中的更改。
- 再次打开“LOG.TXT”文件,检查文件是否添加新内容:
```
PMG1 MSC Device Content:
Button press 1 time(s) Button press 2 time(s) Button press 3 time(s) Button press 4 time(s) Button press 5 time(s) ```
- 或者,按下按钮“n”次。断开并重新连接连到USB PD端口的USB电缆,重新枚举设备。再次打开“LOG.TXT”文件,检查文件是否追加“n”行内容(不超磁盘大小)。
调试
可对示例调试以逐步执行代码。在IDE中,用“Quick Panel”中的“
下载地址
点击下载 【提取码: 4003】