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:CC2538上的螺纹

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

https://e2e.ti.com/support/wireless-connectivity/zigbee-thread-group/zigbee-and-thread/f/zigbee-thread-forum/583336/cc2538-thread-on-the-cc2538

部件号:CC2538

我开始在CC2538上放置openThread堆栈

关于我-我已经阅读了Thread v.1.1 0规范,我以前是ZigBee开发者,也是一些ZigBee规范的贡献者。

计划:

  我将使用定制Schneider板,它看起来非常类似于 CC2538评估模块套件,但它上有cJTag端口,上面有6个UART引脚。

  最初,我编译了3.0 上的openThread Stack,并从Linux上的输出.elf文件创建了十六进制文件。

  我打算将SMARTRF06EBK-SmartRF06评估板用作使用其10引脚紧凑型JTAG连接的编程器和调试器。

问题:

是否有其他人已经这样做了?

我最终希望将所有开发工作迁移到Windows。  是否有人在Windows上编译了openThread堆栈?  您可以在Windows上的何处将项目导入到任何IDE中?

是否有人使用调试器,并且能够设置断点并逐步执行代码?

是否有人会推荐线程流量跟踪和跟踪查看程序?

谢谢

乔纳森

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

    你好,Jonathan,

    我看不到通过cJTAG闪存该主板的任何问题。 在我的开发中,我一直在使用带有cc2538em的SmartRF06,它使用XDS100v3中的JTAG。

    我建议您继续使用Linux VM构建ELF文件。 这是确保您可以从OpenThread获取最新更新的最简单方法。 我使用几乎有存货的Ubuntu 14.04 LTS映像构建OpenThread。 我唯一需要做的就是安装peppet,下载ARM嵌入式编译器和安装doxygen。 但如果Contiki图像适合您,我会继续使用它。

    目前没有IDE可用于构建和运行OpenThread。 如果你真的有决心的话,我相信你可以让Automake构建系统在Cygwin或MinGW系统下运行在Windows上。

    您可以获取CCS以下载和调试使用Automake和GCC构建的ELF。 很遗憾,我没有一个很好的入门指南可供您参考,但步骤如下:

    1. 使用新的空白工作区打开CCS
    2. 为您的主板创建目标配置
      1. 转至"查看->目标配置"
      2. 右键单击Target Configurations (目标配置)窗口,然后选择New Target Configuration (新建目标配置)
      3. 输入一个有用的名称,然后单击"完成"
      4. 配置目标配置,确保设置连接和主板或设备
    3. 创建调试配置
      1. 转至"运行->调试配置..."
      2. 选择左窗格中的代码编辑器工作室图标,右键单击并选择新建
      3. 给它一个有用的名称
      4. 在"主菜单->目标配置"中,找到您在上面创建的目标配置
      5. 在“program -> program”(程序->程序)中选择您创建的elf文件,该文件将位于`openthread/output/bin`中
      6. 在“源->添加->路径映射”中,添加一个映射,从源在虚拟机中的位置到源在主机上的位置
    4. 单击“调试配置...”对话框中的“调试”按钮,开始调试
    5. 在“调试”窗格中选择连接,然后单击“连接目标”图标
    6. 您可能必须再次加载程序才能将符号放入调试器

    现在,您应该能够逐步执行代码并设置断点。 现在,您可以使用OpenThread的构建系统进行重建,并使用CCS进行下载和调试。


    我目前没有跟踪,但下次我启动线程网络时,我会用数据包捕获更新此线程。 我使用Ubiqua来侦听流量,它有一个非常好的线程数据包分解器。 我没有使用Wireshark,但OpenThread提供 了有关 如何将NCP与Wireshark配合使用的说明。

    希望能有所帮助,

    Seth

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    尝试参考 sunmaysky.blogspot.tw/.../run-openthread-on-cc2538dk.html
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

     

    下面是一些启动简单OpenThread网络的捕获文件。 这不需要调试。

    Seth

    e2e.ti.com/.../basic_5F00_thread_5F00_startup.zip

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    感谢您提供捕获文件。 您有了吗? 我应该在周末之前准备好我的设备,但最好有多个来源。 我还将回顾标准并做笔记。 阅读标准时,并不完全清楚图层是如何完成的。 但从跟踪来看,这是显而易见的。

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

    这是今天一些工作的成果。 它是连接到父设备并执行ping操作的困端设备。

    e2e.ti.com/.../sleepy_5F00_end_5F00_device.zip

    大多数情况下,网络层与6LoWPAN相同。 线程协议的其他层位于IPv6应用层。 MLE基于CoAP和安全CoAP。

    Seth