cc2650 OAD结束后不复位,为什么?
我使用cc2650- smartRF06EB 和 cc2540的u*** dongle。
1.上述硬件,IAR环境,按照协议栈里面的OAD手册,跑ble_cc26xx_2_00_00_42893协议栈中的OADTarget例程,可以运行。运行以后使用BLE Device Monitor配合cc2540的蓝牙u*** dongle可以看到cc2650蓝牙的各种服务包括OAD服务;
2.在1基础上,构建SimpleBLEPeripheral工程,选择生成CC2640App - FlashOnly_OAD_ImgB,产生OADbin.bin文件,使用BLE Device Monitor的OAD功能,看上去可以向cc2650传输OADbin.bin,但OAD结束后,cc2650不复位;
3.在1基础上,调试OADTarget工程的CC2640App - FlashROM,可以发现使用BLE Device Monitor进行OAD传输时,OAD.c中的void OAD_imgBlockWrite(uint16_t connHandle, uint8_t *pValue);函数执行有问题,导致BLE Device Monitor传输完成后,cc2650并未达到复位条件。
可以帮我整理下思路吗?谢谢!