首页 文章

如何在ARM _without_调试上运行我的代码?

提问于
浏览
0

我一直在为STM32F105开发一个项目(在C中),使用带有CDT插件的Eclipse IDE . 我正在使用gcc-arm工具链,OpenOCD(gdb)进行调试,以及ST-Link / V2 JTAG设备 .

我一直在我的目标板上调试,没问题 .

现在,我终于希望代码能够自行运行,而且我不知道如何在Eclipse中运行它!我确信它很简单,但我找不到它 .

如何构建代码并对目标进行编程以使其“正常”运行?

2 回答

  • 1

    将OpenOCD配置为外部工具并使用或多或少的参数:

    -f interface/... -f target/... -c "init; reset init; flash write_image erase <your_hex_file.hex>; reset run; shutdown;"

    您当然应该将此命令调整到您的项目:输入正确的接口和目标配置并设置正确的hex文件名(您也可以使用.bin或.elf,但.hex通常是最方便的) .

    在"Working Directory"文本框中输入你的项目目录 - 使用"Browse Workspace"来做那个,你应该有这样的: ${workspace_loc:/<name_of_your_project>}

  • 0

    正如@ChrisStratton所建议的那样,我的一个项目只是断开调试器并重置目标 . 另一个没有,无论我使用IDE还是ST-LINK工具 . 附加调试器时它工作正常 .

    事实证明,非工作程序使用半主机 . 当我通过删除以下编译器符号禁用半主机时,项目开始运行就好了 .

    enter image description here

相关问题