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.

[参考译文] TMS320F28P550SJ:SysConfig Mux_Init

Guru**** 1456330 points
Other Parts Discussed in Thread: SYSCONFIG, C2000WARE
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1363862/tms320f28p550sj-sysconfig-pinmux_init

器件型号:TMS320F28P550SJ
主题中讨论的其他器件:SysConfigC2000WARE

您好!

我正在尝试在"adc_ex2_soc_ePWM"示例中使用 GPIO28和 GPIO29引脚作为 SCI_RX 和 SCI_TX 来包含 SCI 通信。

但在 Board_init ()函数中调用的 PinMux_init ()函数会:
GPIO_setAnalogMode (28、GPIO_ANALOG_ENABLED);
在调用 Board_init()函数后,我做:

Board_init();
GPIO_setPinConfig (DEVICE_GPIO_CFG_SCIRXDA);
GPIO_setDirection 模式(DEVICE_GPIO_PIN_SCIRXDA、GPIO_DIR_MODE_IN);
GPIO_setPadConfig (DEVICE_GPIO_PIN_SCIRXDA、GPIO_PIN_TYPE_STD);
GPIO_setQualificationMode (DEVICE_GPIO_PIN_SCIRXDA、GPIO_QUAL_ASYNC);

GPIO_setPinConfig (DEVICE_GPIO_CFG_SCITXDA);
GPIO_setDirection 模式(DEVICE_GPIO_PIN_SCITXDA、GPIO_DIR_MODE_OUT);
GPIO_setPadConfig (DEVICE_GPIO_PIN_SCITXDA、GPIO_PIN_TYPE_STD);
GPIO_setQualificationMode (DEVICE_GPIO_PIN_SCITXDA、GPIO_QUAL_ASYNC);

我注意到串行接收不工作、这是因为 " GPIO_setAnalogMode (28、GPIO_ANALOG_ENABLED)"   PinMux_init ()函数内调用的配置。

为什么作为模拟的 GPIO28配置不会被作为 SCI_RX 的 GPIO28引脚配置覆盖?

如何使 SysConfig 不将 GPIO28引脚配置为模拟?

谢谢。

 阿里

  

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

    尊敬的 Ari:

    您可以发送.syscfg 文件吗? 我假设您使用的是 TI.com 提供的 C2000Ware 5.02版。 当我自己测试此功能时、GPIO28配置为禁用模拟模式:

    谢谢!

    卢克

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

    Luke、您好!

    我不知道如何上传.syscfg 文件。 它与"adc_ex2_soc_epwm"示例相同、仅包括能够切换到内部振荡器的"器件支持"。 电路板没有外部晶体。 是否有办法配置.syscfg 文件以选择要用作模拟的引脚? 我不明白为什么一旦配置为模拟、我就无法使引脚成为 SCI 等引脚?

    阿里

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

    尊敬的 Ari:

    在 E2E 中编写消息时、您可以使用"Insert"选项卡上传.syscfg 文件。 我对您要尝试做的事情有点困惑。 您希望 GPIO28和 GPIO29是模拟引脚还是数字引脚? 要进行 SCI 通信、需要将这些引脚配置为数字。

    要在 SysConfig 中将引脚指定为模拟、您需要通过按 ADC GUI 顶部的"Add"按钮在 SysConfig GUI 中添加一个 ADC 实例。

    谢谢!

    卢克

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

    Luke、您好!

     插入:"图像/视频/文件"?  是否应该手动输入文件路径?

     我从"adc_ex2_soc_epwm" 示例启动了该项目、该示例使用 SysConfig 配置 ADC。 SysConfig 使用将 GPIO28配置为模拟:  

      GPIO_setAnalogMode (28、GPIO_ANALOG_ENABLED);

     我尝试使用将 GPIO28引脚配置为 SCI_RX:

    Board_init();   

    GPIO_setAnalogMode (28U、GPIO_ANALOG_DISABLED);
    GPIO_setPinConfig (GPIO_28_SCIA_RX);
    GPIO_setDirectionMode (28U、GPIO_DIR_MODE_IN);
    GPIO_setPadConfig (28U、GPIO_PIN_TYPE_STD);
    GPIO_setQualificationMode (28U、GPIO_QUAL_ASYNC);

    我 使用以下代码发现、我需要先将 GPOIO28转换为数字、然后再将其配置为 SCIA_RX:

    GPIO_setAnalogMode (28U、GPIO_ANALOG_DISABLED);

    现在、唯一的问题仍然是如何配置 SysConfig、以便 GPIO28不配置为模拟?

    Ari.

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

    尊敬的 Ari:

    如果要将 GPIO28配置为数字 SCIA_RX、则应将 ADC 移至另一个引脚。 Board_init()之外不需要额外的代码。 在将 ADC 移至另一个引脚后该问题是否仍然存在?

    谢谢!

    卢克

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

    Luke、您好!

     如果您导入 adc_ex2_soc_ePWM 示例并对其进行编译、您会注意到 SysConfig 会初始化所有可以模拟为模拟的引脚。 在 Board_Init ()中调用的 PinMux_init ()函数中。 我不知道如何配置 SysConfig、以便能够选择我想要模拟的引脚。  

     ADC 引脚配置中的"ANY"是什么意思?

    不管我是不是把它设置为"任何",所有的引脚都在 Board_Init 中被配置为模拟();

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

    尊敬的 Ari:

    您是否可以尝试将"用例"改为"定制"而不是"全部"、然后禁用要用于 SCI 的引脚的模拟用法?

    谢谢!

    卢克