您好!
我目前正在开发一个使用 CC2640R2L 板载 UART 接口与其他 IC 通信的应用。 CC2640R2L 只有一个 UART 接口。 因此、我无法使用 UART 进行调试。 是否有其他方法可以在不使用 UART 接口的情况下使日志输出可见?
此致
Alex
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.
尊敬的 Alex:
首先、我建议利用其他工具、如 ROV 或 此处所述的其他技术。
此外、您还可以考虑其他选项、如"打印"到内存中。 这样、您就可以将所需的日志存储在 RAM 中并使用调试器(使用 cJTAG 完成)访问它。 您还可以使用 SSI (SPI)或某些 GPIO"打印"来调查此问题。
您还可以禁用 UART 接口、查看问题是否仍然存在。 如果是、则可以重新使用 UART 进行调试打印。
最后但同样重要的是、您可以在同一 UART 总线上发送调试信息。 您可能必须在另一个 IC 上实施一些 UART 数据包过滤。
此致、
您好 Clement、
我尝试了您的建议使用 ROV、但当我停止处理器时、我始终会得到"从 ROS 服务器接收到异常"。 我也不太确定要寻找什么。
我会期望出现某种错误或异常、这会导致我的问题的根本原因。 但调试器似乎无法访问任何有用的信息。
我还尝试了您关于将"打印"到内存的建议。 为此、我使用了 Jlink 的 RTT_viewer 并连接了 Jlink 调试器。
由于器件不再正常连接、因此似乎会影响应用程序执行。 记录工作正常、但设备无法通过蓝牙发起配对。
我想避免的最后一个用于改变 UART 用途的选项、因为我需要 UART 接口的全部容量来进行数据传输。
我怀疑可能存在某种堆栈溢出问题。 您能否检查我的项目并查看您是否可以发现问题?
此致
Alex
[由 Clement]删除文件
尊敬的 Alex:
我已从您之前的消息中删除该文件。 E2E 是一个公共论坛、我希望您在分享您的项目之前了解这一点。
堆栈溢出问题在这些小内存器件上相当常见。 如果你有这种直觉、那么去检查它是否有帮助。 要检查此问题、您可以稍微增大您认为需要的任务的堆栈大小。 如果可能、您可以禁用 UART 传感器、这样就可以利用 ROV 来查看每个任务使用的堆栈大小。
最后、我还没有向您介绍 我们的调试指南。 研究它 并查看是否有任何帮助可能是有道理的。
此致、