【第43期】一文读懂嵌入式系统

嵌入式系统

对于不懂这方面知识的人来说,嵌入式系统这个词可能显得比较深奥,其实嵌入式系统和普通人的生活联系非常紧密。手机、U盘你一定很熟悉吧,它就是典型的嵌入式系统;MP3、MP4、微波炉、有线电视机顶盒,你一定不陌生,它也是嵌入式系统;汽车、ATM自动取款机、电梯等等都属于嵌入式系统。以上仅从应用方面感性的认识嵌入式系统,但它并不是嵌入式系统的真正含义。

那么嵌入式系统真正的含义是什么?现在国内流行的说法是:“嵌入式系统是以应用为中心,以计算机技术为基础,并且软硬件可裁剪,适用于应用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。”对于这个定义,我有两点疑义:其一,说嵌入式系统“以计算机技术为基础”,我认为不全面,它忽略了微电子等技术作为嵌入式系统基础的重要作用;其二,把嵌入式系统定义为“专用计算机系统”,我认为不正确,它混淆了嵌入式系统与计算机系统的区别。何立民老师说得好:“嵌入式系统不是专用计算机系统”,嵌入式系统是一个智能化的控制系统。

嵌入式系统主要组成

1、处理器内核

嵌入式系统的心脏是处理器内核。处理器内核从一个简单便宜的8位微控制器,到更复杂的32位或64位微处理器,甚至多个处理器。嵌入式设计人员必须为能够满足所有功能和非功能时限、要求的应用选择成本最低的设备。

2、D/A和A/D转换器

D/A和A/D转换器是用来从环境中搜集数据并反馈的。嵌人式设计人员必须了解需要从环境中搜集数据的类型、数据的精度要求和输入/输出数据的速率,以便为应用程序选择合适的转换器。嵌入式系统的反应特性受外部环境决定。嵌入式系统必须有足够快的速度跟上环境变化,以此来模拟信息,例如光、声压或加速度被感知并输入到嵌入式系统中。

3、传感器和执行机构

传感器一般从环境中感知模拟信息。执行机构通过某些方式控制环境。

4、用户界面

这些界面可以像LED屏一样简单,也可以像工艺精良的手机和数码相机的屏幕那样复杂。

5、应用程序的特定入口

类似于ASIC或者FPGA的硬件加速,是用来加速在应用程序中有高性能要求的特定功能模块。嵌入式设计师必须利用加速器获得最大的应用程序性能,来对程序进行适当的筹划或分区。

6、软件

在嵌入式系统开发中软件是一个重要的部分。在过去几年,嵌入式软件的数量已经增长得比摩尔定律还快,几乎是每十个月就成倍增长。嵌入式软件在某些方面性能、存储器和功耗、经常被优化。越来越多的嵌入式软件通过高级语言来编写,如C++/C++。而更多的性能关键的代码段仍然使用汇编语言来编写。

7、存储器

存储器是嵌入式系统中重要的部分,嵌入式程序可以在没有RAM或ROM的情况下运行。有许多易失的和非易失的存储器用于嵌入式系统中,关于此内容在书的后面会有更多的说明。

8、仿真和诊断

嵌入式系统很难看见或接触到。调试的时候需要接口与嵌入式系统相连。诊断端口,如JTAG联合测试行动组、就常常用于调试嵌入式系统。片上仿真能用来提供应用程序的可见性行为。这些仿真模块能可视化地提供运行时的行为和性能,实际上由板上的自诊断能力取代了外部逻辑分析仪的功能。

 

本期华章妹给大家推荐几本电子嵌入式系统设计的书。

 

《STM32库开发实战指南:基于STM32F103(第2版)》

推荐语:本书主要介绍STM32的库函数,以及如何使用库的方式进行开发,使初学者能够在此基础上迅速入门,掌握STM32的开发方法。本书基于ARM—CortexM3内核的STM32F103芯片,紧紧围绕“库”展开,系统地讲述了STM32固件库的原理、使用方法。

《Linux设备驱动开发详解:基于最新的Linux 4.0内核》

推荐语:本书介绍了Linux设备驱动开发理论、框架与实例,详细说明了自旋锁、信号量、完成量、中断顶/底半部、定时器、内存和I/O映射以及异步通知、阻塞I/O、非阻塞I/O等Linux设备驱动理论,以及字符设备、块设备、tty设备、I2c设备、LCD设备、音频设备、USB设备、网络设备、PCI设备等Linux设备驱动架构中各个复杂数据结构和函数的关系,并讲解了Linux驱动开发的大量实例,使读者能够独立开发各类Linux设备驱动。

《FFmpeg从入门到精通》

推荐语:本书是一本介绍FFmpeg的实战技术指南,全书共10章,分为两个部分。部分(第1~7章)为FFmpeg的命令行使用篇,介绍了FFmpeg的基础组成部分、FFmpeg工具使用、FFmpeg的封装操作、FFmpeg的转码操作、FFmpeg的流媒体操作、FFmpeg的滤镜操作、FFmpeg的设备操作。第二部分(第8~10章)为FFmpeg的API使用篇,介绍了FFmpeg封装部分的API使用操作、FFmpeg编解码部分的API使用操作,FFmpeg滤镜部分的API使用操作,相关操作均以实例方式进行说明,包括新API及旧API的操作。

 

 《FPGA基础、高级功能与工业电子应用》

 

推荐语:本书首先阐述了FPGA的基本原理和架构,其次介绍了FPGA的新功能、特点,以及如何解决工业应用中的问题。书中探讨了FPGA的设计方法,并结合机电一体化、机器人和能源系统应用案例与实践。

 

《嵌入式软件系统测试:基于形式化方法的自动化测试解决方案》

推荐语:本书总结了作者多年的嵌入式软件系统测试的工程实践经验,基于形式化方法,提出了完整的自动化测试解决方案。全书从嵌入式系统的构成、分类和特点入手,介绍嵌入式软件工程及管理方法,讨论嵌入式软件系统测试理论及测试环境构建等技术,并结合航电系统嵌入式软件测试实例,为实现自动化测试提供有效的解决方案。本书既适合从事军用/民用领域嵌入式系统开发、验证及维护的专业技术人员阅读,也适合高等院校计算机、软件工程、嵌入式系统等专业的学生参考。

 

《FPGA Verilog开发实战指南:基于Intel Cyclone IV(基础篇)》

推荐语:本书包括32个章节,按照先易后难的顺序进行讲解,分为硬件说明篇、软件安装篇、基础入门篇和学习强化篇四大板块。从基础的硬件介绍、软件安装到基本电路开发,手把手教学。考虑到大多数学习者为FPGA初学者,所以本书把操作中的每个步骤都尽可能详细的介绍和描述,并附上大量的截图以供学习者实操参考。

第042期赠书活动中奖名单公布

赠书规则

送书规则:感谢大家对华章图书的信任与支持。在留言区围绕嵌入式系统谈谈你的看法。小编会在留言池随机捞2条锦鲤,分别包邮送出1本正版书籍。以上4本书可任选一本。

截止日期:2月26日下午17:00

特别注意:请按规则留言。阅读最多、分享最多者优先。

更多精彩回顾

书讯 | 2月书讯 | 读新书,过新年。

资讯 | DB-Engines 2月数据库排名:三霸主集体“亮红灯”?小众数据库不可小觑

书单 | 寒假怎么过?经典计算机教材助你弯道超车

干货 | 盘点最重要的7个Python库

收藏 | 2021最新Web开发趋势

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值