使用CC1352P1 EVK,开启GPIO中断功能,开启串口功能,但是不知道初始化代码是否哪里编写不正确,导致两个功能不能同时创建成功:代码如下:
1、当屏蔽GPIO_init(),那么串口初始化正常,PIN_GPIO的返回值为0,GPIO初始化失败,
2、当屏蔽UART_init(),那么GPIO正常,但是串口OPEN失败,后面发现OPEN的返回值shi NULL,进入while(1),
3、当两个init函数都开启,那么GPIO初始化失败,串口成功。
int main(void)
{
/* Call driver init functions. */
Board_initGeneral();
GPIO_init();
UART_init();
/* Open LED pins */
pinHandle = PIN_open(&pinState, pinTable);
Assert_isTrue(pinHandle != NULL, NULL);
/* Setup callback for button pins */
PIN_Status status = PIN_registerIntCb(pinHandle, &buttonCallbackFunction);
Assert_isTrue(status == PIN_SUCCESS, NULL);
UART_Params_init(&uartParams);
uartParams.writeDataMode = UART_DATA_BINARY;
uartParams.readDataMode = UART_DATA_BINARY;
uartParams.readReturnMode = UART_RETURN_FULL;
uartParams.baudRate = 115200;
uart = UART_open(CONFIG_UART_0, &uartParams);
if (uart == NULL) {
/* UART_open() failed */
while (1);
}
user6380627:
PIN_registerIntCb的返回值是PIN_NO_ACCESS
Kevin Qiu1:
可能是定义引脚冲突了,你用的是哪个例程
user6380627:
回复 Kevin Qiu1:
我用的 rfSynchronizedPacketTx_CC1352P1_LAUNCHXL_tirtos_ccs这个例程 修改 的,
user6380627:
回复 user6380627:
我看了下Hide Board ,GPIO应该没有冲突,2个GPIO的Device_Pin_Name是14,15,串口的GPIO是12,13
user6380627:
回复 Kevin Qiu1:
不会啊,如果存在GPIO的重复定义的话,那么CFG文件会报红的,编译时无法通过的。