Part Number:CC2640R2LOther Parts Discussed in Thread:CC2640R2F,
您好!
这是一个从CC2640R2F移植的工程,代码已经完成,IDE 版本CCS V9.0.1.0004。因为代码需要升级,所以重新导入之前的CCS工程,编译0error,0 warning,直接烧录hex文件,程序异常;仿真就进入如题所示的地方,返回PIN_init函数PIN_NO_ACCESS。之前的hex文件烧录进去,程序运行正常。传入的参数也是SDK中默认的,现在找不着原因,请帮忙看下,谢谢您!
PIN_init的参数为BoardGpioInitTable,如下所示
const PIN_Config BoardGpioInitTable[] = {
CC2640R2_LAUNCHXL_PIN_RLED | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL | PIN_DRVSTR_MAX, /* LED initially off */
CC2640R2_LAUNCHXL_PIN_GLED | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL | PIN_DRVSTR_MAX, /* LED initially off */
CC2640R2_LAUNCHXL_PIN_BTN1 | PIN_INPUT_EN | PIN_PULLUP | PIN_IRQ_BOTHEDGES | PIN_HYSTERESIS, /* Button is active low */
CC2640R2_LAUNCHXL_PIN_BTN2 | PIN_INPUT_EN | PIN_PULLUP | PIN_IRQ_BOTHEDGES | PIN_HYSTERESIS, /* Button is active low */
CC2640R2_LAUNCHXL_SPI_FLASH_CS | PIN_GPIO_OUTPUT_EN | PIN_GPIO_HIGH | PIN_PUSHPULL | PIN_DRVSTR_MIN, /* External flash chip select */
CC2640R2_LAUNCHXL_UART_RX | PIN_INPUT_EN | PIN_PULLDOWN, /* UART RX via debugger back channel */
CC2640R2_LAUNCHXL_UART_TX | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL, /* UART TX via debugger back channel */
CC2640R2_LAUNCHXL_SPI0_MOSI | PIN_INPUT_EN | PIN_PULLDOWN, /* SPI master out – slave in */
CC2640R2_LAUNCHXL_SPI0_MISO | PIN_INPUT_EN | PIN_PULLDOWN, /* SPI master in – slave out */
CC2640R2_LAUNCHXL_SPI0_CLK | PIN_INPUT_EN | PIN_PULLDOWN, /* SPI clock */
PIN_TERMINATE
};
Katherine Wang:
请您提供以下信息:
您使用了哪个 SDK 版本?
您使用的设备包是什么?您是否使用与您的设备封装变体对应的电路板文件?根据文档,PIN_NO_ACCESS 表示“操作失败,客户端无权访问 pin”。我建议您在调试模式下逐步执行代码,这样您就可以确定是哪个 PIN 码导致了该问题。
,
Katherine Wang:
如果您使用的是自定义 CC2640R2F,并且没有针对该自定义程序正确修改示例程序,该程序将在 Board_initGeneral() 处挂起,挂起与 SPI 外部闪存的 SPI 引脚配置有关,TI工程师之前遇到过这种问题。
,
kai li:
BoardGpioInitTable默认的GPIO PIN值超出了CC2640R2L最大GPIO PIN,修改后,已解决。