littlebot
Published on 2025-04-08 / 0 Visits
0

【源码】基于C语言的PSoC 6 MCU USB设备挂起与恢复系统

项目简介

本项目是一个示例项目,展示了PSoC 6 MCU如何检测USB挂起条件,在检测到后进入低功耗状态,并在USB活动恢复时恢复正常操作。在主机决定挂起USB设备前,PSoC 6 MCU以CPU活动电源模式运行;检测到挂起条件后,设备进入深度睡眠以降低功耗;主机唤醒USB设备时,PSoC 6 MCU会恢复到CPU活动模式。

项目的主要特性和功能

  1. 低功耗管理:检测到USB挂起条件时,PSoC 6 MCU进入深度睡眠模式,降低功耗,满足USB规范对低功耗设备最大挂起电流不超过500 µA的要求。
  2. 状态指示:使用LED指示USB设备状态和PSoC 6 MCU的电源模式,USB活动且MCU处于CPU活动模式时LED亮起,检测到挂起条件且MCU处于深度睡眠时LED熄灭。
  3. 多硬件支持:支持多种PSoC 6相关的开发套件,如CY8CPROTO - 062 - 4343W、CY8CKIT - 062 - WiFi - BT等。
  4. 多工具链支持:支持GNU Arm嵌入式编译器、Arm编译器、IAR C/C++编译器等工具链。

安装使用步骤

前提条件

  • 安装ModusToolbox软件v2.2或更高版本(建议使用v2.3)。
  • 确保板级支持包(BSP)的最低版本为2.0.0。
  • 若没有终端模拟器,安装Tera Term。

创建项目

可通过以下任意一种方式创建并打开项目: - Eclipse IDE for ModusToolbox软件:点击“New Application”,选择支持的开发套件和示例应用,可按需修改应用名称和根路径,最后点击“Create”完成创建。 - 命令行界面(CLI):使用“project - creator - cli”工具,指定--board - id--app - id等参数来创建项目。 - 第三方IDE:可使用独立的Project Creator工具或命令行界面创建项目,再导入到支持的IDE中。

操作步骤

  1. 若使用PSoC 64“Secure”MCU套件,需先按照“Secure Boot”SDK用户指南的说明对设备进行密钥和策略配置。
  2. 通过KitProg3 USB连接器,使用USB电缆将开发板连接到PC。
  3. 打开终端程序,选择KitProg3 COM端口,设置串口参数为8N1和115200波特率。
  4. 使用以下任意一种方式对开发板进行编程:
    • Eclipse IDE for ModusToolbox软件:在Project Explorer中选择应用项目,在Quick Panel中点击“ Program (KitProg3_MiniProg4)”。
    • CLI:在终端中执行make program命令,可通过TARGETTOOLCHAIN参数指定目标板和工具链。
  5. 将另一根USB电缆(或复用编程用的电缆)连接到USB设备连接器。
  6. 在PC上,验证新的USB设备是否枚举为虚拟COM端口。
  7. 运行终端模拟器,连接到虚拟COM端口,观察终端中周期性打印的“USB is active”消息以及开发板上LED亮起。
  8. 在Windows PC上,将PC置于睡眠模式,使USB流量停止,PSoC 6 MCU进入挂起模式,LED熄灭。注意,此时开发板需通过KitProg3连接器连接到其他PC或电源以保持供电。
  9. 使用鼠标或键盘唤醒PC,PSoC 6 MCU恢复并通过USB恢复通信,LED再次亮起。
  10. PC唤醒后,可按步骤6观察与USBFS设备的通信情况。

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】