一直记得上单片机的第一节课上,老师介绍单片机时,是这样说的:“单片机姓单”。为什么要强调这一点呢?方便容易分不清的童鞋,以后每次想问这个问题的时候都想想这句话。
了解的人其实很容易分开它们,实际上他们也没有什么可比性。
首先,见过单片机的人,都知道,其实单片机只是一块芯片,里面有运算器、存储器等组成的一个具有逻辑、运算、通信等功能的单元。说的再具体点,实际一个CPU、
DSP芯片也可以认为是一个单片机。当然它们性能很强大,但是功能依然很单一,总之就是处理数据、逻辑。
其次,单片机可以完成很多的任务处理,但一般都是跟一定的外围设备进行协作,比如,添加LED灯,实现交通灯系统;添加液晶屏,实现动画播放等。(当然很多同学都已经在大学期间自己完成过一个最小系统)
最后,我们来总结一下单片机,单片机是完成运算、逻辑控制、通信等功能的单一模块。
相信我的上述讲解中,大家发现到了,单片机真的就是姓“单”(这个字读dan)。
针对嵌入式的概念是有些模糊定义的,一般情况下指的都是嵌入式系统。正因为这个概念有些模糊,所以会导致很多人对该概念的模糊认识。(就像大学中的一门课程,既可以叫做数字信号处理,也可以叫做数字信号处理器)。
如果可以按照面向对象的思想理解的话:可以说嵌入式是父类,嵌入式系统是抽象继承类,银行自助取款机是具体子类,郑州轻院正门口旁工行自助1号取款 机是对象。如果这样,这个概念还不清楚的话!就来个生活中的比方:大猩猩吃香蕉,一个大猩猩要吃一棵大树上的香蕉,自己使劲跳就是够不着,于是找来了几个 箱子,垫下脚就能够在树上摘下可口的香蕉了。
为了做到吃香蕉这件事,大猩猩做了这么一件事,找来几个箱子,摞起来,然后摘到了香蕉,那么大猩猩和箱子是否就构成了摘香蕉的这么一个系统。如果大 猩猩找来的是梯子的话,那是不是能够摘到更多好吃的香蕉;如果大猩猩找来了姚明,让姚明来摘香蕉,那岂不是能摘到所有它所想要的香蕉了-_-。这里,把大 猩猩比喻成单片机或者是片上系统(SOC),箱子为外围设备(比如LED灯),那么大猩猩的例子是不是就成了一个交通灯的系统了。那么所有的为了完成单一 任务的体系我们都可以认为是一个嵌入式系统。
还拿大猩猩摘香蕉的例子,我们制作了一台摘香蕉的机器,这里我们把大猩猩变成机器中的核心处理器,箱子变成机器的可伸缩机器爪。核心处理器告诉机器爪要往哪个方向,哪个高度采摘香蕉。那么核心处理器和外围设备机器爪及电源等,就构成了一个嵌入式系统。
嵌入式系统这个概念模糊就模糊在,它并不跟具体实物相关,它肯定有个核心逻辑单元,该逻辑单元可以是单片机、CPU、DSP以及其他的一些处理芯 片,它还甚至可以是一个模拟电路。嵌入式系统是一个独立存在的模块,它专门为处理某个特定任务而生。嵌入式系统存在的主要意义就是,它可以优化设计,降低 成本。就跟例子中讲的,可以把箱子换成梯子,提高效率。大猩猩换成姚明降低成本(要知道,如果让大猩猩去摘香蕉,可比邀姚明摘香蕉成本高哦!)。
那么,现在能够总结一下嵌入式这个概念了,实际上是一个功能模块,专门负责某项特定的工作。其他的生产设备可以轻易的将这个模块嵌入到它们的设备中使用。比如,阿波罗号中的导航仪系统,就是一个嵌入式系统。
如果你很了解系统的话,从系统层面来解释嵌入式概念,也会很清晰。我们平时用的windows系统(当然你可以用linux内核的其他系 统,linux系统本身就是一个嵌入式操作系统)自然不是嵌入式操作系统,嵌入式系统是一种要求实时性很高,而且系统可裁剪的。(说着说着,发现嵌入式概 念展开来说太多了)对!windows CE系统,windows embedded系统等都是嵌入式操作系统,他们最大的特点就是系统可裁剪,抢占式系统内核。想想为什么他们的系统是可裁剪的了,正中上面所解释的嵌入式 概念,可裁剪是为了制作一个精简的,完成特定任务的定制系统,这样做无疑降低了成本,优化了设计。当然,这里不能把嵌入式系统就单单理解为一个可裁剪的操 作系统。
如果还是搞不清的人,我可以这样来解释(我也不知道这样对不对),除了通用计算机(就是能够安装不同软件运行的计算机),所有其他为了解决某个或某些特定任务的计算机都是嵌入式。比如,MP3音乐播放器、导航仪、电视机、洗衣机等等。
再回到题头说到的问题,单片机跟嵌入式是一种什么关系了?
就像物联网一样,国家大力发展,所有公司都争相去做。但大家都给不出来一个准确的什么才是物联网。
有些洗衣机厂家员工,干了一辈子,都不知道自己在做嵌入式行业。"概念问题只是形式,只要专注自己的目标、行业,我们自己也能成为一款性能优良的嵌入式系统"。当然,如果你的志向是国家主席,每天关注全国所有大小事情,做一台通用的计算机系统也是很受大家钟爱的!