天涯论坛

 找回密码
 立即注册
搜索
查看: 77|回复: 6

嵌入式和单片机的区别在哪?

[复制链接]

3032

主题

312

回帖

9909万

积分

论坛元老

Rank: 8Rank: 8

积分
99099078
发表于 2024-8-4 09:59:56 | 显示全部楼层 |阅读模式

单片机和嵌入式,其实什么标准的定义来区分她们针对进行过单片机和嵌入式研发研发来讲,都有她们自己的定义,接下来,就谈谈这两个概念的深入理解。

什么是单片机

首要知道概念,什么是单片机,单片机是一种集成电路芯片,是采用超大规模集成电路技术把拥有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、按时器/计数器等功能(可能还包含表示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一起硅片上形成的一个小而完善的微型计算机系统,在工业掌控行业广泛应用。

从上世纪80年代,由当时的4位、8位单片机,发展到此刻的300M的高速单片机。例如最经典的51系列单片机,外观只是一起一个拇指体积的长方体芯片,共40个引脚,里面包括规律运算单元。实质便是一个cpu。

在最起始接触单片机的时候,还曾经有过一个疑问,为何单片机是黑色的而不能够是别的颜色,后来才晓得是单片机材料的限制。

对单片机而言,其实一个芯片便是所有,其他的例如单片机最小系统都是为了单片机的正常运作而加入其他元件,例如晶振,5v电源,电感电阻等。当然最小系统只能保准单片机正常运行,几乎实现不了基于单片机的任何应用。

为了使单片机实现应用,必要要加入其他外设。例如按键,led灯,led屏,蜂鸣器,各样sensor。这便是市面上非常多机构都在做的单片机研发板。

总结,单片机便是完成运算、规律掌控、通信等功能的单一模块。便是单片机真的姓“单”。DSP芯片能够认为是一个单片机。当然它们性能很强大,然则功能依然很单一,总之便是处理数据、规律

什么是嵌入式

那样什么是嵌入式呢,通常说嵌入式都指的是嵌入式系统,IEEE(InsTItuteof Electrical and ElectronicsEngineers,美国电气和电子工程师协会)对嵌入式系统的定义:“用于掌控监测辅助操作设备和设备的安装”。

嵌入式系统是一种专用的计算机系统,做为安装或设备的一部分。一般,嵌入式系统是一个掌控程序存储在ROM中的嵌入式处理器掌控板。

嵌入式系统是将应用程序、操作系统、和计算机硬件在一块的系统,指的是以应用为中心,以计算机技术为基本,软硬件可裁剪,其针对的用户应用对功能、靠谱性、成本、体积、功耗和运用环境有特殊需求的专用计算机系统。

事实上,所有带有数字接口的设备,如手表、微波炉、录像机、汽车等,都运用嵌入式系统,有些嵌入式系统还包括操作系统,但大都数嵌入式系统都是由于单个程序实现全部掌控逻辑。这是由于嵌入式系统通常用于工业掌控便是说对外设的掌控都是写死的,并不必须人工干涉同期为了保准系统的稳定和靠谱

咱们经常能够听到机构招聘的需求是嵌入式软件工程师嵌入式硬件工程师,便是说嵌入式系统包含软件和硬件,其实仔细想想能明白,都已然跑系统了,当然有软件有bsp硬件啦。

便是说嵌入式系统是软硬件结合体,国内广泛认同的嵌入式系统定义为:以应用为中心,以计算机技术为基本,软硬件可裁剪,适应应用系统对功能、靠谱性、成本、体积、功耗等严格需求的专用计算机系统。

嵌入式的硬件层

硬件层中包括嵌入式微处理器、存储器(SDRAM、ROM、Flash等)、通用设备接口和I/O接口(A/D、D/A、I/O等)。在一片嵌入式处理器基本上添加电源电路、时钟电路和存储器电路,就构成为了一个嵌入式核心掌控模块。其中操作系统和应用程序都能够固化在ROM中。

其中核心便是微处理器,嵌入式处理器和通常的电脑cpu还有区别,嵌入式微处理器大多工作在特定设计的系统中,例如TIAtmel机构都有非常多定位区别的处理器,atmel的SAM系列是专门为物联网设计的,AVR则因为性能非常明显,广泛应用于工业行业

嵌入式微处理器有各样区别的体系,即使在同一体系中可能拥有区别的时钟频率和数据总线宽度,或集成为了区别的外设和接口。据不完全统计,全世界嵌入式微处理器已然超过1000多种,体系结构有30多个系列,其中主流的体系有ARM、MIPS、PowerPC、X86和SH等。

但与全世界PC市场区别的是,一种嵌入式微处理器能够主导市场,仅以32位的制品而言,就有100种以上的嵌入式微处理器。嵌入式微处理器的选取按照详细的应用而决定的。

在嵌入式行业能够说arm架构的处理器占据了半壁江山,而arm机构作为著名的科技机构,而它却生产任何处理器,而只是供给了IP,能够看出一流机构做标准。而其他用的比较多的架构便是sparc、powerpc等。

例如arm机构各样各样的处理器架构,最经典的cortex系列,它属于ARMv7架构,这是到2010年为止ARM机构最新的指令集架构。ARMv7架构定义了三大分工明确的系列:“A”系列面向尖端的基于虚拟内存的操作系统和用户应用;“R”系列针对实时系统;“M”系列对微掌控器。

嵌入式系统和外界交互必须必定形式的通用设备接口,如A/D、D/A、I/O等,外设经过和片外其他设备的或传感器的连接来实现微处理器的输入/输出功能。每一个外设一般仅有单一的功能,它能够在芯片外能够内置芯片中。外设的种类非常多,可从一个简单的串行通信设备到非常繁杂的802.11无线设备。

嵌入式系统中常用的通用设备接口有A/D(模/数转换接口)、D/A(数/模转换接口),I/O接口有RS-232接口(串行通信接口)、Ethernet(以太网接口)、USB(通用串行总线接口)、音频接口、VGA视频输出接口、I2C(现场总线)、SPI(串行外围设备接口)和IrDA(红外线接口)等。这一点其实和单片机类似。

嵌入式的软件层

便是操作系统了,包含内核和文件系统,还有便是更为顶层的应用程序,嵌入式操作系统通常都是Linux其他类Unix,还有有些实时操作系统(RTOS)例如VxWorks、RTEMS、ucOS等。

其中Linux还包含区别的distribuTIon,例如Ubuntu、Redhat、Debian、centos等,她们都是采用Linux的内核,区别的是上面的software和tools,当然不消太过于担心标准问题,这些Linux发行版选取的软件几乎都是比较通用的,例如网页服务器的Apache、电子邮件服务器的postfix、sendmail、文件服务器的Samba等。另外还有Linuxstandard base等标准来规范研发者。类Unix重点是FreeBSD以及Solaris等。

嵌入式行业最常用的还是有些实时操作系统,实时操作系统的核心便是实时性,本质便是任务处理所华为时间的可预测性,即任务必须在规定内时限内完成。IEEE对实时系统的定义是“哪些正确性不仅取决于计算的规律结果取决于产生结果所花费时间的系统”。

实时操作系统有硬实时和软实时之分,硬实时需求在规定的时间内必要完成操作,这是在操作系统设计时保准的;软实时则只要根据任务的优先级,尽可能快地完成操作就可。我们一般运用的操作系统在经过必定改变之后就能够变成实时操作系统。

那样实时操作系统和Linux这种分时操作系统的区别列举如下:

(1)多路性。实时信息处理系统与分时系统同样拥有多路性。系统按分时原则为多个终端用户服务;而对实时掌控系统,其多路性则重点此刻经常对多路的现场信息进行采集以及对多个对象或多个执行公司进行掌控

(2)独立性。实时信息处理系统与分时系统同样拥有独立性。每一个终端用户在向分时系统提出服务请求时,是彼此独立的操作,互不干扰;而在实时掌控系统中信息的采集和对对象的掌控彼此互不干扰。

(3)即时性。实时信息系统对实时性的需求与分时系统类似,都是以人所能接受的等待时间来确定;而实时掌控系统的即时性,则是以掌控对象所需求起始截止时间或完成截止时间来确定的,通常为秒级、百毫秒级直至毫秒级,乃至有的要小于100微秒。

(4)交互性。实时信息处理系统拥有交互性,但这儿人与系统的交互,仅限于拜访系统中某些特定的专用服务程序。它不像分时系统那样能向终端用户供给数据处理服务、资源共享等服务。

(5)靠谱性。分时系统需求系统靠谱,相比之下,实时系统则需求系统高度靠谱由于任何差错都可能带来巨大的经济损失乃至没法预料的劫难性后果。因此呢,在实时系统中,采取了多级容错办法保准系统的安全及数据的安全。

因为更加靠谱即时。嵌入式实时操作系统更加广泛应用于工业掌控、航空航天、军工等行业例如美国航天局NASA近几年发射的火星探测器等都是采用的RTEMS实时操作系统。

嵌入式的中间层

所说的中间层便是软件层和硬件层之间的接口层,其实严格而言属于软件层。通常研发叫作之为BSP,这一层重点负责的是向下供给硬件的驱动,硬件的配置等操作,向上则向软件研发供给标准API,进行中间层研发研发一般叫作为嵌入式驱动工程师。

这儿能够看出来,嵌入式设计和软硬都分不开,既要把握底层硬件的特性以及怎样驱动其工作,认识操作系统的关联知识,才能够编写相应功能的应用。

因此呢看一个操作系统是不是支持某个芯片某个研发板,只要看其源码中是不是包括相应芯片或研发板的板级支持包。

嵌入式系统应该跑在什么样的硬件上

谈起嵌入式硬件研发板,我想非常多第1印象便是RaspberryPi,是一起仅有信用卡体积的微型电脑,别看其外表“娇小”,内“心”却很强大,视频、音频等功能通通皆有,可谓是“麻雀虽小,五脏俱全”。树莓派推出后,非常多厂商争相推出类似制品例如香蕉派之类的。

还有TI的Beagleboneblack板子,体积体积和树莓派类似,外设包含有USBhost和USBmini以及网卡接口,背面还有一个sd卡槽和HDMI接口。BBB的处理器采用的是当前嵌入式系统中最流行的ARMv7指令集。采用当今广泛运用的指令集的处理器能够更加多的软件支持。例如,有些操作系统已然不支持在ARMv6指令集上运行,例如,Ubuntu在2012年4月放弃了对ARMv6指令集的支持。

ARMv7相对与ARMv6指令集的另一个优良在于,运用ARMv7的处理器的实质性能更加强劲。ARMv7相对与ARMv6的优良还有非常多例如有些明显的改进:实现了超标量架构、包括了SIMD操作指令、改进了分支预测算法从而极重加强了某些性能。

总结

以上便是一起基本的嵌入式核心板所拥有的性能参数,和上面说到的单片机的性能参数相比较,单片机的处理能力较低,主频大多在几十M上下,和嵌入式动辄上百上千M的处理速度还是相差较多,另外单片机并不拥有图形界面的处理能力,便是GPU的缺乏引起单片机几乎不可能带动图形界面。

单片机的存储空间和嵌入式处理器不是一个等级的,单片机一般片内存储仅有几k体积,而因为外设的限制不太可能大范围增多外设emmc,而嵌入式处理器一般有几百兆的RAM,如此巨大的差别引起单片机几乎不可能像嵌入式处理器那样运行操作系统,乃至连TCP/IP协议栈和USB协议栈都跑不起来,有些高端的单片机例如ST机构的STM32系列,可能能够有些轻量级的系统os和嵌入式网络协议栈,例如IwIP协议栈。

嵌入式处理器丰富强大的性能决定它能完成更加多单片机不可完成的应用,例如网络通信功能,视频传输处理功能等,而当外设存储增多后,嵌入式处理器能够容易运行各样Linux系统,以及图形GUI界面。

研发方式上单片机和嵌入式很强差别,便是编译过程的区别,单片机重点在Windows等图形界面下研发日前非常多成熟的IDE工具例如keil、IAR、以及ti的CCS等,这些工具集编译、汇编、链接、仿真为一体,并且因为在Windows下研发拥有友好的用户界面,研发者只需编写c代码,而后点击编译链接按键就可显现错误还能够debug仿真,上手还是非常快的。

而嵌入式研发通常是在Linux下进行的,要将c代码在自己主机上编译完成,而后经过系统镜像uboot引导将编译好的文件烧入研发板,因为主机的处理器的x86架构,而编写的代码是为了运行在arm架构或sparc架构的处理器上,因此呢存在一个交叉编译链的安装,另外,Linux下Windows那样的IDE,便是编译,链接源代码都必须研发者自己完成,通常都是利用GNUmake脚本编写Makefile以及configure文件来完成,Makefile文件中编写怎样对ch文件编译,便是编译规则以及依赖文件是什么。这些都必须研发者自己完成。并且以上过程都是在Linux下的终端便是命令行中完成,这给嵌入式研发增多了难度。

1.Cortex-M3的有些关键概念!

2.6 个 Linux 运维典型问题,大牛告诉你处理思路!

3.4个知识点帮你理清ARM研发思路!

4.用python在树莓派上编程,你能够将项目扩展到令人难以置信的规模

5.CPU vs FPGA,图像处理谁更厉害?

6.图解 | 芯片总动员之”齐刘海“背面奥密

免责声明:本文系网络转载,版权归原作者所有。如触及作品版权问题,请与咱们联系,咱们按照供给的版权证明材料确认版权并支付稿酬删除内容。





上一篇:区块链3.0在哪?“跨链技术”你不可不知
下一篇:挂靠环评师等8人获刑!车间换风次数出处在哪?生物质锅炉废气汞产污系数取多少?有依据不?
回复

使用道具 举报

0

主题

1万

回帖

1

积分

新手上路

Rank: 1

积分
1
发表于 2024-8-21 07:17:05 | 显示全部楼层
太棒了、厉害、为你打call、点赞、非常精彩等。
回复

使用道具 举报

55

主题

488

回帖

553

积分

高级会员

Rank: 4

积分
553
发表于 2024-9-4 05:43:34 | 显示全部楼层
认真阅读了楼主的帖子,非常有益。
回复

使用道具 举报

0

主题

392

回帖

1

积分

新手上路

Rank: 1

积分
1
发表于 2024-9-4 20:54:32 | 显示全部楼层
请问、你好、求解、谁知道等。
回复

使用道具 举报

55

主题

488

回帖

553

积分

高级会员

Rank: 4

积分
553
发表于 2024-9-8 08:47:40 | 显示全部楼层
论坛是一个舞台,让我们在这里尽情的释放自己。
回复

使用道具 举报

3047

主题

3万

回帖

9606万

积分

论坛元老

Rank: 8Rank: 8

积分
96065852
发表于 2024-10-21 05:36:44 | 显示全部楼层
祝福你、祝你幸福、早日实现等。
回复

使用道具 举报

3048

主题

3万

回帖

9910万

积分

论坛元老

Rank: 8Rank: 8

积分
99109040
发表于 2024-10-26 15:33:46 | 显示全部楼层
“沙发”(SF,第一个回帖的人)‌
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

站点统计|Archiver|手机版|小黑屋|天涯论坛 ( 非经营性网站 )|网站地图

GMT+8, 2024-11-23 05:21 , Processed in 0.137984 second(s), 21 queries .

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.