Author: LisaZ_26 Version: **
VBUS_P_CTRL can be configured to assert HIGH (where HIGH value = VBUS_IN_DISCHARGE voltage value) provided the VBUS_IN_DISCHARGE pin is powered. Use the following API functions in CCGx Power SDK for VBUS_P_CTRL drive logic:
HIGH: pd_internal_pfet_off(0, false);
LOW: pd_internal_pfet_on(0, false);
To configure VBUS_P_CTRL pin as GPIO, use the following API functions in the CCGx Power SDK for VBUS_P_CTRL drive logic:
High-Z: pd_internal_cfet_off(0, false);
LOW: pd_internal_cfet_on(0, false);
Design considerations for VBUS_IN_DISCHARGE PIN if using VBUS_P_CTRL as GPIO for Type-A VBUS enable and disable
In general, the CCGx Power SDK can be classified to two types – power source only and dual role power. The following example firmware projects are CCG3PA applications as a power source only:
On the other hand, the example firmware project CYPD3171-24LQXQ_pb is for CCG3PA applications for dual role power.
For power source only projects, the only design consideration is that it is a must to have VBUS_IN_DISCHARGE powered by a Type-A VBUS source.
For dual role power based applications, following items need to be done in hardware and firmware design:
- In hardware design, swap VBUS_IN_DISCHARGE and VBUS_C_DISCHARGE and ensure that VBUS_C_DISCHARGE is wired to Type-C VBUS node directly. Similarly, wire VBUS_IN_DISCHARGE directly to power source of Type-A VBUS.
- In the firmware project mentioned above, remove VBUS_IN_DISCHARGE monitor functions from Type-C functions and replace them with VBUS_C_DISCHARGE monitor functions.