1.使用工程: C:tisimplelink_cc2640r2_sdk_1_35_00_33examplesrtosCC2640R2_LAUNCHXLble5stacksimple_peripheral_oad_offchip
2. IDE: CCS7.2
错误现象: 开发板复位,串口打印错误提示信息:
c[2J[10r[11;1H7[10r[1;1H[2K>>>STACK ASSERT87[10r[1;1H[2K***ERROR***87[10r[3;1H[2K>> INTERNAL ERROR!87[10r[1;1H[2K
我在http://software-dl.ti.com/lprf/b ... /ble-debugging.html 看到相关原因和解决的方法:
When using a split-image build configuration, it may be possible to get a HAL_ASSERT_CAUSE_INTERNAL_ERROR assertion. This typically indicates that the ICall bleAPITable dispatch table is missing some functions so it calls a generic icall_liteErrorFunction error handler. Typically, a fix for this is error is to enable a missing predefined compiler option to get correct APIs into bleAPITable.
我找到bleAPItable定义的地方,里面有许多icall_liteErrorFunction,我猜测可能是某些宏定义未打开,所以出现相关错误,然后我尝试添加了宏定义"HOST_CONFIG=PERIPHERAL_CFG", 同时删除函数SimpleBLEPeripheral_init()-> GGS_SetParamValue(GGS_DISABLE_RPAO_CHARACTERISTIC); 串口打印不再报错,这样的处理是否合理呢?