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.

[参考译文] CCS/MSP432P401R:为什么在输入 GPIO 时功耗会变大?

Guru**** 2618835 points

Other Parts Discussed in Thread: ADS1292

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/676493/ccs-msp432p401r-why-when-gpio-is-input-power-consumption-becomes-larger

器件型号:MSP432P401R

工具/软件:Code Composer Studio

我使用 MSP432的 GPIO p4.4直接连接到另一个芯片(ADS1292)的引脚。

MSP432 P4.4 设置为输入。 ADS1292引脚是输出引脚。  

我的代码如下:

int main (void)
{

MAP_WDT_A_HOLDTimer();


MAP_GPIO_setAsOutputPin (GPIO_PORT_PA、PIN_ALL16);
MAP_GPIO_setAsOutputPin (GPIO_PORT_PB、PIN_ALL16);
MAP_GPIO_setAsOutputPin (GPIO_PORT_PC、PIN_ALL16);
MAP_GPIO_setAsOutputPin (GPIO_PORT_PD、PIN_ALL16);
MAP_GPIO_setAsOutputPin (GPIO_PORT_PE、PIN_ALL16);
MAP_GPIO_setAsOutputPin (GPIO_PORT_PJ、PIN_ALL16);
MAP_GPIO_setOutputLowOnPin (GPIO_PORT_PA、PIN_ALL16);
MAP_GPIO_setOutputLowOnPin (GPIO_PORT_PB、PIN_ALL16);
MAP_GPIO_setOutputLowOnPin (GPIO_PORT_PC、PIN_ALL16);
MAP_GPIO_setOutputLowOnPin (GPIO_PORT_PD、PIN_ALL16);
MAP_GPIO_setOutputLowOnPin (GPIO_PORT_PE、PIN_ALL16);
MAP_GPIO_setOutputLowOnPin (GPIO_PORT_PJ、PIN_ALL16); 

          MAP_PCM_setPowerMode (PCM_LDO_MODE);
          MAP_PCM_setPowerState (PCM_AM_LDO_VCORE1);

          MAP_PCM_setCoreVoltageLevel (PCM_VCORE1);
          MAP_FlashCtl_setWaitState (FLASH_BANK0、1);
          MAP_FlashCtl_setWaitState (FLASH_BANK1、1);

           //为 DCO 频率计算启用 FPU
          map_fpu_enableModule();

          //将 DCO 频率设置为标准48MHz
          //初始化时钟系统
          MAP_CS_setDCOCenteredFrequency (CS_DCO_FREQUENCY 48);

          for (indConfgClk = 0;indConfgClk < 1000;indConfgClk ++);

           MAP_CS_initClockSignal (CS_MCLK、CS_DCOCLK_SELECT、CS_CLOCK _DIVIDER_1);// MCLK = 48M
          MAP_CS_initClockSignal (CS_SMCLK、CS_DCOCLK_SELECT、CS_Clock_divider _1);// SMCLK = 48M

P4->DIR &=~BIT4;
P4->SEL0 &=~BIT4;
P4->SEL1 &=~BIT4;

MAP_PSS_disableHighSide();


MAP_PCM_enableRudeMode();

while (1)
{

MAP_PCM_gotoLPM3 ();
}
}

我使用电流表测量 MSP432在睡眠模式下的功耗。  

当 ADS 输出引脚输出为高电平时、功耗非常大、达到每小时6mA。  

,将 P4.4设置为输出引脚、则工作电流非常小、仅为几微安。

您能否告诉我、当 GPIO 设置为输入时、当外部输入为高电平时、工作电流为何如此大?

非常感谢!

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Alex、您好!

    我将请对此主题有更多了解的同事回答此帖子。 由于今天是 TI 的假日、因此可能需要几天的时间。

    谢谢、
    SAI
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Sai:
    非常感谢。 我将耐心等待,并祝你度过一个愉快的假期!
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!
    当 ADC 输出高电平且 P4.4配置为输入时、P4.4上的电压是多少?

    此致、
    Chris
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    发现问题。 我在电路板上遇到问题。 谢谢你。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    尊敬的 Chris:

    感谢你的答复。 我发现了一个问题。 因为电路板上的电子器件之一已损坏。再次感谢!