ARM与嵌入式linux入门的建议(初学者必看).pdfVIP

ARM与嵌入式linux入门的建议(初学者必看).pdf

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
ARM与嵌入式linux入门的建议(初学者必看),arm嵌入式linux,arm嵌入式linux系统,嵌入式开发板初学者,初学者嵌入式,钓鱼初学者必看,串珠入门初学者必看,吉他初学者必看,口琴初学者必看,自学考试初学者必看

Figolqt 原创 由于很多人总问这个问题,所以这里做一个总结文档供大家参考。 这里必须先说明,以下的步骤都是针对LinuxWinCE 。也许你会注意到,现 在做嵌入式的人中,做linux 研究的人远比做WinCE 的人多,很多产家提供的资 料也是以linux 为主。我一直很难理解,其实WinCE 的界面比linux 的界面好看 多了,使用起来也很方便,更为重要的是,WinCE 的开发和Windows 下的开发 基本一样,学起来简单得多,但是学linux 或者使用linux 做嵌入式的人就是远 比WinCE 多。在和很多工作的人交流时我了解到,他们公司从没考虑使用Win CE,因为成本高,都是使用linux 进行开发。我读研究生的的实验室中也没有使 用WinCE 的,大都研究linux ,也有少部分项目使用vxwork ,但是就没有听说 过使用WinCE 的,原因就是开源!当然现在WinCE6.0 听说也开源,不过在成 本和资源上linux 已经有了无人能挡的优势。与此相对应的是,越来越多的电子 厂商已经开始使用linux 开发产品。举个例子,Google 近期开发的智能手机操作系统Andr oid 其实就是使用linux-2.6.23 内核进行改进得到的。 第一,学习基本的裸机编程。 对于学硬件的人而言,必须先对硬件的基本使用方法有感性的认识,更必须 深刻认识该硬件的控制方式,如果一开始就学linux 系统、学移植那么只会马上 就陷入一个很深的漩涡。我在刚刚开始学ARM 的时候是选择ARM7 (主意是当 时ARM9 还很贵),学ARM7 的时候还是保持着学51 单片机的思维,使用AD S 去编程,第一个实验就是控制LED 。学过一段时间ARM 的人都会笑这样很笨, 实际上也不是,我倒是觉得有这个过程会好很多,因为无论做多复杂的系统最终 都会落实到这些最底层的硬件控制,因此对这些硬件的控制有了感性的认识就好 很多了 学习裸机的编程的同时要好好理解这个硬件的构架、控制原理,这些我称他 为理解硬件。所谓的理解硬件就是说,理解这个硬件是怎么组织这么多资源的, 这些资源又是怎么由cpu、由编程进行控制的。比如说,s3c2410 中有AD 转换 器,有GPIO (通用IO 口),还有nandflash 控制器,这些东西都有一些寄存器 来控制,这些寄存器都有一个地址,那么这些地址是什么意思?又怎么通过寄存 器来控制这些外围设备的运转?还有,noRFlash 内部的每一个单元在这个芯片的 内存中都有一个相应的地址单元,那么这些地址与刚刚说的寄存器地址又有什么 关系?他们是一样的吗?而与norflash 相对应的nandflash 内部的储存单元并不 是线性排放的,那么s3c2410 怎么将nandflash 的地址映射在内存空间上进行使 用?或者简单地说应该怎么用nandflash ?再有,使用ADS 进对ARM9 行编程时 都需要使用到一个初始化的汇编文件,这个文件究竟有什么用?他里面的代码是 什么意思?不要这个可以吗? 诸如此类都是对硬件的理解,理解了这些东西就对硬件有很深的理解了,这 对以后更深一步的学习将有很大的帮助,如果跳过这一步,我相信越往后学越会 觉得迷茫,越觉得这写东西深不可测。因为,你的根基没打好。 不过先声明一下,本人并没有使用ADS 对ARM9 进行编程,我是学完AR M7 后直接就使用ARM9 学linux 系统的,因此涉及使用ADS 对ARM9 进行编 程的问题我很难回答^_^ ,自己去研究研究吧。 对于这部分不久将提供一份教程,这个教程中的例程并不是我为我们所代理 的板子写的,是我在我们学院实验室拿的,英培特为他们自己的实验箱写的,不 过很有借鉴意义,可以作为一份有价值的参考。 第二,使用linux 系统进行一些基本的实验。 在买一套板子的时候一般会提供一些linux 的试验例程,好好做一段时间这个吧, 这个过程也是很有意义的,也是为进一步的学习积累感性认识,你能想象一个从 没有使用过linux 系统的人能学好linux 的编程吗?好好按照手册上的例程做一 做里面的实验,虽然有点娃娃学走路,有点弱智,但是我想很多高手都会经历这 个过程。 在这方面我们深蓝科技目前没有计划提供相应的例程,主要是开发板的提供商会 提供很丰富的例程,我们不做重复工作,只提供他们没有的、最有价值的东西给 大家。 第三,研究完整的linux 系统的的运行过程。 所谓完整的linux 系统包括哪些部分呢? 三部分:bootloader 、l

文档评论(0)

xingkongwd + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档