2014-07-27 154 views
1

按照指令http://processors.wiki.ti.com/index.php/SensorTag_with_iBeacon。 啓用iBeacon的固件是使用IAR創建的,並使用iPhone中的OAD更新,但SensorTag在更新後停止工作。沒有廣告,沒有LED閃爍旁邊的按鈕。SensorTag,iBeacon,編譯固件不起作用

我嘗試了幾次相同/相似的事情,並嘗試通過CC調試器直接從IAR IDE上傳固件,但沒有運氣。

我可以通過上傳下載的固件與閃存編程器恢復到以前的工作狀態。

我也嘗試用IAR自己編譯標準固件(傳感器標籤沒有來自BLE堆棧的iBeacon),但它也沒有工作。

所以我認爲在IAR編譯是我的問題,但make可以成功完成。沒有代碼被我自己改變。 (只有_NR_OF_VIRTUAL_REGISTERS才能避免鏈接器錯誤)。

我想知道是否有人通過遵循上述URL的說明成功地使其工作。

  1. 固件iBeacon顯示:SensorTag_Beacon_Patch_1v0
  2. CC調試的FW:0041
  3. SensorTag:CC2451,1.4.1,1407
  4. IAR 8051版本8.30.3
  5. BLE堆棧:BLE_CC254x_140.zip
  6. 工作標準的固件版本:1.5 A &乙

如果我能得到任何建議或建議,它將不勝感激。

感謝和問候,

+0

您正在構建項目的CC2541版本還是CC2540版本?請問您的項目配置的可用內存設置是否與您實際擁有的芯片中的內存設置相匹配? –

回答

0

感謝您的意見,克里斯。

我在TI E2E社區找到了一個解決方案。

IAR 8051 V8.30自V8.20更新後出現問題。它被報告爲「8051 V8.30鏈接器錯誤[e16]:分段ISTACK對於分段定義太長」(http://supp.iar.com/Support/?Note=95811)。

修改.xcl鏈接器配置後,構建運行正常,沒有任何錯誤。 但是,固件在SensorTag上不起作用。

TI E2E社區中的一篇文章提到,將「選項」設置中的虛擬寄存器數量從16更改爲12可與IAR V8.30.3一起使用。然後用一個原始的.xcl文件(未修改)進行嘗試。在構建過程中沒有錯誤,並且也在SensorTag上工作。

SensorTag_Beacon項目中有3個包,分別是CC2541DK-Sensor,CC2541DK-Sensor-OAD-ImgA和CC2514DK-Sensor-OAD-ImgB。 工作的只有CC2541DK-Sensor,其虛擬寄存器數量設爲12,且沒有修改.xcl文件。

CC2541DK-Sensor-OAD-ImgA和CC2514DK-Sensor-OAD-ImgB無法使用Option設置和.xcl修改的任意組合。

希望這有助於未來的其他人。

Regards,