据笔者了解,90%以上的嵌入式开发人员在选型开发工具时,都会听从MCU厂商的建议。大多数MCU厂商会推荐自己公司的免费开发工具,主要原因有两点:第一,大多数客户都有降成本的需求,MCU厂商的开发工具是免费的,完美契合了这一需求;第二,芯片厂商希望通过从开发工具,到支持库文件,最后到MCU一整套的生态,全程提供服务,并且通过这个生态,尽可能的扩大客户更换芯片的隐形成本,增加客户粘性。

那么,面对各种免费开发工具的诱惑,有些人已经选择免费,而有些人仍然坚持用收费的第三方工具,那么,工程师是应该选择MCU厂商配套的工具,还是选择付费的第三方的商用工具,这次就以IAR的开发工具为例,给大家做个全面的对比。

1.芯片支持:芯片厂商的开发工具仅支持自己的芯片,整个工具链都是与自有芯片高度绑定,虽然工具本身免费,但是所有工具链不与其他品牌的芯片兼容,更换芯片时,原来积累的代码迁移难度较大。

对比成本来说,多数情况下芯片的成本是远远高于开发工具的,使用免费的厂商工具,未来更换芯片品牌的研发成本会远远高于商用工具,隐形成本比工具成本更高。

2.编译效率:免费的工具编译器效率普遍较低,对于成本要求较高的客户,较低的编译效率会拖慢执行速度,占用更多的FLASH空间,也有可能造成硬件成本上升,或者性能变差。

国内很多嵌入式工程师在实现应用上经验丰富,但是对更底层的编译效率不太重视。我这里换个角度,使用IAR的编译工具可以使你的芯片和程序性能直接提升10%~30%,这样应该能说明一款好工具的重要性。

3.使用效率:免费的开发工具还是存在有很多的问题,并且使用不如IAR的Embedded Workbench方便。主要原因是免费工具只有极少量的开发人员维护和迭代,基本上都是局限于特殊的用途,通用性不佳。一旦选择免费工具,由于需求变化,经常还要学习其他各种免费的配套工具,学习和熟悉的过程很长,浪费的时间不是一点半点。

上图是一个工作效率对比示例,一款优秀的工具不仅学习起来很快,而且很多高级功能可以帮助工程师提高工作效率,越用效率越高。而MCU厂商的工具主要是基础功能,没有专业工具方便,当新的项目需要更换芯片厂商时,又要重新熟悉一款工具,到头来看似什么工具都会用,但其实编程水平和效率没有提升,不如使用专业的收费工具。

  1. 保障:免费的工具普遍没有人提供专门的支持,很多以论坛的形式,依靠用户群和爱好者相互解答,用爱发电,没有时效的保障。尤其中文的资料少之又少,且质量不高,毕竟大多数工程师对开发工具并不了解,经常不会使用又求助无门。所以成熟的大公司很少采用免费工具,付费的工具可以避免不必要的风险。

  2. 价格:一套IAR的商用工具价格普遍在1~10万,对于很多对成本控制严格,出货总量不高,并且开发工作量很小的项目,使用IAR的工具是要考虑到成本的。例如一个产品的总的预期销售额只有几百万,那么购买开发工具的成本已经达到1%以上,那么还是要综合以上的几点综合考虑。

总结:对于部分应用,的确有使用免费工具节省成本的必要,尤其对于部分企业或者部门,可能只是临时有个项目需要做嵌入式开发,未来尚不确定,可以考虑使用免费工具。但是如果看长远发展,为了搭建好研发平台,或者是是比较重要的商业项目,开发工具的成本可以说是微乎其微,IAR还是最香的选择。

免费开发工具与IAR工具的比较相关推荐

  1. 传智播客C/C++各种开发环境搭建视频工具文档免费教程

    传智播客作为中国IT培训的领军品牌,一直把握技术趋势,给大家带来最新的技术分享!传智播客C/C++主流开发环境免费分享视频文档中,就有写一个helloworld程序的示范.火速前来下载吧 所谓&quo ...

  2. 开发常用的在线工具网站(免费)

    后端开发常用的在线工具网站(免费) 在线流程图导图网站 https://www.processon.com 随手画个流程图之用,有创建上限超了要开会员,可以把旧的保存本地在线的删了重复利用,坚持白嫖. ...

  3. ARM开发软件及实用工具介绍

    一.编译器介绍 1.ADS1.2     ADS是ARM公司的集成开发环境软件,他的功能非常强大.他的前身是SDT,SDT是ARM公司几年前的开发环境软件,目前SDT早已经不再升级.ADS包括了四个模 ...

  4. [转]新版.Net开发必备十大工具

    本文转自:http://www.cnblogs.com/zxhoo/archive/2011/04/02/2002905.html 几年前MSDN上的一篇文章<Ten Must-Have Too ...

  5. 高性能WEB开发(6) - web性能测试工具推荐

    Posted on 2010-04-28 12:57 BearRui(AK-47) 阅读(9341) 评论(14)  编辑  收藏 所属分类: 高性能WEB开发 本来这篇文章应该在写在前面的,因本人写 ...

  6. 十个免费的WEB压力测试工具

    两天,jnj在本站发布了<如何在低速率网络中测试 Web 应用>,那是测试网络不好的情况.而下面是十个免费的可以用来进行Web的负载/压力测试的工具,这样,你就可以知道你的服务器以及你的W ...

  7. 微软的python开发工具_面向 Python 开发人员的 Azure 工具

    面向 Python 开发人员的 Azure 工具Azure tools for Python developers 08/06/2020 本文内容 Visual Studio CodeVisual S ...

  8. 开发者福利:史上最全Android 开发和安全系列工具

    取证工具 bandicoot - 一个Python工具箱,用于分析手机元数据.它提供了一个完整,易于使用的环境,数据科学家分析手机元数据.只需几行代码,加载数据集,可视化数据,执行分析和导出结果. A ...

  9. 采用.NET CORE的全异步模式打造一款免费的内网穿透工具--NSmartProxy

    什么是NSmartProxy? NSmartProxy是一款免费的内网穿透工具. 特点 跨平台,客户端和服务端均可运行在MacOS,Linux,Windows系统上: 使用方便,配置简单: 多端映射, ...

最新文章

  1. 手把手教你 Socket 通信(TCP/IP)
  2. java自考真题_自考04747JAVA语言程序设计(一)历年真题试卷下载
  3. git 可视化工具_WEB开发者必备工具集
  4. 基本响应性的Web设计测试工具
  5. Spring Batch作为Wildfly模块
  6. 在webstorm中使用Jade for Meteor,模板template语法“+templateName”不能使用的解决方案...
  7. Nature重磅综述|关于RNA-seq,你想知道的都在这(续)
  8. 使用“管道”与“应用程序生命周期”重构:可插拔模块
  9. 如何使用Snagit修剪视频?
  10. 初次了解struts的action类
  11. 【Python】Python爬取小说标题及内容——晋江文学网
  12. 欧路词典的词典导入教程
  13. 拓扑排序算法原理及Java代码实现
  14. 【转载】DEDE与DISCUZ整合积分同步[会员表,积分表
  15. PHP公历农历转换(阴历阳历转换)阴历和阳历转换
  16. 已斥资250亿!东京奥运会的AI黑科技能否如期亮相?
  17. Linux驱动开发中的中间件:设备树
  18. linux或者UC/OS
  19. Thinkpad x60 Bios设置指南
  20. No.053<软考>《(高项)备考大全》【冲刺7】《软考之 119个工具 (5)》

热门文章

  1. 多年编码经验血泪史总结,你若想学Python,必须看完这几点再做决定
  2. 启动某个程序的时候,提示端口8000被占用解决方式
  3. css3中边框的4种样式
  4. 好莱坞经典十大战争电影排行榜 男人必看十大战争片
  5. [附源码]java毕业设计病历管理系统
  6. Mysql横向分组统计
  7. 同仁堂-十大王牌、十大名药
  8. POLYWORKS案例:MTU航空发动机 - 最前沿的机翼检测技术
  9. 在大厂,我和同事搞对象(别人的故事总是这么香)
  10. HObject,unsigned char的相互转换