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.

[FAQ] [参考译文] [常见问题解答] CC2642R:如何在 SysConfig 中重命名 PIN 实例?

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

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/993362/faq-cc2642r-how-to-rename-pin-instance-in-sysconfig

器件型号:CC2642R
Thread 中讨论的其他器件:SysConfig

SysConfig GUI 仅允许更改 GPIO 的名称、而不允许更改关联的 PIN 的名称。 但是、对于使用 PIN 驱动程序的项目、最好为引脚指定有意义的名称。

 以下是一种相当可行的解决方法:

  1. 使用 SysConfig GUI 创建所需的 GPIO。
  2. 完成后、保存并关闭文件。
  3. 使用文本编辑器打开.syscfg 文件(您可以使用 CCS 的文本编辑器)
  4. 找到与要重命名的 PIN 相对应的 GPIO。 要轻松查找 GPIO、您可以搜索在 SysConfig 中设置的确切 GPIO 名称。
  5. 找到正确的 GPIO 后、重命名其相应的 pinInstance.$name。
  6. 保存文件

我已使用 simple_peripheral 示例对此进行了测试、并添加了对 LaunchPad 红色 LED 的支持。 在 SysConfig GUI 中,我将 GPIO 称为“Clement_SIN_LED”。 然后、我打开了.syscfg 文件、发现 SysConfig 相应的 GPIO 实例被 SysConfig 称为 GPIO3。 因此、我将 GPIO3.pinInstance.$name 的值更改为我想要的值。

 

GPIO3.$name             = "CLEMENT_SIN_LED";
GPIO3.$hardware         = system.deviceData.board.components.LED_RED;
GPIO3.pinInstance.$name = "CLEMENT_SIN_LED_PIN";

 之后、您可以在代码中使用所选的 PIN 名称。 下面是我在 simple_peripheral.c 中添加的代码的一些摘录:

#include <ti/drivers/PIN.h>

PIN_Config ledPinTable[] = {
    CLEMENT_SIN_LED_PIN | PIN_GPIO_OUTPUT_EN | PIN_GPIO_HIGH | PIN_PUSHPULL | PIN_DRVSTR_MAX,
    PIN_TERMINATE
};

static PIN_Handle ledPinHandle;
static PIN_State ledPinState;

static void SimplePeripheral_init(void)
{
  //...
  ledPinHandle = PIN_open(&ledPinState, ledPinTable);
  //...
}

static void SimplePeripheral_toggleClementLed(void)
{
    uint32_t currVal = 0;
    currVal =  PIN_getOutputValue(CLEMENT_SIN_LED_PIN);
    PIN_setOutputValue(ledPinHandle, CLEMENT_SIN_LED_PIN, !currVal);
}

我希望这将有所帮助、

此致、

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

    如对此主题有任何疑问、请点击"提出相关问题"