当前位置:首页 > 公众号精选 > strongerHuang
[导读]关注、星标公众号,不错过精彩内容 素材来源:SEGGER、网络 编辑整理:strongerHuang 开发MCU产品的编译工具很多,GCC是一个免费通用的编译器,应用于很多集成开发环境,比如:STM32CubeIDE、 RT-Thread Studio都集成GCC工具。 然后,还有我们知道Keil、 IAR


关注、星标公众,不错过精彩内容

素材来源:SEGGER、网络

编辑整理:strongerHuang


开发MCU产品的编译工具很多,GCC是一个免费通用的编译器,应用于很多集成开发环境,比如:STM32CubeIDE、 RT-Thread Studio都集成GCC工具。


然后,还有我们知道Keil、 IAR等IDE都集成了特定的编译器。


下面讲述一下SEGGER编译器,以及围绕它周边的内容。


一、关于SEGGER编译器

可能很多人都知道SEGGER有一个集成开发工具,叫做Embedded Studio,这个工具使用的编译器就是Clang / LLVM和GCC C/C++编译器。


SEGGER编译器其实是一个很神秘的东西,至今尚未公开正式版。但从官方信息猜测他们的编译器指的就是一个“Clang交叉编译器”。



官方一篇博文指出:SEGGER编译器它不仅仅只是另一个GCC工具链。

Clang具有更现代的设计,并且通常被认为比GCC更先进。除此之外,Clang还获得了更为宽松的许可,该许可允许制造可商购的衍生物。ARM / Keil从Clang派生了一个编译器,从而停止了其先前专有编译器的开发。考虑到所有这些,我们决定更深入地研究Clang,以使用它创建我们自己的编译器为目标。


该编译工具链包含:

  • 即可运行的GCC和LLVM / Clang交叉编译器

  • SEGGER 运行时库和浮点库,替换了GLibC或Newlib

  • SEGGER Linker解除了GNU Linker的限制

  • 除GNU和Clang汇编程序外,还有SEGGER汇编程序

  • 带有版本控制集成的多功能项目管理

  • 适用于大多数流行微控制器的支持包和闪存编程算法

  • 专用且紧密集成的调试器

  • 使用GDB协议直接支持J-Link,J-Trace和DAP-Link以及其他调试器


SEGGER将所有内容打包到一个易于下载的“软件包中,完全集成并且可以立即使用。

Clang和GCC都有非常先进的前端,可以将源代码转换为中间表示(IR),并且都可以生成出色的代码。

到目前为止,SEGGER一直专注于针对基于Cortex-M微控制器的ARM Thumb-2代码的代码生成器的更改。


下一步将包括改善与其他编译器的兼容性,而不仅仅是GCC和Clang(针对实用程序和其他专业),以使其易于切换。


二、Embedded Studio

Embedded Studio是SEGGER下面的一款集成开发环境(IDE),和与Keil、 IAR类似,是一款大众化的IDE,相信很多人都知道,并使用。


Embedded Studio目前使用的编译器就是Clang / LLVM和GCC C/C++编译器,并没有真正使用SEGGER编译器。,可免费用于任何非商业用途。


之前硬汉哥对比了Embedded Studio与MDK和IAR优缺点:


优点:

  • 编辑器功能比MDK和IAR强劲太多倍,几乎可以媲美notepad++,VSCode,SI等编辑器,像代码格式化,文件比较,代码提示,专业的代码高亮,各种风格主题等。

  • 超快速的工程启动,现在MDK5和IAR8开机都得反应会,特别是超大工程时,使用Embedded Studio的效果非常明显。同时编译速度也飞快,不比IAR差,比MDK强很多。编译个HAL库,带browse info,速度也是嗖嗖的。

  • 调试工具方面,Embedded Studio简直不要太丰富,因为有JLINK的支撑,像JScope,RTT,SystemWiew,embOSView等都很好用。

  • 个人使用免费,支持全功能, 含Windows, macOS 和 Linux版本。

  • 已经率先支持RISC-V内核。


缺点:

  • 仅支持自家的JLINK

  • Embedded Studio的配置用的不顺手,配置选项多,不像MDK那种直接图形化配置。


三、ARM Embedded Studio
ARM Embedded Studio是ARM公司开发的一款用于开发ARM处理器的集成IDE,使用ACC编译器。


据悉,SEGGER编译器的beta版本已用于ARM Embedded Studio之中,AEGGER编译器免费将其用于非商业用途和评估。

最后,SEGGER编译器就是一个Clang吗,它可免费用于非商业用途,你看好吗?


免责声明: 本文来源网络,版权归原作者所有。如涉及作品版权问题,请与我联系删除。

推荐阅读:
手把手将你从 Svn 迁移到 Git
Windows 内核会换为 Linux 吗?
物联网标准和协议,选择哪种更适合?

关注 微信公众号『strongerHuang』,后台回复“1024”查看更多内容,回复“加群”按规则加入技术交流群。


长按前往图中包含的公众号关注

免责声明:本文内容由21ic获得授权后发布,版权归原作者所有,本平台仅提供信息存储服务。文章仅代表作者个人观点,不代表本平台立场,如有问题,请联系我们,谢谢!

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

MIKROE增加了图形功能,CLANG支持ARM和RISC-V以及许多其他功能

关键字: 编译器 RISC-V架构 工业自动化

IAR Embedded Workbench for Arm已全面支持恩智浦最新的S32系列,可加速软件定义汽车的车身和舒适性应用的开发

关键字: 电机控制 电动汽车 编译器

这款新编译器专为dsPIC®数字信号控制器 (DSC)优化设计,可为实时应用定制许可选项

关键字: 编译器 数字信号控制器 自动驾驶

C语言编译器是一种用于将C语言源代码转换为可执行程序的软件工具。它的主要功能是将C语言代码翻译成机器语言,以便计算机能够理解和执行。C语言编译器通常包括预处理器、编译器、汇编器和链接器等多个组件,它们协同工作以完成编译过...

关键字: C语言 编译器 Microsoft Visual C++

上海2023年9月22日 /美通社/ -- 日前,中国国际工业博览会在上海国家会展中心如约而至。此次展会,威图以"数智赋能、碳见未来"为主题,以丰富的展示形式、详尽的现场产品演示全方位呈现了威图多元应...

关键字: 数字化 锂电 新能源汽车 LAN

(全球TMT2023年9月12日讯)Microland Limited与Serco AsPac宣布建立战略合作伙伴关系,以推动数字化转型,利用云提高业务敏捷性和韧性。Serco AsPac是全球最大的公共服务提供商之一...

关键字: LAN MICRO SE RC

此次合作将专注于提供卓越的数字公共服务、促进业务增长、打造增强的数字体验并加速云采用。 印度班加罗尔2023年9月12日 /美通社/ -- 今日,Microland Lim...

关键字: LAN MICRO 数字化 SE

共享开放新机遇,合作互惠向未来 北京和利雅得2023年9月2日 /美通社/ -- 来自沙特阿拉伯的国际多元化集团阿吉兰兄弟控股(Ajlan & Bros Holding,以下简称"集团")将...

关键字: MIDDOT HOLDING LAN 数字化

局域网(Local Area Network,LAN)是指在某一区域内由多台计算机互联成的计算机组。

关键字: 无线局域网 LAN 水晶头

东京2023年8月17日 /美通社/ -- NIPPON EXPRESS HOLDINGS株式会社(NIPPON EXPRESS HOLDINGS, INC.)的集团公司Nippon Express (Ireland)...

关键字: EXPRESS LAN NI IP
关闭
关闭