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.

[参考译文] TUSB422:带MSP432P401R的TUSB422 EVM

Guru**** 2466550 points
Other Parts Discussed in Thread: TUSB422, MSP432WARE

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

https://e2e.ti.com/support/interface-group/interface/f/interface-forum/640417/tusb422-tusb422-evm-with-msp432p401r

部件号:TUSB422
主题中讨论的其他部件:MSP432P401RMSP432WARE

您好,

我有TUSB422EVM和MSP432P401R启动板,我想在启动板上启动此EVM的示例代码。

首先,我尝试将示例代码导入CCS并启动,但没有成功。  在重置中断后调用的函数SystemInit中的tcpm_hal.c出现问题。 当尝试初始化晶体所需的端口J引脚时,CPU进入Hardfault IRQ。

否则,我将使用IAR打开项目。 并获得相同的结果。  

获得HARDFAULT的函数:

void gPIO_setAsPeripheralModuleFunctionInputPin (uint_fast8_t selectedPort,
       uint_fast16_t selectedPins,uint_fast8_t模式)

   UINT32_t baseAddress = gPIO_PORT_TO_BASE [selectedPort];

   HWREG16 (baseAddress + OFS_LIB_PADIR)&=~selectedPins;//   CPU崩溃。
   开关(模式)
   {
   案例gPIO_PRIMARY_MODULE_FUNCTION:
       HWREG16 (baseAddress + OFS_LIB_PASSEL0)|= selectedPins;
       HWREG16 (baseAddress + OFS_LIB_PASSEL1)&=~选择引脚;
       中断;
   案例GPIO辅助模块功能:
       HWREG16 (baseAddress + OFS_LIB_PASSEL0)&=~选择引脚;
       HWREG16 (baseAddress + OFS_LIB_PASSEL1)||所选引脚;
       中断;
   案例gPIO_Tertiary_module_function:
       HWREG16 (baseAddress + OFS_LIB_PASSEL0)|= selectedPins;
       HWREG16 (baseAddress + OFS_LIB_PASSEL1)||所选引脚;
       中断;
   }
}

我做错了什么? 请帮助。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我已经从其他项目插入了标准systeminit,并且从main函数调用tcpm_hal systeminit,现在代码已启动。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    很好。 看起来您已使其发挥作用。

    如果您有任何其他问题,请告知我们。

    此致,
    豪尔赫
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    现在,我遇到了I2C接口的问题。 我在I2C引脚上看不到任何信号。 我已检查CPU频率,一切正常(16MHz)。 否则,SMBus初始化函数不会出现任何错误,但读写函数返回超时。 TUSB422具有VDD上的3V3,以及与MSP432物理连接的SCL SDA。
    哪里有问题?
    谢谢。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好Mihail:
     
    您是否可以 提供要查看的示意图?
    请确认I2C线路上有上拉电阻器吗?

    此致,
    豪尔赫

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

    您好,我已经解决了问题。 我找到了TUSB422EVM的原理图。 I2C线路上的上拉连接到5V电源,而我使用的是提供IC。

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

    米哈伊尔

    该功能是MSP432Ware库的一部分,因此我不确定 它为什么会失败。  您正在使用哪个IAR IDE?   我的IAR用于ARM v 7.60 1,它可以与“app/DRP/IAR/PD_DRP_MSP432P401.eww”中的项目配合使用。

    对于CCS,"app/DRP/CC_MSP432"文件夹中有一个项目,您应该能够使用。  使用 时是否也存在问题?   我正在使用CCS 7.1 Tm0

    此致,

    Brian

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

    您好,Brian Quach,

    我正在使用IAR 7.50。 如果您要使用SystemInit功能,MSP432Ware lib (来自文件system_msp432p401x.c)中的标准SystemInit工作正常。

    但在TI中,TUSB422EVM的官方示例代码正在使用其他SystemInit函数(位于tcpm_hal.c中),该函数应将CPU配置为从16MHz的外部晶体(它安装在MSP432启动板上)运行。

    仅当从MSP432Ware库调用Standart SystemInit后,它才工作正常。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好,Mihail:
    这很奇怪,因为我在TUSB422分发包中找不到任何“system_msp432p401x.c”文件。 我只能使用tcpm_hal.c。 我目前正在将MSP432与422 EVM配合使用,IAR上没有任何问题,但在下一个代码发布之前,我将再次重新检查它。
    此致,
    Brian
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    所有正确的TUSB422软件包均没有system_msp432p401x.c. 我从MSP432Ware库中获取了它。

    需要重新检查tcpm_hal.c SystemInit(),其中是晶体的引脚配置。

    谢谢你。