找回密码
 注册
搜索
查看: 2043|回复: 0

[综合资料] 选择嵌入式设计,第一步最关键!

[复制链接]
发表于 2018-4-17 17:46:35 | 显示全部楼层 |阅读模式
相信很多刚接触嵌入式的人们都会问到这些问题:

——为什么学嵌入式?
——嵌入式究竟有哪些用处?

要弄清楚这些,首先要明白嵌入式是什么?嵌入式是用于控制、监视或者辅助操作机器和设备的技术,随着社会的发展,许多高科技都需要嵌入式来研发,现在嵌入式研发人员比较紧缺,尤其是能力强的人才,一项研发项目往往需要很多研发人员的参与,可能需要一两个月或者一两年才能研发出来一个项目,但只要研发出来就会带我们到新的阶段,会给我们的生活带来许多便利。

学习嵌入式系统,你需要详细了解系统功能层的各部分是如何工作的,也会在面向对象编程、GUI、数据库、网络服务等系统集成层的技术方向进行探索。嵌入式系统可说是麻雀虽小五脏俱全,虽然没有PC和服务器那么复杂,但计算机系统的各种组成一样也不缺。事实上,嵌入式、PC和服务器的界限已经越来越模糊了。以前的嵌入式就是单片机,只能做简单的运算处理,现在的很多嵌入式处理器性能比从前的奔腾还强,打游戏、看电影都没问题,谁能说它不是PC呢?另外有些专用的嵌入式系统已经在充当服务器的功能了,而集群技术更是可以使许多廉价的处理器组合在一起发挥大型服务器的作用。由于嵌入式越来越多地应用到家用电器、汽车和控制领域的各种设施上,无处不在,并且与PC、服务器呈融合的趋势,所以嵌入式行业前景空前的好。那么,为什么说嵌入式人才紧缺呢?

根据统计,目前嵌入式行业的人才缺口达到30-50万,造成这种现象的原因可以归结为两方面:一是嵌入式行业的门槛相对较高,对于从业者理论和技能方面的要求更严格,并且要有一定的实验环境和专业导师的指导;二是目前我国高校计算机教育以应用软件为止,涉及到嵌入式技术的课程较少,这与企业需要的实用型嵌入式人才差距甚远。

其实,学嵌入式系统就是学计算机系统,本质上并没有什么特殊的只有嵌入式系统才有的技术。说嵌入式人才紧缺,其本质上是说真正懂计算机的人才少。

现在很多学校的所谓“软件学院”培养的软件人才都是一叶障目不见泰山的:只懂J2EE和.NET,即便学过C和汇编,也没有把它们作为核心课程;只会调库函数sort(),而对各种排序算法一无所知;设计模式、软件工程讲得头头是道,却不知道好的软件还是要靠牛人靠智商来做的。

学习嵌入式有许多有点,一是不用担心就业问题,二是不必担心自己没有成就。只要能力在,不管到哪里都会需要你的,而且你的能力决定的你成就。现在学习嵌入式的人也不少,但突出的人才不多,这就需要自己的努力了。

网友1
我接触过很多的大学生,马上就要毕业,正在找工作,但是找了很长时间的工作发现,读了四年大学,什么都没学会,看见招聘海报上的岗位要求发现自己完全不懂,就没办法找到一个高薪的工作。这个时候有人说现在嵌入式发展的挺好的,工资都很高,就把嵌入式当成一个救命稻草,觉得只要自己进入这个行业了,那以后就不用愁了。

但是很多初学者根本不知道学会嵌入式后能做什么事情,自己以后的发展和定位,只单纯的把高工资当成目标而来学习嵌入式。学习嵌入式就要先弄明白这个东西到底是什么,能有什么作用,要学习哪些方面的知识,这样你才能从中找到适合自己的发展方向,从而把握自己的学习方向。

简单的说嵌入式分为软件和硬件两个部分。硬件部分主要就是学习 ARM,一方面就是学习接口电路设计,另一方面就是学习汇编和 C 语言的板级编程。从软件方面讲,就是要学习基于 ARM 处理器的操作系统层面的驱动、 移植还有应用程序开发了。这些对于初学都来说必须明确,要么从硬件着手开始学,要么从操作系统的熟悉到应用程序的开发开始学。但不管从哪个方面着手开始学,软硬件都必须学,只是个人的侧重点不同。因此针对于嵌入式系统的硬件层和驱动程的人,ARM的接口电路设计、ARM 的 C 语言和汇编语言编程及调试开发环境还是需要掌握的。针对于应用程序开发和系统层的开发的人,要熟悉Linux操作系统,熟练掌握C/C++,还有数据库和数据结构。

所以对于初学者来讲,要量力而行,不要认为驱动层工资高就把它当成方向了,要结合自身特点和兴趣。嵌入式系统四个层面上那个层面上来讲都是有高人存在,只要你认真学习,获得一定的技术知识,工资当然就高了。

网友2
对于零基础的人,嵌入式学习如何入门呢?如果是电子或计算机专业的人,相对来说会比较容易入门,而非电子或计算机专业的人,应该先从基本的电路和C语言编程开始学。

2学习嵌入式,可以从以下方面入门。

一、模拟\数字电路,C语言编程
模拟电路比较难学,可以选择听一些视频教程,看看最基础的教材,有时间在Multism上做一些仿真实验就可以了。数字电路比较容易学,学习一下视频教程就行了,不管是做嵌入式软件还是硬件开发的人员,对C语言的掌握这个是必需的,特别是对于以后致力于嵌入式软件开发的人,现在绝大部分都是用C语言开发。做好这些之后,前期的准备工作就基本完成了。

二、单片机
掌握proteus仿真,不买硬件也可以学习。学习单片机,一是掌握单片机的各种资源,二是掌握常用元器件和总线。

三、嵌入式操作系统
学习嵌入式系统,如linux下的编程,这些对以后做应用的编程很有帮助。应该对操作系统有所了解,这对你对硬件和软件的理解,绝对有很大的帮助。应该把系统的管理理解一下,比如进程、线程,系统如何来分配资源的,系统如何来管理硬件等等。

四、ARM学习
结合arm芯片手册学习UBOOT的源代码,了解下最小的系统开发,那对你整个嵌入式开发的非常有帮助的,可以的话,还可以学习下linux的源代码,先看看linux 代码早期的版本,比如0.12 的代码等等,如果你全看完了,那基本上就已经入门了。余工Q 二八五九七八零二零三

高级模式
B Color Image Link Quote Code Smilies

本版积分规则

Archiver|手机版|小黑屋|52RD我爱研发网 ( 沪ICP备2022007804号-2 )

GMT+8, 2024-11-23 01:51 , Processed in 0.090276 second(s), 17 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表