This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

F29P329SM-Q1: Inconsistency between datasheet and SysConfig

Part Number: F29P329SM-Q1
Other Parts Discussed in Thread: SYSCONFIG

Hello,

For F29P329SM2, the F29 datasheet (sprsp93) rev C states in footnote #8 of table 4-1 that "EPWM module serialization for F29P32x GPNs will be EPWM1,2,3,4,5,7,8 and 9, with 6 skipped." A maximum of 8 ePWMs modules may be instantiated.

However, SysConfig 1.27.0+4565 allows one to instantiate 9 ePWM modules, including ePWM #6. See attached SysCfg file. This seems to be an error. Could you please confirm?


Best regards,
François.

/**
 * These arguments were used when this file was generated. They will be automatically applied on subsequent loads
 * via the GUI or CLI. Run CLI with '--help' for additional information on how to override these arguments.
 * @cliArgs --device "F29H85x" --part "F29P329SM2QPZS" --package "100PZS"
 * @v2CliArgs --device "F29P329SM-Q1" --package "100PZS" --variant "TMS320F29P329SM2-Q"
 * @versions {"tool":"1.27.0+4565"}
 */

/**
 * These are the peripherals and settings in this configuration
 */
const EPWM1   = scripting.addPeripheral("EPWM");
EPWM1.$name   = "MyEPWM1";
const EPWM2   = scripting.addPeripheral("EPWM");
EPWM2.$name   = "MyEPWM2";
EPWM2.$assign = "EPWM6";
const EPWM3   = scripting.addPeripheral("EPWM");
EPWM3.$name   = "MyEPWM3";
const EPWM4   = scripting.addPeripheral("EPWM");
EPWM4.$name   = "MyEPWM4";
const EPWM5   = scripting.addPeripheral("EPWM");
EPWM5.$name   = "MyEPWM5";
const EPWM6   = scripting.addPeripheral("EPWM");
EPWM6.$name   = "MyEPWM6";
const EPWM7   = scripting.addPeripheral("EPWM");
EPWM7.$name   = "MyEPWM7";
const EPWM8   = scripting.addPeripheral("EPWM");
EPWM8.$name   = "MyEPWM8";
const EPWM9   = scripting.addPeripheral("EPWM");
EPWM9.$name   = "MyEPWM9";

/**
 * Pinmux solution for unlocked pins/peripherals. This ensures that minor changes to the automatic solver in a future
 * version of the tool will not impact the pinmux you originally saw.  These lines can be completely deleted in order to
 * re-solve from scratch.
 */
EPWM1.$suggestSolution            = "EPWM9";
EPWM1["EPWM#_A"].$suggestSolution = "GPIO16";
EPWM1["EPWM#_B"].$suggestSolution = "GPIO17";
EPWM2["EPWM#_A"].$suggestSolution = "GPIO220, X1";
EPWM2["EPWM#_B"].$suggestSolution = "GPIO221, X2";
EPWM3.$suggestSolution            = "EPWM8";
EPWM3["EPWM#_A"].$suggestSolution = "GPIO10";
EPWM3["EPWM#_B"].$suggestSolution = "B8, GPIO232";
EPWM4.$suggestSolution            = "EPWM7";
EPWM4["EPWM#_A"].$suggestSolution = "GPIO12";
EPWM4["EPWM#_B"].$suggestSolution = "GPIO11";
EPWM5.$suggestSolution            = "EPWM5";
EPWM5["EPWM#_A"].$suggestSolution = "GPIO59";
EPWM5["EPWM#_B"].$suggestSolution = "GPIO9";
EPWM6.$suggestSolution            = "EPWM4";
EPWM6["EPWM#_A"].$suggestSolution = "GPIO6";
EPWM6["EPWM#_B"].$suggestSolution = "GPIO8";
EPWM7.$suggestSolution            = "EPWM3";
EPWM7["EPWM#_A"].$suggestSolution = "GPIO4";
EPWM7["EPWM#_B"].$suggestSolution = "GPIO5";
EPWM8.$suggestSolution            = "EPWM2";
EPWM8["EPWM#_A"].$suggestSolution = "GPIO2";
EPWM8["EPWM#_B"].$suggestSolution = "GPIO25";
EPWM9.$suggestSolution            = "EPWM1";
EPWM9["EPWM#_A"].$suggestSolution = "GPIO0";
EPWM9["EPWM#_B"].$suggestSolution = "GPIO1";