This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] CC2538:Z-Stack 3.0 CC2538 OTA 映像固件无法正常运行(可能是 Z-Stack 3.0错误)

Guru**** 2538950 points
Other Parts Discussed in Thread: CC2538, Z-STACK

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/wireless-connectivity/zigbee-thread-group/zigbee-and-thread/f/zigbee-thread-forum/600820/cc2538-z-stack-3-0-cc2538-ota-image-a-firmware-don-t-work-correctly-may-be-a-z-stack-3-0-bugs

器件型号:CC2538
Thread 中讨论的其他器件: Z-stack

CC2538 Cotex-M3中需要带 Z-Stack 3.0的 OTA 功能、但引导加载程序(映像引导管理器)不起作用。

众所周知 ,OTA 引导和客户端应用程序可以组合成适合 TI 闪存编程器的单个.hex 映像文件。我们参考 Z-Stack OTA 升级用户指南文档,在\CC2538\SampleSwitch.eww IAR 项目上进行测试,最后的*。hex 映像文件在 SmartRF Programr2 Studio 中下载成功,但在中下载 应用程序无法运行。

 

1. Image Boot Manager 项目位于默认安装的目录"C:\Texas Instruments\Z-Stack 3.0.0\Projects\Zstack\ota\Boot\CC2538\Boot.eww", 如果不修改任何源代码、则无法在 CC2538 SoC 中正确调试该项目(默认构建的映像大小为912字节、名为 Boot.bin)。

2.我们在 Boot.eww 项目 中添加以下源代码对应于 C 源文件 startup_ewarm.c、重建项目、可以在主入口点运行调试器。我想引导加载程序已经正确构建、但 Boot.bin 映像大小太大、无法与应用程序映像组合(我们在 SampleSwitch.eww 上进行测试、遇到构建问题 阶段错误)  (添加.CCA 段代码、Boot.bin 映像大小为2016字节)

typedef 结构

 unsigned char ulImageBackdoor[4]; //请注意后门配置在 MSB 中。
 unsigned long ulImageValid;
 unsigned long ulImageVectorAddr;
} lockPageCCA_t;

//在上部闪存页中为客户配置区域创建部分。
__root const lockPageCCA_t __CCA @".cca"=

 //如果需要,请使用以下值为启用后门
 //端口 A、引脚7、复位后10 μ s 内的低电平有效以强制启动。
 //{0xFF、0xFF、0xFF、后门_enable_bit | 0x07}、
   
 {0、0、0}、                   //初始值、后门禁用  
 0x00000000、                  //图像有效字段。
 (unsigned long)__vector_table // flash_BASE    
                               //位于闪存起始地址的矢量表。
};

3.如何解决这一可探测性问题?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我不明白为什么 Boot.bin 被填充那么多 NULL (0x20)个空字符、以至于它的大小超过2000个字节。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、您好、

    请查看第3节中的《Z-Stack OTA 升级用户指南》,该文档位于 Z-Stack 3.0.0\Documents 中。  

    例如、您可以使用"Router–OTAClient–ImageA–withBootloader"刷写设备来尝试使用示例交换机。 此器件将运行 OTA 客户端、因此会自动查找服务器并定期请求更新。 然后生成服务器将使用项目"Router–OTAClient–ImageA"使用的映像、默认情况 下、路径 HomeAutomation\SampleSwitch\cC2538\Router - OTAClient - ImageA\EXE 中的二进制文件名为"Bebe-2538-AA0000.ZigBee"。

    现在、对于 OTA 服务器、请查看第3.2.4节。 尝试刷写协调器、例如、打开串行引导工具、选择.ZigBee 二进制文件并按如下方式配置协调器 COM:

    • 115200
    • 无流量控制
    • 无奇偶校验
    • 一个停止位
    • 8个数据

    要启动网络、请按向上按钮。 然后查看 《Z-Stack 3.0示例应用用户指南》、了解如何启动示例开关。 加入样例交换机后、将查找服务器、更新过程将在稍后开始、并需要几分钟才能完成。

    但愿这对您有所帮助。

    此致