Hi,
官方提供的Large Image OAD 是基于1.3.2协议栈 CC2541处理器的。 我想将SimpleBLEPeripheral_OAD_Small_Img_A移植到CC2540上面,但是编译的时候发现hal_mcu.h 调用的是ioCC2541.h 原因是CC2541常量已经被定义了,但是我search整个工程却没有找到这个常量定义的位置。 于是我将工程Option里面的MCU target改为CC2540F256, 库文件改为CC2540_BLE_peri.lib 。 但是编译时仍然看到调用的的是ioCC2541.h 。 编译完成后,程序可以运行,但是使用BLE Device Monitor 1.2 下载Image的时候不定时失败 (提示 OAD programming failed) (Command Status: 40 FDB6 [len=0])。
我的问题是:
1. 如何修改工程的CC2541 常量
2. 下载失败是不是因为编译时被引用了ioCC2541.h 而不是ioCC2540.h 呢? 我用1.4.0自带的OAD例子工作就很正常。
Light J:
我跟你同样的问题,请问你解决了吗。可以肯定的是虽然你使用2541的头文件确实会出问题,但不是这个问题的原因。我已经改成2540了,还是一样。我怀疑是协议栈版本的问题。
he:
回复 Light J:
请参考 http://processors.wiki.ti.com/index.php/BLE_Large_Image_OAD
亲测可以正常工作,需要注意的是,烧 iMageB 的时候,建议使用 Multitool APP。
vlp zee:
硬件库包含对了吗?