在尝试迁移 openpnp - Smoothieware project 从gcc命令行 + MRI调试方式 到NXP MCUXpresso工程.
这个IDE还是蛮喜欢的, 细节做的很精致, 用着舒服, 大厂做的东西还是NB. 唯一不足的地方是只支持他们自己家的MCU.
因为头一次用MCUXPresso这个IDE, 有很多新手的体会. 记录一下. 有新体会就补充.
对于工程的新手, 搜索大法很重要.
Smoothieware project 工程, 原版是用命令行编译的, 各种参数都是命令行传进来的. 需要编译的文件都是makefile和.mk指定的.
那么在MCUXPresso迁移工程编译的过程中, 全部编译工程目录下的所有文件, 肯定要报错的.
e.g. Smoothieware project 支持几种NXP的LPC系列MCU, 那我就需要编译LPC1769的实现, 那怎么排除其他无关内容?
开始的做法很土, 直接去磁盘文件目录中, 将这个文件和目录移除. 这么搞也行, 不过很麻烦. 另外, 如果真是要试试其他内容包含进来编译的效果, 又需要手工将需要编译的文件和目录拷贝进工程目录, 烦死了.
MCUXPresso做的挺人性化的, 稍微找一下, 就能找到对应的功能.
就拿这个IAR目录开刀.
这个IAR目录是给IAR的IDE用的, 在MCUXPresso中包含进来编译是会报错的(各种错, e.g. 语法不对了, 函数或变量找不到了)
这时, IAR目录下的内容已经看不到了, 不参与编译. 但是实际文件还在磁盘上. 这样就有利于多配置的实现.
预定义宏的好处, 不用在程序实现中定义. 而是在IDE的预处理宏的区域定义, 程序中用到宏的地方, 就不依赖头文件包含了.
C++编译器和C编译器都有各自的预处理器的宏可以设置.
增加预处理器宏时, 在弹出框内, 输入宏的名称和值就可以.
宏分为几种:
只有名字的开关宏
DEBUG
带值的宏
MAX_ROBOT_ACTUATORS=5
值为字符串的宏, 字符串值的内容用转义符的双引号围起来.
MRI_INIT_PARAMETERS="MRI_UART_3"
不只是c/c++文件, 还有makefile文件.
默认的makefile文件字体是10号字体, 眼睛都看不清.
改过基本字体后, 所有文件(.h, .c, makefile)字体都变成统一的20号字体, 看着舒服多了
本文发布于:2024-01-30 03:02:41,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170655496318763.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |