开发灵活且可扩展的嵌入式软件已成为产品开发的重要方面。越来越多的公司不是开发单个单片产品,而是开发一个核心平台,从中可以创建几个不同的产品线。在核心代码中,有时会有所需的软件行为未知,并且必须满足特定产品需求。为了实现代码灵活性,开发人员可以使用回调功能。
传统的嵌入式软件应用程序存在于单个连续的空间中,具有唯一的ID,内存和代码均坐在一起且易于访问。当然,这使得黑客一旦踏入门,就可以很容易地访问整个系统。嵌入式系统安全的关键是隔离。开发人员可以改善隔离的一种新方法是利用ARM®M23/33微控制器中的新Trustzone®功能。在这篇文章中,我将介绍读者如何使用Trustzone保护安全功能,但仍能从非安全内存区域访问它们。
软件体系结构是其组件中体现的系统的基本组织,彼此之间的关系以及环境的关系以及指导其设计和进化的原则。软件体系结构并不是要创建一次并将其设置为石头。相反,软件体系结构应在整个产品的一生中发展和变化。多年来,我听到工程师和经理讨论了软件体系结构应该从编码工作中出现,就好像是通过魔术一样。相信一个新兴的,干净的建筑就像相信将一包意大利面倒入开水中会导致烤宽面条面条。
温度传感器对于广泛的应用和用途至关重要,包括消费电子,环境监测和工业处理。为了确保精确,准确的温度读数,必须选择正确的温度传感器。鉴于市场上有各种各样的选择,选择最合适的温度传感器可能很难。本文指导选择最适合特定应用的温度传感器。
运行时断言在开发和执行逐项合同原理中捕获错误的力量。但是,并非需要在运行时验证嵌入式系统中的所有假设。某些条件可以并且应该在编译时检查,以确保代码的正确性甚至在运行之前。这是静态断言发挥作用的地方。
对于每个嵌入式软件开发人员和团队来说,性能是关键的指标。无论您是开发资源受限的设备,高性能模块还是仅仅是普通的系统,浪费的时钟周期都会花费金钱,时间和能量。如今,许多嵌入式系统都是由RTO构建的,但是根据我的经验,团队通常几乎不考虑其性能。
大多数现代嵌入式软件应用程序都是从闪存存储和执行的。 Flash为基于微控制器的应用程序提供了廉价且快速的存储介质。尽管这些应用程序通常是实时应用程序,在这些应用程序中,执行时间和确定性行为至关重要。虽然闪存很快,但它不如从RAM执行代码快。为了加快基于Flash的应用程序的执行时间,开发人员可以选择性选择关键功能并从RAM中执行它们以获得额外的速度提升。
Lumeova的任务是通过其Wirays技术创新无线连接。该公司总部位于北卡罗来纳州罗利市,正在解决我们这个时代最紧迫的挑战之一:对更快,更可靠的无线数据的增长需求。 Lumeova创始人兼首席执行官Ali Khatibzadeh在接受Embedded.com的采访中提供了对公司专有技术的见解。
随着物联网的发展并在现场部署了更多的边缘设备,无疑将在这些设备中很大一部分电池操作。电池操作的无线边缘节点很方便且具有成本效益,因为它们不需要访问电气基础设施,并且可以轻松部署。电池操作的设备的潜在问题是,当开发人员在枪支下构建设备并在门外时,电池寿命是他们脑海中的最后一件事。开发人员在整个开发周期中可以做几件事,以确保他们能够正确管理设备的能耗。
有关开发人员如何通过在RAM中执行时间敏感功能而不是从Flash中执行时间敏感功能来加快其应用程序代码的文章。您可能想知道是否要进行这样的调整,表现会发生什么变化?答案会根据微控制器的制造技术而有所不同,但是开发人员可以使用三种技术来衡量其应用程序或功能性能:
无论是嵌入式系统在电池上运行还是连接到电网,设计绿色并最小化能源消耗的系统都是大多数系统的常见要求。现代嵌入式系统中最大的能源消费者之一是微控制器,并且了解如何最大程度地减少其能源消耗至关重要。即使您查看一个微控制器家族,每个处理器架构都将具有略有不同的低功率功能。在这篇文章中,我们将研究ARM Cortex-M处理器核心中的基本低功率模式以及如何使用它们。
在单片机系统广泛应用于工业控制、智能家居、医疗设备等众多领域的当下,其稳定性与可靠性至关重要。然而,实际工作环境中存在着各种各样的干扰源,如电磁干扰、电源波动、静电放电等,这些干扰可能导致单片机系统出现数据错误、程序跑飞甚至系统死机等问题。为确保单片机系统能够在复杂环境下稳定运行,采用有效的硬件抗干扰方法成为必然选择。