列表多图
上一页 1 下一页

嵌入式软件-它有多复杂?

生活中,嵌入式系统离我们越来越近。无论是手机,GPS还是平板电脑,或者是生活中的一些智能服务……

从历史上看,嵌入式系统非常简单:只有几千个内存的8CPU。尽管仍在开发这种简单的系统,但现在有许多资源丰富的设备与一个或多个32位处理器和许多兆字节的内存一起使用。这些设备的强大功能导致软件的大小和复杂性增加。但是,这种复杂性有什么限制?

如果我们看一下机械系统,则存在很大的复杂性。迄今为止,最复杂的机器是航天飞机轨道飞行器,它具有一百万个活动部件。考虑到车辆面临的设计挑战有多大,它们的表现非常出色。

随着时间的推移,电子系统一直在变得越来越复杂,越来越小。在1950年代,复杂的电子设备可能具有100个(分立)晶体管-甚至可能使用了真空管。快进到今天,芯片上的数十亿个晶体管并不少见。每年,芯片的几何尺寸都减小到越来越少的纳米。制作大内存芯片非常容易,因此可以使代码越来越大。

当然,设计是瓶颈。硬件设计非常具有挑战性,需要复杂的电子设计自动化(EDA)。软件开发会有点困难。但这不仅需要工具。

嵌入式主板(新站).jpg

在生活的几乎所有方面(包括嵌入式软件),基本上都有3种方法应对更大的挑战:

        1.加倍努力(即增加人手)

         2.工作时间更长

         3.更聪明地工作

有时(1)和(2)可以互换。例如,在建筑工程项目中,更多的劳动力可能会加快工作速度。但是,如果只是分配更多的人员来从事这项工作,那么软件开发的回报将迅速减少。这主要是因为代码不同部分之间的相互关系以及开发人员进行通信的必然需求。他们最终花费更多的时间进行交流,而不是编码。在某种程度上,开发团队的智能扩张可以带来好处。这需要确定特定的专业知识要求并相应地分配人员。这与嵌入式开发特别相关,在嵌入式开发中,专业领域可能是:应用程序级代码,驱动程序开发,OS配置,网络,UI设计等。

智慧工作听起来像公司的口号,但是让开发人员能够在给定的时间段内创建和调试更多功能。广义上讲,有两种方法:

更高抽象级别的代码

重用现有代码(并使可重用代码)

更高的抽象水平意味着远离常规语言(如C),并拥抱其他范式。可重用代码在很大程度上是面向对象编程(OOP)技术的领域。可以创建可重用的对象,并且OOP可以封装专业知识-再次对于嵌入式特别有用。


0755-88879880
QQ联系方式:52609913
地址:深圳市南山区西丽龙珠三路光前工业区21栋4楼


深圳市朗锐智科实业有限公司专注于物联网方案实施,高效硬件开发(嵌入式主板,工控机,rk3399),提供从云到端的全流程产品研发和生产服务,硬件设计涵盖单片机、arm、x86、DSP等平台,应用技术从数据采集,工业通讯,自动化控制到机器视觉等等,服务领域从电梯安全、油田监控、环保监测、铁路安全、现代化农业到医疗健康等。以物联网综合解决方案为基础,通过高效软硬件开发,服务客户的垂直行业应用,帮助客户实现物联网项目实施