
不要相信那些人说的,嵌入式入门必须要有C语言基础,这倒是真的,至于专业的话没有那么严格的限制。
你可以尝试以下学习路线:
(1) C语言是所有编程语言中的强者,单片机、DSP、类似ARM的种种芯片的编程都可以用C语言搞定),因此必须非常熟练的掌握。
推荐书籍:《The C Programming Language》 这本经典的教材是老外写的,也有中译版本。
(2) 操作系统原理,是必需的,如果你是计算机专业毕业那也就无所谓了,如果是非计算机专业的就必须找一本比较浅显的计算机原理书籍看一看,把啥叫“进程”“线程”“系统调度”等等基本问题丛早咐搞清楚。
(3) (3)Linux操作系统就是用C语言编写的,所以你也应该先学习下Linux方面的编程,只有你会应用了,才能近一步去了解其内核的精睁友髓。
推荐书籍:《UNIX环境高级编程》(第2版)
(4) 了解ARM的架构,原理,以及其汇编指令,我们在嵌入式开发中,一般很少去写汇编,但是最起码的要求是能够看懂arm汇编。
(5) 系统移植的时候,就需要你从最下层的bootloader开始,然后内核移植,文件系统移植等。而移植这部分对硬件的依赖是非常大的,其配置步骤也相对复杂,也没有太多详细资料。渗纯
(6) 驱动开发
linux驱动程序设计既是个极富有挑战性的领域,又是一个博大精深的内容。
linux驱动程序设计本质是属于linux内核编程范畴的,因而是对linux内核和内核编程是有要求的。在学习前你要想了解linux内核的组成,因为每一部分要详细研究的话足够可以扩展成一本厚书。
以上只不过是大概的框架,在实际的开发中还会涉及很多东西,比如:交叉编译、makefile、shell脚本等等,所以说学习嵌入式的周期较长,门槛较高,自学的话更是需要较强的学习能力和专业功底。只要能坚持下来一定会取得成功!
不过关于嵌入式的学习,还是要给你一些建议,嵌入式技术的门槛是比较高的,根据你的描述,你之前应该没怎么接触过嵌入式技术,我建议你找个好的嵌入式机构,在老师的指导下系统专业的学习一下这方面的知识,嵌入式培训机构,我向你推荐华清远见,他们目前在北京、上海、深圳、成都、武汉都有分中心,方便的话可以实地考察一下,华清远见和国内外很多知名企业都有合作关系,是国内首选的嵌入式培训专家,华清远见的网站上面有很多嵌入式相关的详细信息,你可以在线看一下华清远见相关嵌入式技术专题的视频,先对这个行业有更多了解,具体知道关键的技术点,更好地往这个方向发展。具体也可以电话咨询华清远见的专业老师!
所谓嵌入式,其实也属于单片机的范畴,只不过属于单片机中的高端应用而已。目前在单片机领域中占主导的编程语言是汇编和C,楼主既然昌枯有了C的基础,再深入进去不会很难,当然前提是付出心血学习。做迅袭
提个建议吧,如果仅仅是为了兴趣的话,有了C的基础,去了解LINUX并不是难事,毕竟它也是用C编出来的。
如果想在这方面有所发展的话,楼主可以先去学习汇编,了解计算机的各层定义,有了汇编打底子,再加上C,一定会有所发展的
另:嵌入式系统现在和未来都会有很大的空间,前纯兄景很好的,祝你成功!
不一定非要计算机专业的人才能学,只要肯钻陆卖,任何人都可以学。linux源代码开放,而且不是X86架构,所明茄以不用担早槐逗心学不会
可以的,比可以自学,也可以去培训机构学习,虽然要嫌指花点M,但斗液对你也会有帮助的,关键是自学要有很强的芹销配自制力才行。加油。。
你干脆报个嵌入式入门培训班算了。咱不学长的,学个短期的我觉得就顶用了。