我使用了这个指南Simulating ARM code,它展示了如何模拟汇编代码(ARM7小字节序),并且工作得很好。我刚刚将设备从arm 7小端更改为arm cortex m3,以下是错误:
Build target 'Target 1'
assembling test.s...
linking...
sa.axf: Error: L6320W: Ignoring --entry command. Cannot find argument 'Reset_Handler'.
sa.axf: Warning: L6320W: Ignoring --first command. Cannot find argument '__Vectors'.
Target not created我认为问题是我的项目没有一些启动files.If,这就是我如何解决这个问题的情况?
发布于 2013-03-18 19:58:30
Cortex-M系列使用来自"clasic“的different exception model,因此需要不同的启动。我不确定Keil是如何使用它的,但也许可以尝试在代码的开头添加一个Reset_Handler标签。您可能还需要添加一个带有矢量定义的启动文件。使用他们应该提供的一些示例,或者使用一个新的项目向导(如果有)可能会更容易。
发布于 2013-03-19 02:32:45
显然,main()函数的入口点以前被定义为'Reset_Handler‘函数,现在你的项目中没有它,所以链接器抱怨说。这可能只是你问题的开始。
如果你想将现有的示例从ARM7架构移植到Cortex M3,那么使用汇编可能不是一个好主意,因为它们是非常不同的架构。
如果你一定要这样做,那么至少找到一些新架构的工作示例(不需要做你需要的事情),并从那里开始,以便有一个正常工作的启动文件、工具集项目文件和已知良好的工作环境。然后开始一步一步地移植旧的东西。
https://stackoverflow.com/questions/15467231
复制相似问题