|
|
29#
weidongshan
发表于 2020-7-13 16:02:45
|
只看该作者
其实Linux的学习跟cortex A、ARM9什么没关系,
你学习时操作的是CPU之外的寄存区,跟CPU的架构没什么关系的。
你的问题应该是:怎么入门。
这问题都是类似的,我已经回答过,在贴一下:
嵌入式Linux系统有这些组成:u-boot, linux, 驱动, APP。
很多初学者喜欢按照这个流程学习:先学习裸机熟悉开发板,再学习u-boot,接下来学习驱动,最后学习APP。
学习裸机需要2、3个月,学习u-boot也需要2、3个月,结果工作中u-boot基本不用改,并且u-boot比驱动开发还难!
按这套流程下来,学了后面忘了前面,最惨的是:不能快速上手工作,消耗学习热情!
所以我建议:
1.不需要再学习裸机,即使你对硬件操作不熟,只要懂LED、按键的原理就可以。
在Linux系统中,在入门阶段可以不涉及寄存器编程,裸机什么的也就不用学习了。
2.不学uboot,会烧写UBOOT、会执行UBOOT命令就可以了,如果你的工作就是该UBOOT那再去深入学习
3.学习Linux APP开发基础知识,比如文件读写、LCD编程、触摸屏编程、网络通信、进程通信、多线程编程
4. 学习一些Linux驱动基础,不需要太深入,会点灯、知道设备树,会用中断就可以。
为什么还要学习驱动呢?让你有个概念,以后你跟其他工程师交流时不至于懵逼。
并且中断程序引入的进程、线程、休眠唤醒、POLL、异步通知等概念,对于APP开发也很有帮助。
5. 直接上项目:把驱动基础、APP基础融合起来做一个项目
6.入门之后再按需学习,工作中涉及驱动就去学习驱动,工作中涉及什么再去深入研究。 |
|