Other Parts Discussed in Thread: SYSCONFIG
如何在 SysConfig 中重命名 PIN 实例?
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.
SysConfig GUI 只允许更改 GPIO 的名称,而不允许更改关联的 PIN 的名称。然而,对于使用 PIN 驱动器的项目,最好为 PIN 赋予有意义的名称。
实现此目标的比较好的方法如下:
使用 SysConfig GUI,创建所需的 GPIO。
完成后,保存并关闭文件。
用文本编辑器打开 .syscfg 文件(可使用 CCS 的文本编辑器)
找到与要重命名的 PIN 对应的 GPIO。可搜索在 SysConfig 中设置的确切 GPIO 名称以轻松找到 GPIO。
找到合适的 GPIO 后,重命名其对应的 pinInstance.$name。
保存文件
我已经用 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);