跳转到主要内容

嵌入式

嵌入式计算需要基于硬件的安全性

cathy /

嵌入式系统正经历重大转型:从物理隔离的自动设备到连接互联网的可访问设备。设计人员了解到,转变的要求远不止将网络接口连接至总线以及添加一个互联网协议堆栈,这令他们非常沮丧。在许多方面,这些互联网感知设计更像小型企业数据中心,而非传统的嵌入式系统。

多项数据中心技术(如多任务处理、多处理和快速专用网络)已经为大型嵌入式系统设计人员所熟知,尽管规模要小很多。但是系统安全性可能是一项新数据中心技术。一旦您将嵌入式系统连接互联网,塑造数据中心安全架构的需求神奇地出现了。不同于计算、存储或连接要求,当您将系统从仓库大小的数据中心缩小为互联的嵌入式设备时,安全需求不会大幅减少。

<strong>数据中心安全性</strong>

那么,数据中心和互联的嵌入式系统在安全性方面有何需求?首先,它们需要保护自己免遭外部攻击和自身应用的内部破坏。这意味着提供一个受保护的范围,在该范围内,对于任何读取或写入代码或数据的尝试,都将在执行前进行验证。这也意味着在可信范围之外,用于操作系统、管理程序、管理或维护的所有系统代码和数据都必须在存储或传输时进行强加密。

优化嵌入式软件的七个技巧

cathy /

之前曾讨论过在许多情况下需要优化的嵌入式系统的关键特征,包括系统时序、代码大小、RAM使用率和能耗。虽然优化每个特征通常要求不同的方法和技术,但开发人员在优化嵌入式软件时可以遵循几个通用技巧。

<strong>技巧1—总是创建基准用于比较</strong>

创建基准用于比较优化结果的必要性显而易见,令人惊讶的是开发团队常常在没有任何基准的情况下匆忙开展优化。基准测量很重要,因为每次优化得到的改进会越来越小。举例来说,第一遍能耗优化可能有20%的改进,第二次有10%,第三次5%,以此类推。开发人员应了解这种趋势,并将他们在系统中获得的改进量化为输入次数的函数。

<center><img src="http://mouser.eetrend.com/files/2018-06/wen_zhang_/100011881-42102-f1.j…; alt=“”></center>

<strong>技巧2—设定优化目标</strong>

要学习STM32,这五大嵌入式操作系统得了解!

cathy /

基于STM平台且满足实时控制要求操作系统,有以下5种可供移植选择,分别为μClinux、μC/OS-II、eCos、FreeRTOS和RT-thread。下面分别介绍这5种嵌入式操作系统的特点及不足,通过对比,读者可以根据自己的应用需求选择合适的平台。

<strong>TOP1:μClinux</strong>

μClinux是一种优秀的嵌入式Linux版本,其全称为micro-control Linux,从字面意思看是指微控制Linux。同标准的Linux相比,μClinux的内核非常小,但是它仍然继承了Linux操作系统的主要特性,包括良好的稳定性和移植性、强大的网络功能、出色的文件系统支持、标准丰富的API,以及TCP/IP网络协议等。因为没有MMU内存管理单元,所以其多任务的实现需要一定技巧。

μClinux在结构上继承了标准Linux的多任务实现方式,分为实时进程和普通进程,分别采用先来先服务和时间片轮转调度,仅针对中低档嵌入式CPU特点进行改良,且不支持内核抢占,实时性一般。

做嵌入式开发知道这些,你才看起来像个高手!

cathy /

做嵌入式系统开发,经常要接触硬件,需要对数字电路和模拟电路要有一定的了解,这样才能深入的研究下去。下面我们简单地介绍一下嵌入式开发中的一些硬件相关的概念。

<strong>电平(Level)</strong>

在数字电路中,分为高电平和低电平,分别用1和0表示。一个数字电路的管脚,总是存在一个电平的,要么高要么低,或者说要么1要到0(其实,还有另一种状态,后面会提到)。

<strong>总线(Bus)</strong>

指纹识别在嵌入式IoT系统中的实现和设计要点

cathy /

随着指纹识别在智能手机上面的普及,指纹识别技术在越来越多的场合中得到应用。除了手机应用之外,在移动支付、门禁系统、智能家庭等嵌入式场景中也逐渐普及开来。在系统实现上面,智能手机本身拥有强大的计算能力和丰富的内存资源,实现指纹识别并不困难,但在嵌入式系统中特别是基于MCU的应用场合,其运算能力、内存资源等都受到限制,本文介绍了一种基于单片机系统的指纹识别方案和设计要点。

<center><img src="http://mouser.eetrend.com/files/2018-01/wen_zhang_/100009743-33112-t1.p…; alt=“” width="600"></center>

如上图所示,这是一个WiFi指纹识别前端的系统框图,其应用场景是:手指按压指纹识别模块时,指纹数据被采集并传输到单片机,单片机经过识别算法对指纹数据进行处理后,把处理结果通过WiFi模块无线传输到云端参与身份识别的业务。

学习STM32必须了解的五大嵌入式操作系统

cathy /

基于STM平台且满足实时控制要求操作系统,有以下5种可供移植选择。分别为μClinux、μC/OS-II、eCos、FreeRTOS和rt-thread。下面分别介绍这五种嵌入式操作系统的特点及不足,通过对比,读者可以根据自己的应用需求选择合适的平台。

<strong>TOP1:μClinux</strong>

μClinux是一种优秀的嵌入式Linux版本,其全称为micro-control Linux,从字面意思看是指微控制Linux。同标准的Linux相比,μClinux的内核非常小,但是它仍然继承了Linux操作系统的主要特性,包括良好的稳定性和移植性、强大的网络功能、出色的文件系统支持、标准丰富的API,以及TCP/IP网络协议等。因为没有MMU内存管理单元,所以其多任务的实现需要一定技巧。

μClinux在结构上继承了标准Linux的多任务实现方式,分为实时进程和普通进程,分别采用先来先服务和时间片轮转调度,仅针对中低档嵌入式CPU特点进行改良,且不支持内核抢占,实时性一般。

单片机应用系统硬件设计应该考虑的11个问题

cathy /

<strong>(1)存储器扩展:</strong>容量需求,在选择时就考虑到单片机的内部存储器资源,如能满足要求就不需要进行扩展,在必须扩展时注意存储器的类型、容量和接口,一般尽量留有余地,并且尽可能减少芯片的数量。选择合适的方法、ROM和RAM的形式,RAM是否要进行掉电保护等。

<strong>(2)I/O接口的扩展:</strong>单片机应用系统在扩展I/O接口时应从体积、价格、负载能力、功能等几个方面考虑。应根据外部需要扩展电路的数量和所选单片机的内部资源(空闲地址线的数量)选择合适的地址译码方法。

基于模型的设计简化嵌入式电机控制系统开发

cathy /

本文描述了围绕基于ARM®的嵌入式电机控制处理器构建的基于模型设计(MBD)平台的详细情况。随后,本文提供最初部署的基本永磁同步电机(PMSM)控制算法示例,并介绍了方便的功能扩展,以包含自动化系统的多轴位置控制。

长期以来,系统和电路建模一直是电机控制系统设计的重要方面。采用MBD方法后,电气、机械和系统级模型用于在构建和测试物理硬件前评估设计概念。MathWorks最新的仿真工具可以对完整的嵌入式控制系统进行建模,包括电气电路和机械系统领域。同时,嵌入式编码工具从控制系统模型生成C语言代码,将控制算法部署在嵌入式控制平台上。

基于模型的设计简化嵌入式电机控制系统开发

cathy /

本文描述了围绕基于ARM®的嵌入式电机控制处理器构建的基于模型设计(MBD)平台的详细情况。随后,本文提供最初部署的基本永磁同步电机(PMSM)控制算法示例,并介绍了方便的功能扩展,以包含自动化系统的多轴位置控制。

长期以来,系统和电路建模一直是电机控制系统设计的重要方面。采用MBD方法后,电气、机械和系统级模型用于在构建和测试物理硬件前评估设计概念。MathWorks最新的仿真工具可以对完整的嵌入式控制系统进行建模,包括电气电路和机械系统领域。同时,嵌入式编码工具从控制系统模型生成C语言代码,将控制算法部署在嵌入式控制平台上。

这些工具实现了基于模型的设计过程,人们可以在最终硬件测试前先在仿真平台上进行设计并完全测试。成功构建MBD平台的关键是分隔系统模型和嵌入式软件代码。一旦MBD平台使用已知算法和系统进行测试后,便可开发新算法,并在仿真平台上以系统工作极限安全地测试。