查看: 963|回复: 0

【卓跃教育】如何更好学习ARM与嵌入式的六大步骤

[复制链接]

该用户从未签到

发表于 2012-10-18 09:33:52 | 显示全部楼层 |阅读模式
分享到:
现在做嵌入式的人中,做linux研究的人远比做WinCE的人多,主要原因是WinCE成本高。与此相对应的是,越来越多的电子厂商已经开始使用linux开发产品。举个例子,Google近期开发的智能手机操作系统Android其实就是使用linux-2.6.23内核进行改进得到的。下面由卓跃教育为您介绍。 
第一,学习基本的裸机编程。对于学硬件的人而言,要先对硬件的基本使用方法有感性的认识,更必须深刻认识该硬件的控制方式。首先我们要理解硬件,即理解这个硬件是怎么组织这么多资源的,这些资源又是怎么由cpu、由编程进行控制的。如s3c2410中有AD转换器,有GPIO(通用IO口),还有nandflash控制器,这些东西都有一些寄存器来控制,这些寄存器都有一个地址,这些地址的意思?怎么通过寄存器来控制这些外围设备的运转?诸如此类都是对硬件的理解,理解了这些东西就对硬件有很深的理解了,这对以后更深一步的学习将有很大的帮助。 
第二,使用linux系统进行一些基本的实验。买一套板子好好做里面提供的linux的试验例程,这个过程很有意义,也是为进一步的学习积累感性认识。 
第三,研究完整的linux系统的的运行过程。完整的linux系统包括三部分: 
bootloader、linuxkernel(linux内核)、rootfile(根文件系统)。理解这3部分是怎么相互协作来构成这个系统的、各自的作用、三者间的联系、联系方法、系统的执行流程,搞清这问题你对整个系统的运行就很清楚了,对于下一步制作这个linux系统就打下了另一个重要的根基。 
第四,开始做系统移植。在网上下载到相应的源代码,但是这个源代码不可能下载编译后就能在你的系统上运行,需要很多的修改,直到他能运行在你的板子上,这个修改的过程就叫移植。在进行移植的过程中你要学的东西很多,要懂的相关知识也很多,等你完成了这个过程你会发现你已经算是一个初出茅庐的高手了。 
第五,研究linux驱动程序的编写。移植系统并不是最终的目的,最终的目的是开发产品,做项目,这些都要进行驱动程序的开发。 
Linux的驱动程序可以说是五花八门,linux2.4和linux2.6的编写有相当大的区别,就是同为linux2.6但是不同版本间的驱动程序也有区别,因此编写linux的驱动程序变都不是那么容易的事情,对于最新版本的驱动程序的编写甚至还没有足够的参考资料。建议使用、移植一个不算很新的版本内核,这样到时学驱动的编程就有足够的资料了。这部分的推荐书籍可以参考另一篇文章《推荐几本学习嵌入式linux的书籍》。 
您有任何关于ARM和嵌入式的疑问,欢迎咨询在线老师 
第六,研究应用程序的编写。 
做作品做项目除了编写驱动程序,最后还要编写应用程序。现在的趋势是图形应用程序的开发,而图形应用程序中用得最多的还是qt/e函数库。建议使用国产的MiniGUI函数库。MiniGUI的编程比较相似Windows下的VC编程,比较容易上手,效果应该说是相当不错的。不过MiniGUI最大的不好就是没有像qtopia这样的图形操作平台,这大大限制了他的推广,完成这一步你基本就学完了嵌入式linux的全部内容了。 
 
回复

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /3 下一条



手机版|小黑屋|与非网

GMT+8, 2025-1-10 19:58 , Processed in 0.105577 second(s), 15 queries , MemCache On.

ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

苏公网安备 32059002001037号

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.