我现在大三,学了单片机,感觉可以入手更高级的微处理器,不准备考研,所以想学(高级)嵌入式。但作为初学者,又很茫然
追答我今年是大四,在大三我也是这么想的,然后大三暑假先学了个STM32,做了几个小实验简单地移植与分析了一下uc/osII,最后剩下的时间我拿来学linux的入门知识和一些应用程序编程,顺便很宽泛地了解了内核某些功能的实现方法以及驱动编写的流程。
在不断的拿STM32与51的比较中,我终于有了点心得,我现在也摸了点看数据手册的门道,这些门道可以让我更加快速地掌握一些新的芯片。就我个人而言,我们学习不能说我们学会使用哪一款芯片,要说我们通过学某款芯片来掌握某一类芯片的高效学习法,你现在掌握cortex-A9如何?明天大家都用了A7,A10A11一大堆可能新的东西,你永远赶不上科技的进步速度。
所以作为一个走了很多弯路的先行者来说,学会{举一反三}和{不断学习}是我对你的学习最好的建议。
那么说说你学嵌入式的原因吧,嵌入式现在人才还是较少,一般高手出去工资很高,所以现在很多人在学。你可能也是这种原因才去学的,然而,有时候我跟老师聊天,(他这方面挺强的,属于少数实干的大学教师之一)他对我说,不要理什么高不高级的,外面企业不理你高不高级,他只会在意你做出来的东西可靠性怎样,成本如何。我觉得也挺有道理,去面试过一些工程师岗位,越发觉得高级不高级是我们学生的一种狭隘的看法,对他们来说好像只有使用的麻不麻烦的感觉。后来我也端正一下自己的一些看法,管他高不高级的,可靠性可用性第一,成本第二,至于我用什么方法实现都无所谓,能用裸机的程序就不要嵌入系统把他搞复杂,反正哪种方式比较简便我就怎么弄。
又扯远了,说那么多的原因就是,如果你不是有兴趣去学嵌入式,我觉得可以不要去钻linux什么的,也许研究一个uc/osII就够你用的(当然,如果想大量使用在你的产品中的话就要考虑清楚了,不是免费的),如果你有兴趣研究嵌入式系统,恭喜你,来玩linux,现在嵌入式linux很火啊,linux的确也挺强大。
我有个同学,他是linux迷,也很喜欢一些开发新产品的工作,所以他学的很好,也很快乐,希望你学习的时候能像他一样,快乐。