我对嵌入式一些概念名词简单的理解「建议收藏」

我对嵌入式一些概念名词简单的理解

大家好,又见面了,我是全栈君。

通常我们都有这么一个模糊的概念,我以前做单片机,单片机是不是嵌入式系统呢?

当然是。只不过呢,我们现在把它看成一个低端的嵌入式系统。通常我们所说的嵌入式系统是指什么呢?指像“ARM+LINUX”这样结构的系统。 低端的单片机系统和高端的ARM+LINUX这种结构有什么不同呢? 单片机系统在8位的单片机系统上跑一段程序,实际上呢,就是一段应用程序。这个架构比较简单。 ARM+LINUX系统呢,最下层是硬件,往上呢是驱动程序->操作系统->最上面呢是应用程序。最下面的硬件一般比较复杂,32位的系统(ARM、PPC、MIPS、X86等)。 在整个架构上有很大不同。如果要开发ARM+LINUX这样系统的时候,需要了解更多的知识,比如:什么是操作系统?驱动程序如何挂在到操作系统上?应用程序如何通过操作系统对硬件进行操作等等。

这样看来ARM+LINUX的架构比8位单片机这个架构要复杂很多。

一.单片机和ARM的区别

1. 单片机主要是面向于低端市场,实现一般性的控制功能,单片机一般单片集成CPU,RAM,ROM,各种外设。

2. ARM主要面向更复杂的嵌入式产品,主频更高,外围接口功能更加丰富。

3. ARM将逐渐取代单片机,成为嵌入式产品的通用硬件平台。

二.ARM是什么?什么是ARM9,ARM11,ARMCORTEX

1. ARM是一家公司,它不做芯片生产,销售,只是设计芯片内核,并把知识产权给芯片制造商。ARM是一门技术科学,它也是一种芯片。

2. ARM11系列微处理器ARM公司近年推出的新一代RISC处理器,它是RAM新指令架构,ARM11处理器瞄准的是高端的移动无线,消费类电子,网络和汽车电子应用,而且ARM11内核的很多特性使它还能充分适应高端嵌入式实时应用系统,如未来的网络和家庭娱乐产品。

3. ARMCORTEX不是代表更高端,而是一个全新的系列,CORTEX分三个系列:A系列,R系列,M系列,在R系列里,实时性高,多用于汽车电子和特殊行业,并且在实际开发中很少遇到,M系列终端快,多应用于机械加工领域,典型的产品有M0,M3,M4,其中M0是为了

抢占传统的51单片机市场,M3是为了取代ARM7,M4在M3的基础上增加了DSP和MPU,这是为了与低端的DSP处理器竞争,A系列是面向应用的,如苹果公司的iphone4就是cortexA8架构的,但是A系列的底层嵌入式开发难度很大,国内很少有公司有实力开发ARM  A系列处理器并采用

三.ARM9和ARM11的区别

1. 主频不同,2440是400M,6410是533/667M.

2. 处理器的版本不一样。

3. 6410在视频处理方面比2440要强很多。

4. 6410采用的是DDR内存控制,2440采用的是SDRAM内存控制器。

5. 6410为双总线架构,一路用于内存总线,一路用于Flash总线。

6. 6410的启动方式更加灵活,主要包括SD,Nand Flash NorFLash和oneFLash等设备启动。

7. 6410的NondFLash支持SLC和MLC两种架构,从而大大扩大存储空间。

8. 6410具备8路DMA通道。

9. 6410的性能高于2440,ARM11通常跑操作系统,ARM9可跑可不跑。

10. 6410还支持2D和3D的图形加速。

四.嵌入式行业中的职业划分,分4种

1. 硬件工程师,包括电路工程师,芯片工程师,PCBLayout工程师,MCS51硬件工程师,ASIC设计工程师FPGA.(即硬件层)

2. 内核开发,内核优化,系统移植工程师,将LINUX系统进行移植和简单的裁剪修改使之运行起来。(即操作系统层)

3. 核心底层工程师,深入理解LINUX内核并且有一定的硬件知识,精通C语言,数据结构,最难的是自己写一个驱动出来,可以看时序图,电路图等。(即驱动层)

4. 嵌入式应用软件工程师,有LINUX平台或WINCE平台开发经验,熟悉C++,可以开发基于QT,GTK(图形库)等C++应用程序,比如手机上的QQ等这些相对来说简单。(即应用层)

 

寄语:我们知道,嵌入式系统是一个很有前景的行业。学会嵌入式技术,就相当于给自己创造了更多的机会。那么, 现在可以预计的将来,嵌入式技术的应用会越来越广泛(大量的人才需求,未来五年内,国内LINUX嵌入式软件开发的人才缺口达到120万)如果你想往这方面发展的话:

第一:把心踏实下来,做好打硬仗的准备。

第二:注意学习方法。尽量不要走弯路,争取一鼓作气入门。一旦入门了以后呢就好办了。嵌入式技术的掌握,本身呢就比较难,要是再走些弯路,时间上会浪费,甚至会影响学习的信心。

最好的学习方法:

做项目,如果有机会大家跟着做一个难度适中的嵌入式项目,相信大家会很快入门的。也就是说从实战之中来获得进步。

技术道路不是一朝一夕,有人领你进门更好,自学也得有一本时间的明细账本,希望有兴趣从事这个行业的朋友们,学有所成!

转载于:https://my.oschina.net/u/3629177/blog/1537311

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/108156.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • Go学习——密码学

    Go学习——密码学

  • Unity Excel转json且自动生成C#脚本

    Unity Excel转json且自动生成C#脚本excel转json且自动生成c#脚本

  • 学习使用口令激活成功教程工具:hashcat、LC、SamInside

    学习使用口令激活成功教程工具:hashcat、LC、SamInside在学习使用口令激活成功教程工具之前,我们要先创建一个用户账号,原理是利用其哈希值进行激活成功教程。很关键的一点是,要在虚拟机里面创建用户!!!很关键的一点是,要在虚拟机里面创建用户!!!很关键的一点是,要在虚拟机里面创建用户!!!重要的事情一定要说三遍。在宿主机(我是win10系统)创建用户获取的hash值是假的,根本无法用于激活成功教程。我个人猜测,是由于宿主机存在某种保护机制,使得不让获取到真正的hash。因…

  • 设备驱动外传 – 虚拟总线和platform device「建议收藏」

    设备驱动外传 – 虚拟总线和platform device「建议收藏」1.总论2.系统初始化platformdevice3.驱动程序使用platformdevice   1.总论Linux-2.6.11引入了设备模型的概念,将大部分设备驱动挂载到虚拟总线上。其目的在于:1)提供友好的用户接口,用户可以在sys/bus/platform/下找到相应的驱动和设备。2)更有利于电源管理。  2

  • CSS常见问题

    CSS常见问题

  • Linux基础之正则表达式

    Linux基础之正则表达式正则表达式:又称规则表达式。(英语:RegularExpression,在代码中常简写为regex、regexp或RE),计算机科学的一个概念。正则表达式通常被用来检索、替换那些符合某个模式(规则)的文本。正则表达式是对字符串(包括普通字符(例如,a到z之间的字母)和特殊字符(称为“元字符”))操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号