Other Parts Discussed in Thread: C2000WARE
主题中讨论的其他器件:C2000WARE
大家好、
您能帮助澄清以下 TRM 中的信息吗? 我发现了一些令人困惑的信息。

TRM 提到了"更少引脚数的器 件"、检查 TMS320F28384X 器件、我只能找到176引脚和337引脚封装、这使得176引脚数更少的器件"。 但是、有关无界 GPIO 的描述与之相矛盾(在上面突出显示)。 请您澄清一下吗?
谢谢。
此致、
Marvin
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.
Other Parts Discussed in Thread: C2000WARE
大家好、
您能帮助澄清以下 TRM 中的信息吗? 我发现了一些令人困惑的信息。

TRM 提到了"更少引脚数的器 件"、检查 TMS320F28384X 器件、我只能找到176引脚和337引脚封装、这使得176引脚数更少的器件"。 但是、有关无界 GPIO 的描述与之相矛盾(在上面突出显示)。 请您澄清一下吗?
谢谢。
此致、
Marvin
Marvin、
我查看了引导 ROM 源代码。 此时会出现"在176 PTP 封装的器件上、必须启用任何内部未键合 GPIO 的上拉电阻以防止输入悬空"错误、需要将其移除。 请查看 C:\ti\c2000\C2000Ware_4_02_00\libraries\boot_rom\f2838x\revA\rom_sources\CPU1\F2838x_rom\bootrom\source 中的 cpu1brom_system_boot.c。 引导 ROM 确实启用了未键合引脚上的上拉电阻。
请参阅以下内容:
//
// CPU1BROM_enableUnbondedGpioPullups - Enable unbonded IO pullups for
// device packages
//
void CPU1BROM_enableUnbondedGpioPullups(void)
{
//
// Get package pin count
//
uint32_t pin_count = (uint32_t)((uint32_t)(HWREAD_TI_OTP_PARTID_L & 0x00000700UL) >> 8U);
//
// 6 = 176 pin package
// 7 = 337 pin package
//
if(pin_count == 6U)
{
CPU1BROM_enableUnbondedPullupsOn176Pin();
}
else
{
//
// 337 pin package - No action
//
}
}
//
// CPU1BROM_enableUnbondedPullupsOn176Pin - Enable pullups for the unbonded
// GPIOs on the 176 package.
//
// These below GPIOs are available on the package.
// GPIOs Grp Bits
// 95 C 31
// 96-98 D 2:0
// 100-127 D 31:4
// 128-132 E 4:0
// 134-159 E 31:6
// 160-168 F 8:0
//
static inline void CPU1BROM_enableUnbondedPullupsOn176Pin(void)
{
//
// Write 0 to unbonded pin in order to pull-up.
// if an available pin is already pulled-up, then the pin stays pulled-up.
// Logical AND with 0 does both of these.
//
EALLOW;
HWREG(GPIOCTRL_BASE + GPIO_O_GPCPUD) &= 0x7FFFFFFFU; //95
HWREG(GPIOCTRL_BASE + GPIO_O_GPDPUD) &= 0x00000008U; //96-98,100-127
HWREG(GPIOCTRL_BASE + GPIO_O_GPEPUD) &= 0x00000020U; //128-132,134-159
HWREG(GPIOCTRL_BASE + GPIO_O_GPFPUD) &= 0xFFFFFE00U; //160-168
EDIS;
}