Chapter0 开发工具链
1 Compiler
ARM 主流编译器(armcc、iar、gcc for arm、LLVM(clang))
-
ARMCC
-
IAR
-
GCC for ARM
2 IDE
IAR Embedded Workbench
对 IAR Embedded Workbench 文件进行版本控制
-
icf文件(链接文件)
icf主要作用就是定义内存位置、内存大小和堆栈大小。每个芯片开发商都会针对每款芯片来编写一个.icf文件即链接文件。对于基本的应用,这个.icf文件足以满足你的工程需要。但有时也会需要改动,比如当你的项目要添加外部RAM时、修改app存放地址时。都要修改icf。
-
map文件
通过map文件也可以查看代码的的存储信息,如变量大小存放位置、函数大小存放位置等等。以及查看固件的存储信息,ROM占用和RAM占用
3 Debug Tool
SEGGER JLink
-
JLink RTT
调试备忘录-J-Link RTT的使用(原理 + 教程 + 应用 + 代码)
RTT(Real Time Transfer)是一种用于嵌入式中与用户进行交互的技术,它结合了SWO和半主机的优点,具有极高的性能。
使用RTT可以从MCU非常快速输出调试信息和数据,且不影响MCU实时性。这个功能可以用于很多支持J-Link的设备和MCU,兼容性强。
-
JScope
J-Scope、可以在目标MCU运行时,实时分析数据并图形化显示的软件。它不需要SWO或目标上的任何额外引脚等功能,但使用可用的标准调试端口。J-Scope可以以类似示波器的方式显示多个变量的值。它读取elf或axf文件并允许选择多个变量进行可视化。
lks scope
一款国产的上位机跟踪软件,和JScope一样的功能,但是更方便、界面更完善,推荐使用