您好!
我在项目中使用 CC1312R 的 SPI 接口。 对于片选,我正在尝试将片选 GPIO 的值从高电平更改为低电平,但 GPIO 的值不会改变。
为了进行验证,我从 TI 资源管理器加载了 gpiointerrupt 项目,虽然我能够更改 LED 的状态,但当我更改项目中的 GPIO (如 DIO1或 DIO22)时,GPIO 值没有改变。
GPIO 的其他配置是相同的。 请告诉我是否需要更多信息。
此致、
Omkar
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.
您好!
我在项目中使用 CC1312R 的 SPI 接口。 对于片选,我正在尝试将片选 GPIO 的值从高电平更改为低电平,但 GPIO 的值不会改变。
为了进行验证,我从 TI 资源管理器加载了 gpiointerrupt 项目,虽然我能够更改 LED 的状态,但当我更改项目中的 GPIO (如 DIO1或 DIO22)时,GPIO 值没有改变。
GPIO 的其他配置是相同的。 请告诉我是否需要更多信息。
此致、
Omkar
您好、
是的、我已经在引脚上完成了 GPIO_setConfig()。 我在 gpiointerrupt 项目中进行了以下更改:
/*配置 LED 和按钮引脚*/ GPIO_setConfig (IOID_22、GPIO_CFG_OUT_STD | GPIO_CFG_OUT_LOW); GPIO_setConfig (Board_GPIO_LED1、GPIO_CFG_OUT_STD | GPIO_CFG_OUT_LOW); //GPIO_setConfig (Board_GPIO_BUTTON0、GPIO_CFG_IN_pu | GPIO_CFG_IN_INT_INT_FALLING); /*打开用户 LED */ GPIO_WRITE (IOID_22、Board_GPIO_LED_ON); GPIO_WRITE (IOID_22、Board_GPIO_LED_OFF);
通过在上述语句中设置断点(其中我要更改 IOID_22的值),我将测量 LAUNCHXL-CC1312R1上 DIO22的电压。 DIO22的电压电平没有变化。 它保持为0。
请建议我是否不知道是否有其他配置。
此致、
Omkar
这是我不知道的几件事:
在 CC1312R1_KAUNCHXL.c 文件中、您有下表:
GPIO_PinConfig gpioPinConfigs[]={ /*输入引脚*/ GPIOCC26XX_DIO_13 | GPIO_DO_NOT _CONFIG、/*按钮0 */ GPIOCC26XX_DIO_14 | GPIO_DO_NOT _CONFIG、/*按钮1 */ GPIOCC26XX_DIO_15 | GPIO_DO_NOT _CONFIG、// CC1312R1_LAUNCHXL_SPI_MASTER_READY * GPIOCC26XX_DIO_21 | GPIO_DO_NOT _CONFIG、// CC1312R1_LAUNCHXL_SPI_SLAVE_READY * /*输出引脚*/ GPIOCC26XX_DIO_07 | GPIO_DO_NOT _CONFIG、/*绿色 LED * GPIOCC26XX_DIO_06 | GPIO_DO_NOT _CONFIG、/*红色 LED * /* SPI 闪存 CSn * GPIOCC26XX_DIO_20 | GPIO_DO_NOT _CONFIG、 /* SD CS */ GPIOCC26XX_DIO_21 | GPIO_DO_NOT _CONFIG、 /* Sharp Display - GPIO 配置将在 Display 文件中完成*/ GPIOCC26XX_DIO_24 | GPIO_DO_NOT _CONFIG、/* SPI 芯片选择* GPIOCC26XX_DIO_22 | GPIO_DO_NOT _CONFIG、/* LCD 电源控制* GPIOCC26XX_DIO_23 | GPIO_DO_NOT _CONFIG、/* LCD 使能*/ };
下表列出了相应的.h 文件:
typedef 枚举 CC1312R1_LAUNCHXL_GPIOName{ CC1312R1_LAUNCHXL_GPIO_S1 = 0、 CC1312R1_LAUNCHXL_GPIO_S2、 CC1312R1_LAUNCHXL_SPI_MASTER_READY、 CC1312R1_LAUNCHXL_SPI_SLAVE_READY、 CC1312R1_LAUNCHXL_GPIO_LED_GREEN、 CC1312R1_LAUNCHXL_GPIO_LED_RED、 CC1312R1_LAUNCHXL_GPIO_SPI_FLASH_CS、 CC1312R1_LAUNCHXL_SDSPI_CS、 CC1312R1_LAUNCHXL_GPIO_LCD_CS、 CC1312R1_LAUNCHXL_GPIO_LCD_POWER、 CC1312R1_LAUNCHXL_GPIO_LCD_ENABLE、 CC1312R1_LAUNCHXL_GPIOCOUNT }CC1312R1_LAUNCHXL_GPIOName;
由于 GPIO 驱动程序使用索引、因此必须使用与要使用的 DIO 相对应的名称。
在这里、GPIOCC26XX_DIO_22映射到 CC1312R1_LAUNCHXL_GPIO_LCD_POWER、您必须在代码中使用该名称:
GPIO_setConfig (CC1312R1_LAUNCHXL_GPIO_LCD_POWER、GPIO_CFG_OUT_STD | GPIO_CFG_OUT_LOW);