对于大多数初学者来说,学习嵌入式,一个比较好的路径是先学好ARM接口知识,然后掌控ARM研发工具ads,学会使用仿真器,写些接口方面的代码。其实,ARM的研发工具是初学者最应该花时间掌握的,这好比一把利剑!这段时间大概需要2个月,这不是开玩笑,因为ARM设计的东西太多了,开发工具也比一般的单片机复杂。
在学习初级阶段,购买一些书籍是非常必要的,因为好的书籍一般都比较系统,这对于自己系统掌握ARM来说是必须的,特别是在身边没有朋友同行的帮助时更应该舍得“投资”。
如果是想搞嵌入式驱动开发,建议看以下的三本书北航的 < <ARM嵌入式Linux系统构造与驱动开发范例>>, < <嵌入式设计及Linux驱动开发指南>>, < <构建嵌入式开发环境>>, < <嵌入式Linux应用程序开发详解>>.个人觉得这些书都很实用.^_^希望对你有用。 我介绍的不一定是最好的,因为毕竟俺还是初级水平。
系统掌控好ARM接口知识后,接着再进行bootloader的学习,如uboot移植连同系统移植等,这时因为之前已有了ARM接口方面的知识,所以uboot学习及移植就会很快了。
关于bootloader的学习,应该算是ARM里面初学者最难突破的环节,但是这又是必须的(个人认为),因为这是掌握ARM底层原理的最好方法!
接着我们能够再移植kernel、制作自己的文档系统。这些都做好后,嵌入式研发环境您就搭好了。下面就能够学习Linux系统编程及Linux驱动研发了。接口的基础会帮您更容易的理解驱动原理。同时,您能够选择一个kernel里已支持的且您比较熟悉的接口的驱动如RTC等,进行分析和学习,并尝试进行修改或照着自己编写。按照这样的流程下来能够少走少许弯路,迅速入门,并且以一个比较合理的流程进行学习。我的Blog也会大致按这样的顺序进行回顾自己的学习过程和撰写文章!