CC2541 OAD升级出现OAD blocks overflow错误
OAD升级,从机可以向主机发出更改连接间隔请求,最小蓝牙间隔更改到20ms就比较快了。修改连接参数是对于image-A.还是image-B程序。我修改了image-A.从机连接参数为20ms,速度提升了,但是在升级过程中会出现 OAD blocks overflow错误,程序如下:
// Minimum connection interval (units of 1.25ms, 80=100ms) if automatic parameter update request is enabled
#define DEFAULT_DESIRED_MIN_CONN_INTERVAL 16//80
// Maximum connection interval (units of 1.25ms, 800=1000ms) if automatic parameter update request is enabled
#define DEFAULT_DESIRED_MAX_CONN_INTERVAL 16//800
// Slave latency to use if automatic parameter update request is enabled
#define DEFAULT_DESIRED_SLAVE_LATENCY 0
// Supervision timeout value (units of 10ms, 1000=10s) if automatic parameter update request is enabled
#define DEFAULT_DESIRED_CONN_TIMEOUT 1000
// Whether to enable automatic parameter update request when a connection is formed
#define DEFAULT_ENABLE_UPDATE_REQUEST FALSE//TRUE
我使用的芯片是cc2640,协议栈是2.01最新版的,使用模式是off-chip OAD, 使用cc2540 USB dongle给cc2640 OAD升级。
我也碰到过同样问题, 加载升级文件之后, 点start 就出现OAD blocks overflow提示框, 然后连接被断开, 我的设备也会死机。 不知道什么原因, 请TI的工程师出来分析一下原因。
我有时候会遇到这种问题,你把连接参数改大点,可能会好些
把连接间隔改到10ms,外设鄙视改为0 试下
改了连接参数, 不行!
因为一点start软件就报错了, 我觉得应该都还没有进行传输,所以修改连接参数之类的都是无效的。
另外我现在用simpleBLEperipherial工程为我的程序升级的话是成功的,而且升级程序也很正常。 但是如果我用我自己的工程升级的话就会报错OAD blocks overflow 。我的程序单独运行是正常的没有问题, 而且用simpleBLEperipheral升级也正常。