PIN_open调用失败
static PIN_Handle HLED;
static PIN_State SLED;
//********************
PIN_Config LEDTable[] = {
IOID_0 | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL | PIN_DRVSTR_MAX,
IOID_1 | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL | PIN_DRVSTR_MAX,
IOID_2 | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL | PIN_DRVSTR_MAX,
IOID_3 | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL | PIN_DRVSTR_MAX,
IOID_4 | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL | PIN_DRVSTR_MAX,
IOID_5 | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL | PIN_DRVSTR_MAX,
IOID_6 | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL | PIN_DRVSTR_MAX,
PIN_TERMINATE
};
//*********************
void LEDCallbackFxn(PIN_Handle handle, PIN_Id pinId)
{
for(i=0;i<7;i++)
{
PIN_setOutputValue(HLED , LEDTable[i] , 1);
__delay_cycles(100000); ;
PIN_setOutputValue(HLED , LEDTable[i] , 0);
}
};
//***************************
HLED = PIN_open(&SLED, LEDTable);
if(!HLED) {
while(1);
}
接着就一直卡在while(1),想请问是什么问题
你可以与pininterrupt示例工程对比一下,看看你的操作问题在哪里
已经有先对照过了,它句柄无法调用是因为我的脚位定义有错吗?请问错在哪里?
我发现无法调用是因为脚位配置的问题,如下:
PIN_Config LEDTable[] = {
//IOID_0 | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL | PIN_DRVSTR_MAX,
IOID_1 | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL | PIN_DRVSTR_MAX,
IOID_2 | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL | PIN_DRVSTR_MAX,
IOID_3 | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL | PIN_DRVSTR_MAX,
IOID_4 | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL | PIN_DRVSTR_MAX,
IOID_5 | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL | PIN_DRVSTR_MAX,
IOID_6 | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL | PIN_DRVSTR_MAX,
PIN_TERMINATE
};
当我将IOID_0换掉,句柄便可以被调用,可是我还是不懂,为什麽IOID_0无法被定义,请教一下~
关注一下,芯片哪种型号和封装尺寸?建议在官方例程修改。
你好,我用的是cc1310 晶片,应该是RHB 5*5的,可是定义挡上不是有定义说IOID_0是Digital IOs 吗,会跟封装尺寸有不同?,
例程没有特别使用到IOID_0,所以我也不知道从何参考