这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » MCU » PSoC6Wi-Fi示例无法调试FreeRTOS任务级代码怎么解决?

共2条 1/1 1 跳转至

PSoC6Wi-Fi示例无法调试FreeRTOS任务级代码怎么解决?

工程师
2024-03-28 18:16:39     打赏

我在 Ubuntu 18.04.6 中运行 MTB 3.1 GUI LTS 并为原型开发套件 (CY8CPROTO-062-4343W) 构建 PSoC6 示例。
在调试最新的 Wi-Fi 示例时,我发现我能够在 main 和 tasks 中放置断点,能够在 main() 中单步执行/单步执行代码,但 无法单步执行 main() 创建的任务中的代码。 这个问题发生在 “Wi-fi_mqtt_Client”、“Wi-Fi_https_Client” 和 “Wi-fi_https_Server” 示例中。
另一方面,在 “蓝牙 LE CAPSENSE 按钮和滑块” 和 “emusb-De vice_Audio_Recorder_Freertos” 等非 Wi-Fi 示例中不会出现此问题。 MTB 调试器 GUI 能够显示变量的值,步进/暂停/继续,没有问题。
有人能帮忙解释我的设置或示例可能出了什么问题吗? 我已经列出了我尝试过的示例所使用的依赖项的版本。
谢谢!
SK
=============================================================================================================
# Wi-fi_mqtt_Client void mqtt_client_t
ask(void *pvParameters)
# Wi-fi_https_client void https_client_task(void *arg

# Wi-fi_https_server void https_server_task(void *arg

wifi-core-freertos-lwip-mbedtls/release-v1.1.0
freertos/release-v10.5.0 抽象-rtos/release-v1.7.4 cat1cm0p/release-v1.3.0


clib-support/release-v1.4.2 cmsis/release-v5.8.0 lwip/stable-2_1_2_release lwip-freertos-integrate/release-v1.0.0 lwip-network-interface-cat/release-v3.8.0



=============================================================================================================
# emusb-device_audio_recorder_FreeRotos void audio_app_task (void *arg) void audio_in_process (
void

freertos/release-v10.5.0 抽象-rtos/release-v1.7.4 cat1cm0p/release-v1.3.0


clib-support/release-v1.4.2 cmsis/release-v5.8.0 core-lib/release-v1.4.1 core-make/release-v3.2.2 mtb-hal-cat1/release-v3.8.0


================================================================= # 蓝牙
LE CAPSENSE 按钮和滑块 void task_led(void* 参数)void task_capsense(void* param)void task_capsense)



freertos/release-v10.5.0 抽象-rtos/release-v1.7.4 cat1cm0p/release-v1.3.0


clib-support/release-v1.4.2 cmsis/release-v5.8.0 core-lib/release-v1.4.1 core-make/release-v3.2.2 mtb-hal-cat1/release-v3.8.0




关键词: PSoC6     Wi-Fi     FreeRTOS    

助工
2024-03-28 18:17:21     打赏
2楼

这个问题可能是由于调试器的配置或者编译器的优化设置导致的。以下是一些可能的解决方案:

1. 确保你使用的是最新版本的调试器驱动程序和软件工具链。

2. 检查调试器的配置,确保任务级代码的断点已经启用。在MTB调试器GUI中,可以尝试在"Debug"选项卡的"Breakpoint"选项卡中查看并启用任务级断点。

3. 确保编译器没有过度优化任务级代码。尝试调整编译器的优化级别。在MTB调试器GUI中,可以在"Debug"选项卡的"Compiler"选项卡中选择适当的优化级别。

4. 检查任务级代码的调试操作是否正确。确保你在任务级代码中设置了正确的断点,并使用正确的调试操作(如单步执行)进行调试。

5. 如果上述方法都没有解决问题,可以尝试使用其他调试工具或调试器,如J-Link。


共2条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]