历史上的今天
返回首页

历史上的今天

今天是:2025年08月21日(星期四)

正在发生

2018年08月21日 | 开发系统的大众化的趋势发展

2018-08-21

在过去的几年中,我们注意到的一种发展趋势是,从少数技术爱好者搭建硬件设计和编写软件,转向更大范围活跃的全球“创客(maker)”社区。由此出现的新一代“数字工匠”包括业余爱好者、小发明家、学生、大发明家和平面设计师等群体,人们认识到创客和小型初创企业正在帮助推动物联网技术的采纳。通过采用数字电子技术、软件、机器人和3D打印,结合更传统的工程技术,企业家们正在构建创新的产品。在某种程度上,这可以看作是对大公司生产的封闭式“黑匣子”产品的回应,其产品内部的设计在很大程度上是未知的,且无法访问,因而这些产品经常被替换掉而不是被修复。

 

通过采用低成本和开源的微控制器开发板,免费提供的软件和易于使用的编程语言,使得创客开发的势头得到进一步加强。本文将探讨这种技术大众化背后的历史。

 

传统的开发系统

 

微处理器制造商一直在为他们的产品提供开发系统。但在过去,这些开发系统的价格很高,通常只供大客户使用,原因是它们主要作为教学工具和用来支持软件开发过程。这些开发系统也过于庞大且昂贵,无法用作实际产品开发的基础,因此公司需要经验丰富的工程师团队,且他们必须拥有广泛的技能,才可以创建新产品开发项目所需的硬件和软件。

 

软件开发工具由于使用了专有的编译器和调试硬件,因而也很昂贵。所需要的过程包括在线仿真(ICE),其中目标硬件中的处理器可以用来自开发系统的带状电缆代替。这样就可以监控微处理器的内部状态和外部信号,并在程序运行时触发断点(breakpoints),这是一个强大的工具,但价格肯定不便宜。

 

起源

 

谈及技术能够较大规模获取的时间,可以追溯到20世纪90年代,当时开源运动已经开始,半导体器件的集成度不断提高,导致低成本的系统级芯片(SoC)产品。在软件方面,免费和开源软件运动的开始则更早,可进一步追溯到20世纪80年代后期(虽然直到1998年才采用“开源”这个名称)。 GNU工具和Linux从开源运动中诞生,现在已经成为主要的桌面和嵌入式操作系统之一。在某种程度上,这是因为开源模型可以快速响应新硬件和不断变化的需求,它还可以利用众人的力量快速查找和修复错误,并确定任何安全问题。在硬件方面,在普通芯片上可以集成越来越多的组件功能,导致从集成了系统一些主要功能的昂贵专用集成电路(ASIC)转向成本更低的商用SoC,而SoC几乎不需要外部元件。

 

半导体代工行业的崛起使得能够为特定应用更加经济地制造SoC器件,几乎任何公司都可以使用先进的半导体制造技术,半导体公司不再需要自己进行大量投资,而是可以利用代工厂的投入。

 

半导体公司除了能够不再考虑制造工艺外,作为硅知识产权(IP)的组件也越来越多,其中包括处理器内核、存储器、标准接口和应用加速器等。通过重用这些经过良好测试的组件,模块化的设计方法使得复杂器件的设计实现更加迅速,所节省的成本可以直接让客户受益。

 

新一代开发系统

 

SoC微控制器包含一个或多个处理器内核、闪存和SRAM存储器、外设以及各种行业标准接口。微控制器产品系列通常包括具有不同处理器内核、时钟速度、存储器大小、接口、引脚等参数的多种变体,可以使客户根据他们的需求选择最具性价比的解决方案。

 

微控制器通常还具有片上的支持用来进行系统调试,可通过JTAG或SWD接口访问。这样可以看到微处理器的内部状态,并且能够以最低的额外成本提供许多与传统ICE系统相同的功能,例如记录执行的指令跟踪以及在特定数据或地址值上设置断点。

 

由于持续受益于半导体制造业的规模经济效应,微控制器产品的价格已经急剧下降,因而能够创建低成本的开发板。这些开发板通常包含微控制器和一些外部组件,用于标准通信接口(USB,以太网,蓝牙等)以及环境传感器(例如温度和加速度传感器),还可提供软件库和中间件,使这些开发板板能够成为适于各种应用的完整参考平台。除了用于开发和原型设计外,这些电路板通常很小且价格便宜,因而可用于小批量生产。

 

在最早的单板计算机中,其中的一台是于2011年发布的BeagleBone,由于它体积小,易于连接和不到100美元的低价格,很快就在业余开发者中间受到广泛欢迎。这款产品随后提供了名为“披肩(capes)”的各种附加板,以扩展功能。另一个开源微控制器开发板是Arduino,由于其低成本和简单的操作而获得了巨大的市场成功,并已经创建生产了各种兼容板,包括基于ARM的Arduino Due,以及被称为“屏蔽(shields)”的附加板。现在有许多其他低成本单板计算机可供使用,包括“树莓派(Raspberry Pi)”和微控制器制造商自己生产的产品。虽然这些不遵循开源的哲学理念,但它们体积较小而且价格便宜。

 

image.png?imageView2/2/w/550

图1:最新的BeagleBone范例 - BeagleBone Black。

 

image.png?imageView2/2/w/550

图2:Arduino Due开发版。

 

软件开发工具

 

软件开发工具可从市场软件工具供应商、硬件供应商(支持其产品)和开源获得。商用化工具通常很昂贵(尽管一些供应商可以为个人或学生提供较便宜的使用许可),但是,商用化工具的几乎所有功能现在都可以免费或通过开源产品得到。编程可以在主机PC或笔记本电脑上完成(通常使用C语言),并通过标准接口(如USB)将代码下载到开发板上,这样也可以访问微控制器的调试功能。使用良好的集成开发环境(IDE)可以使编写和调试软件更容易。Eclipse是一个流行的开源IDE,它具有模块化结构,通过插件可支持Java、C、C ++和几种其他语言的编程。

 

2005年,微软针对学生和业余开发者发布了一款功能受限的专业IDE版本,这是一款名为Visual Studio Express的免费产品。目前,这款产品已经被Visual Studio Community所取代,Visual Studio Community能够提供完整版的所有功能。市场上也有各种其他免费程序员编译器,其中许多包括IDE中常见的功能,例如,能够在编译器中编译/调试代码。Arduino有自己的IDE,可提供简化的C编程模型。因此,个体开发人员现在可以访问专业嵌入式开发人员使用的相同工具和设施,而无需大型公司的资源。

 

由于BeagleBone和树莓派等开发板运行Linux,因此也可以直接对它们进行编程,而不是从主机下载代码,这对于Python等交互式编译语言尤其有用。Python一直是最受欢迎的编程语言之一,属于开源,并可免费使用,它有一套全面的程序库和第三方模块,可以访问各种高级功能。它还具有易于理解的句法(syntax),可以快速学习。但由于它必须通过编译,这确实意味着性能不如C/ C++程序好。幸运的是,现代处理器运行足够快,这对许多应用来说都不是问题。如有必要,Python可用于原型设计,最终版本用C语言编写以获得额外性能。

 

在线资源

 

这些开发系统的许多新用户几乎没有接受过硬件或编程方面的正式培训,因此一般是通过在线获得支持并分享他们的项目。开发人员在此可以访问许多资源,几乎所有的开发板/微控制器制造商都开设有论坛,用户可以在这里提问和回答问题。有些公司还通过与这些论坛合作,提供技术和产品支持,并获得市场对有关部产品的反馈。

 

与大部分其他软件一样,开发工具也已迁移到云端。这些工具甚至可以通过低成本的上网本即可使用,它们能够使您轻松地尝试或开始学习新语言,而无需在计算机上设置开发工具,这些还可以避免在多台计算机(台式机和笔记本电脑,家庭和办公室)上设置相同的IDE,并使它们保持同步等问题。基于云端的工具尤其适用于在线协作和代码共享。

 

结论

 

低成本硬件、免费开发工具和易于学习的编程语言的兴起导致了已经开始风靡的DIY电子项目数量的爆炸式增长。市场上提供的开源硬件/软件以及在线资源则赋予了更大的创新能力,而且这种趋势似乎在未来很长时间内都不会改变。


推荐阅读

史海拾趣

EasySync公司的发展小趣事

EasySync公司成立于XXXX年,由一群热衷于同步技术的电子工程师创立。在初创期,公司面临着资金短缺、市场竞争激烈以及技术难题等挑战。然而,创始人们凭借对技术的热爱和对市场的敏锐洞察,不断研发新产品,优化同步算法,逐渐在市场上获得了认可。

Hilscher Gesellschaft für Systemautomation mbH公司的发展小趣事

HVPSI成立于本世纪初,起初是一家小型的技术初创企业,专注于研发高效、可靠的高压电源模块。在创始人及核心团队的带领下,公司迅速在MOV(金属氧化物压敏电阻)模块领域取得了突破。这些模块在电力电子设备中起到了关键的过压保护作用,有效提高了系统的稳定性和安全性。通过不断的技术迭代和产品优化,HVPSI逐渐在行业内树立了技术领先的形象。

台湾丰宾(CapXon)公司的发展小趣事

面对日益激烈的市场竞争,CapXon公司始终坚持以技术创新为驱动,不断推动产业升级。公司投入大量资金用于研发新的技术和产品,以满足市场对高品质、高性能电容器的需求。通过不断的努力,CapXon成功研发出了一系列具有自主知识产权的高性能电容器产品,这些产品不仅具有更高的稳定性和可靠性,而且能够满足更广泛的应用场景需求。

E-Z-HOOK公司的发展小趣事

随着全球化进程的加速推进,E-Z-HOOK公司开始积极拓展国际市场。他们通过参加国际展会、建立海外销售网络等方式,将产品推向全球各地。同时,公司还积极寻求与国际知名企业的合作机会,共同开发新技术和新产品。这些努力使得E-Z-HOOK公司的品牌影响力逐渐扩大,在全球范围内树立了良好的声誉和形象。

Connective Peripherals Pte Ltd公司的发展小趣事

自E-Z-HOOK公司成立以来,其产品线一直在不断扩大。到了1970年代,随着电子行业的快速发展,对测试工具的需求也日益增加。公司的新主人继承了阿尔伯特·史密斯的愿景,并决定进一步扩展产品线。他们引入了一系列新的测试钩型号,以适应不同尺寸和形状的测试点。此外,公司还开始生产其他与测试相关的零部件和组件,以满足客户日益增长的需求。

Hendon Semiconductors公司的发展小趣事

随着全球化进程的加速和国际贸易的不断发展,Hendon Semiconductors积极实施全球化战略,不断拓展国际市场。公司加强与国际客户的合作与交流,了解他们的需求和期望,并根据市场变化调整产品结构和市场策略。同时,Hendon Semiconductors还积极参与国际展会和技术交流活动,展示其最新的技术和产品成果,提升品牌知名度和影响力。通过一系列有效的市场拓展措施和全球化战略的实施,Hendon Semiconductors在国际市场上取得了显著的成绩和突破。

问答坊 | AI 解惑

电子竞赛人应该具备的经验

本帖最后由 paulhyde 于 2014-9-15 09:00 编辑 电子竞赛人应该具备的经验 1.许多人死在第一天上午,却毫无知觉. 第一天上午是一个选题的日子.一般每个组都有一个能力比较强的担任组长.往往由于缺乏经验,在方案选定上走上歧路. 到底 ...…

查看全部问答>

基于Windows CENET的嵌入式PC视频监控系统.pdf

基于Windows CENET的嵌入式PC视频监控系统.pdf…

查看全部问答>

zlib内存解压缩问题!

我将程序代码进行压缩,然后烧进flash里,用zlib进行解压缩时,总是出Z_DATA_ERROR!为什么? 我是用winrar进行压缩的!难道不行吗?…

查看全部问答>

驱动/单片机/嵌入式群 18483749 欢迎高手加入!

名称:驱动/单片机/嵌入式群 群号:18483749 简介:c/c++,单片机,驱动开发,工业控制.技术交流…

查看全部问答>

在ceshell下的SHBindToParent函数有人能解释下如何用吗?请用中文解释,到msdn上抄袭没有意义。 

在ceshell下的SHBindToParent函数有人能解释下如何用吗?请用中文解释,到msdn上抄袭没有意义。 …

查看全部问答>

#define ADC2 ((ADC_TypeDef *) ADC2_BASE)

#define ADC2 ((ADC_TypeDef *) ADC2_BASE) 中(ADC_TypeDef *) ADC2_BASE是什么啊定义一指针变量吗求解…

查看全部问答>

Launchpad串行驱动44键盘

哪位高手有收藏到有基于Launchpad串行驱动44键盘的程序,麻烦分享一下!感激不尽…

查看全部问答>

人人都爱易电源——转发有礼!

人人都爱易电源——转发有礼! 活动主题:人人都爱易电源——转发有礼! 活动时间:10月11日—28日 活动链接:https://bbs.eeworld.com.cn/thread-352431-1-1.html …

查看全部问答>

LM4F231在IAR下的float变量

芯片是LM4F231, ARM M4的内核,开发环境是IAR 6.3。     遇到的问题,当定义局部变量时比如 float f=1.1; 时在IAR下察看local 局部变量值时发现f变量值为 也没有分配变量地址。        对于这一问题研究了很久, ...…

查看全部问答>

SOPC

亲,为什么我用Quratus II 11.0的SOPC生成的SDRAM控制器,没有SDRAM的时钟管脚呀?????…

查看全部问答>