微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 学习嵌入式系统(ARM)的一些想法

学习嵌入式系统(ARM)的一些想法

时间:08-25 来源:互联网 点击:

在学习单片机的时候学的比较快,在学51和AVR的时候都可以说是得心应手。可能就是手前面学习的影响,认为学ARM也会比较顺利。到开始学习ARM的时候才知道要入门是多么“痛苦”,每天就对着教程、资料折磨。没有多少是学的明白的,完全不知道怎么学起。它涉及的内容和知识太多了。我整理了一下这段时间的学习资料,我已经看完的和我接下来要用的,总共29 G,我前10年读书用的资料都可能没有这么多。

学ARM不能再和以前学单片机那样,刚开始时,不能说从哪里开始学。只有拿着资料、教程慢慢磨。久了就积累了一定的知识就会明白了,这个过程的滋味只有做过才能体会。前些天也实在很困惑无从下手。然后就下定决心从Entry入手,从CPU的第一条指令开始,跟着走下去。这样做的阻力更加大,像在Bootload里面我就只会读C和汇编,Makefile、连接脚本、脚本文件、配置文件就没有办法读了。所以根本就不明白它是这么编译的。

很多人都说不要把ARM当做单片机来学。我觉得学嵌入式应该分开内容学习,第一步就是要把它当单片机学起 。把它当单片机学就是要彻底把开发板上的硬件驱动程序全部都学会了(液晶、Nandflash、Norflash、网卡、声卡等)。对片上资源(串口、usb、ad、DMA等等)的驱动和CPU的汇编指令熟练掌握。这样就为移植bootload打下了扎实的基础。

把硬件搞定后就学软件了。学习Linux系统也是个漫长的过程啊!!!!

刚刚见到Linux的时候,“天啊这东西这么能用啊”。要学会Linux的命令和操作(各个软件的操作、各项参数的配置),会使用Linux了就学习Linux下的编程(shell编程、Makefile、连接脚本、C编程),然后就深入学习Linux的内核代码,把Linux的目录结构弄熟了。把它里外都搞定了。

能做到上面的了,那么移植U-Boot和移植Linux内核就小意思了。

整个学习内容分为了几大部分:

1:把ARM当单片机(学它的汇编、开发板上硬件的驱动)

2:Linux的使用(命令、参数配置、编程等)

3:深入学习Linux内核

4:U-boot和Linux内核的移植

5:制作文件系统

6:Linux设备驱动开发

7:应用程序开发(QT)

这些内容对每一个学习的人来说都是要命的工作啊,对于我来说最要命的是,在这个学习过程中的大部分文件和软件都是纯英文的啊!!!!!!慢慢熬吧。要把这些都学了我想最快也要一年吧!不过对于一个人来说,不一定要把所有的都要学会了。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top