菜鸟求问,从零基础到学完掌握arm嵌入式要多久?

2019-07-16 07:56发布

小弟是一名在校的学生,专业是电子信息工程,如今马上就要上大三了,开始对就业方向考虑了。我对嵌入式方向比较感兴趣,想学习ARM方面的知识:
1.在仅剩的两年时间里,足不足够学好ARM?
2.学习ARM需要哪些基础知识做铺垫?
3.学习ARM的同时要不要学习Linux?
4.ARM嵌入式是否有分为几个小向






在这里先谢谢大家。

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
8条回答
619841516
2019-07-16 16:20
首先,以我本人的经历,我可以肯定的告诉你:肯定可以的。
我也是去年大三刚刚开学的时候,跟着老师做项目,做了差不多4个多月的样子,我主要是负责做底层的固件开发,包括内核移植、内核驱动的开发、文件系统的制作等等;刚刚接触嵌入式Linux的时候,也是零基础,要学的东西很多,当时也看了很多书,我觉得首先要熟悉Linux开发的流程。
学ARM的话,我个人觉得还是要以嵌入式Linux为主,毕竟不跑系统就觉得很浪费资源,学Linux要熟悉一些常见的shell命令、Kbuild和Kconfig规则(内核的Document目录下面有相关的介绍)。最常用的shell命令不是很多,前期入门的时候,不要花太多时间去学shell,熟悉最常用的十几个命令就可以了,后面遇到不懂得再去查。
嵌入式Linux,主要分为用户空间的应用程序开发和底层固件开发。一般而言,固件工程师的要求要高于应用软件工程师的层次,而其中的 Linux 设备驱动编程又是 Linux 程序设计中比较复杂的部分,究其原因,主要包括如下几个方面:
a. 设备驱动属于 Linux 内核的部分,编写 Linux 设备驱动需要有一定的 Linux 操作系统内核基础;
b. 编写 Linux 设备驱动需要对硬件的原理有相当的了解,大多数情况下我们是针对一个特定的嵌入式
硬件平台编写驱动的;
c. Linux 设备驱动中广泛涉及到多进程并发的同步、互斥等控制,容易出现 bug;
d. 由于属于内核的一部分,Linux 设备驱动的调试也相当复杂。

一周热门 更多>