要阐述这两者之间的关系, 首先得搞清楚什么是嵌入式系统?什么是单片机?
嵌入式系统, 即embedded system, IEEE(美国电气和电子工程师协会)对嵌入式系统的定义是:“用于控制、监视或者辅助操作机器和设备的装置”,其实,国内教材里一般对嵌入式的定义好像更容易理解:是以应用为中心,以计算机技术为基础,软件硬件可裁剪,适用于对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。以应用为中心, 说明每个嵌入式系统是专用的,有其具体的应用场景。嵌入式系统是专用的计算机系统, 这是和通用计算机系统来对比的, 通用计算机系统是什么呢?通用计算机系统就是笔记本,pc, 服务器等, 这些通用计算机系统,可以帮助我们完成更通用的操作。不管怎么说, 嵌入式系统也是计算机系统, 所以要从事嵌入式方向工作, 同样需要学习基础的计算机技术, 如c语言、c++、数据结构、网络编程等等。嵌入式系统是专用的, 那么都用在哪里呢? 嵌入式系统的应用范围太广了, 以下是大家都能从书上看到的, 罗列一下:
1,个人通信与娱乐系统 , 如手机,数码相机,穿戴产品等
2,家电类产品: 数字电视,智能家电, 扫地机器人等
3,办公自动化: 打印机,复印机等
4,医疗类: 生化分析仪,ct 等
5,网络通信类
6,汽车电子类
7,工业控制类
8,军工航天类等等
其实, 关于嵌入式系统, 还有这么一句话, “所有的电子产品,但凡用到了嵌入式处理器,都可以称之为嵌入式系统”。
那么什么是嵌入式处理器?嵌入式处理器是一个比较大的概念, 细分一下, 又可以分为以下:
1,嵌入式微控制器mcu(micro controller unit)
MCU内部集成ROM,RAM、总线逻辑、定时计数器、看门狗、IO、串口、AD、DA、FLASH等。典型代表是8051、8096、C8051F等。
2,嵌入式DSP处理器(digital signal processor)
这类和我们今天要谈的有点距离, 暂且不谈
3,嵌入式微处理器mpu (micro processor unit)
MPU由通用处理器演变而来,具有较高的性能,拥有丰富的外围部件接口。典型代表是AM186/88、386EX、SC-400、PowerPC、MIPS、ARM系列等
4, 嵌入式片上系统soc (system on chip)
我们常说的单片机,现在来说,指的就是MCU。
单片机, 即single-chip micorcomputer, 通过大规模集成电路技术, 讲cpu, ram, rom, io, 中断, timer 等集成在硅片上, 变成一个小型计算机。
一说到单片机, 就不得不提51单片机 、stm32。
51单片机,其实就是一系列单片机的统称。该系列单片机,兼容Intel 8031指令系统。它们的始祖,是Intel(英特尔)的8004单片机。注意,51单片机并不全是英特尔公司的产品。包括ATMEL(艾德梅尔)、Philips(飞利浦)、华邦、Dallas(达拉斯)、Siemens(西门子)、STC(国产宏晶)等公司,也有很多产品属于51单片机系列。
STM32,是意法半导体公司推出的基于ARM+Cortex-M内核的通用型单片机。意法半导体(STMicroelectronics)是世界最大的半导体公司之一,于1987年6月成立,是由意大利的SGS微电子公司和法国Thomson半导体公司合并而成。1998年5月,SGS-THOMSON+Microelectronics+将公司名称改为意法半导体有限公司。
总结以上, 嵌入式系统是一个大类, 单片机是其中一个子类而已。嵌入式系统是一个完整的专用的计算机系统, 而单片机是缺少外设(peripheral)的专用计算机系统。但随着芯片技术的发展, 随着越来越多的外设被集成的到单片机, 现在的单片机和嵌入式系统的差异越来越小了。
现在人们区分嵌入式系统与单片机, 更多的是从软件角度来看。 如果芯片不支持mmu, 不支持虚地址, 只能裸机运行(不跑操作系统)或只能运行RTOS(如ucos,freertos)的称之为单片机。而如果芯片支持mmu, 支持虚地址, 可以运行操作系统,如linux, android, vxworks 等, 则称之为嵌入式系统。
以上就是嵌入式系统与单片机的关系, 讲得不对之处, 请大家海涵。
讲的很详细!
哈哈,之前一直有点乱,不过现在看了一下总结,理解的更透彻了!!!
引用: w494143467 发表于 2021-4-8 16:52 哈哈,之前一直有点乱,不过现在看了一下总结,理解的更透彻了!!!
可以加我的QQ,大家一起讨论交流
引用: cdhqyj 发表于 2021-4-12 14:12 可以加我的QQ,大家一起讨论交流
表达能力很强,值得学习!
讲得很详细很通俗易懂,把单片机和嵌入式系统间的区别表达得很清楚, 赞一个
学习了!我觉得这两个概念可以从好多角度解读!
刚整明白USART和UART两者区别的嵌入式小白来学习了
单片机的开发,只是嵌入式中的一个分支。对于硬件工程师而言,悲哀的地方在于,单单是学精单片机这一支,就需要花掉很多精力。而老板们通常不会考虑这一点,只要是需要的,就会让开发人员开干。这一点,和穿软的程序员们也是一样的,为了工作,不得不被迫学习多种开发语言、开发架构。难啊。
我认为计算机操作系统,也可以认为是一种嵌入式操作系统,其原理根嵌入式操作系统很相似