如何看懂uboot源码 如何学习嵌入式?
如何学习嵌入式?
我来发表文章下我的观点。说下我的方法,更适合在校大学生,大家有什么见解希望能纠正讨论。
为什么不说比较适合在校大学生呢,只不过在校大学生时间充裕。而参加过工作的人,时间就是金钱,还不如最少太长时间如何自学,还不妨报个培训班速成,但培训班的缺点很有可能那就是基础不牢(这个是个人见解,如有有所不同意见也也可以去看看我写的自学经历,依据什么自己的基础进不了相应的步骤即可)。
我以为学习任何东西也是是需要分模块的。各个模块熟悉了之后串站了起来(个人经验)
叮嘱!!
提醒!!
叮嘱!!
玩嵌入式是有点儿费钱的。不过得之吾幸,这个看你们自己把握了。
下面我说下我的方法
一、嵌入式两类几个模块(给自己学的勇气)
二、手动档学什么(打基础)
三、五阶学什么(给自己坚持下去的动力)
一、嵌入式分几个模块
嵌入式两类软件、硬件(简单吧)。软件,其实可以分的更详细点,不过我们不必须分这么大具体点,后面自学的过程中你就明白了。
二、平路学什么
必须,你好是是计算机、电子、电气、微电子、电子信息、通信、自动化、信息工程等查找专业。
肯定什么人会问我想知道为什么可以这些专业。而且这些专业或则编程能力强,要嘛硬件基础很认识,学习嵌入式是纯天然的优势。比如说自动化专业,他们自学过电路,模电,数电,电力电子这些课能让你们有牢实的硬件基础;另外C,51单片机,微机让你们有当然的软件基础。特别是51单片机,那样一来能学会了,后面学习嵌入式会更很难。
接下来细细的看讲讲要如何起步后(基础不劳,地动山摇)
最先,你要明白硬件的基本知识,这些硬件知识能帮你更好的理解51单片机的内部原理,硬件的管脚配置,引脚功能,更重要的是的是帮你理解放大电路,滤波电路等。(第七步我推荐一本我其实比价好的麻烦问下51的书,里面有51的内部原理)这些懂了,在用51C语言写程序的时候可能会才发现so easy。当然了为啥先学51呢,只不过大学大部分那就开办51的课,再者51容易理解,教学视频十分丰富。
第二步,你要懂C/C,c语言是学习嵌入式的灵魂。而且大学都开设有C课程,所以才大家从C又开始能学会低些方便和节约时间。
第十步,有了去相关基础后结束看51单片机系列的书(见下图),网上各种各样的视频多的很,对着网络上的视频学习,效果会更好。但没法只学不练,买个开发板(当初我们是自己焊的),自己对着视频练习。理论和实际中生克制化效果最好就是。
肯定需要都用到你所选的烧录软件,和编程软件。我在这里统一说下。
烧录软件就用STC-ISP(好用),编程的用KEILc51(keil3也能用),后面玩32了再用KEIL5。
三、进阶学什么
不过在此之前、51单片机玩差不多半个学期就行啦,半个学期够你掌握了,太长浪费时间。我们早就玩过51了,已经是大孩子了,哈!哈!哈!。但是我们没有玩过32位的,再上arm是不行啊的。
所以我我们要就开始学32,其实32比51简单的多,只不过他们有相当丰富的库,各种库。市面上的教学资源太非常的相当丰富,产品也都很成熟,某宝上面各种开发板(价格300以内),自己选一个买就行了。
其实你也是可以到后面51学32,虽说51太老了,太略显陈旧了,但我觉着你学习51会帮你牢固知识,帮你连成写程序的习惯等。
学32的周期,根据自己情况安排好了,就像一个到一个半学期。
第二步、现在咱们对32比较好所了解了,轮到自学嵌入式系统了,对,嗯就是系统,会不会很激动。。
想自学嵌入式系统Linux/WIN等,简单你不需要买个arm学版,在淘宝上面买的话,不太贵S3C2440,500元。资料非常多,我建议你买arm9,是因为ram11的资料太少,不尤其适合没基础。或则你们预算太能量供应,可以判断Cortex-A8/A9的开发板。
我完全相信你们能学这里早就有了自己的想法和见解了。到这个过程的时候,知乎上的大佬回答我的很具体点和网上的资源也相当相当丰富,多看看大家写的约定学习。
后来,做下系统的总结
看的懂电路图、没看明白芯片手册(更牛皮的要求是会自己绘制PCB板,会器件选型,会自己调试自己怎么设计板子,转眼是可以可以量产)
有汇编语言,移植驱动的能力
懂内核的实现机制
懂C语言,C等
下面列有详细的要求,你们自己十足把握下。
等待想找工作的时候,有嵌入式硬件,嵌入式软件,嵌入式等,甚至也可以融汇贯通,要看你们的学习水平了,哈!哈!哈!。
嵌入式硬件要求:
1、熟练在用Allegro Cadence等EDA工具参与硬件原理图及PCB的设计,精通满PCB布线流程、拥有多层板布线经验规范及信号完整性结论,熟得不能再熟至多一种高速公路通信接口,如PCIE、SRIO、10GBE等。
2、精通满嵌入式处理器设计,具高大型手机CPU或则DSP的板级硬件设计调试经验,的或P系列或则T系列PowerPC,C6678、C6655等DSP,包括FPGA设计经验者等。
3、共同负责硬件产品的需求调研、方案设计,非常熟练可以使用门类丰富电子仪器仪表并且测试。
。。。。。。
嵌入式软件要求:
1、熟得不能再熟Linux操作系统内核,有Linux内核和驱动开发经验。
2、全精通C/C开发语言,shell脚本。
3、精通满C语言,能的的c语言程序、调试硬件驱动程序和功能程序。
4、熟得不能再熟多线程的开发,精通于ucosII嵌入式系统移植、驱动和应用开发。
。。。。。。
嵌入式硬件的工作:
嵌入式软件的工作:
嵌入式的工作:
那你可以不以“低端单片机-高端单片机-算中端ARM-比较高端ARM”来学。我现在那就是工作中用STM32,晚上回来了在家自学ARM9。
我想学习嵌入式系统,都需要些什么基础?
现在互联网IT发展的很快,嵌入式系统无疑是当前最热门最有发展前途的IT应用领域之一。所以才很多人都想学习嵌入式开发,为大家讲解学嵌入式开发需打听一下的一些基础知识。
1.所了解C语言基础知识。C语言是一门基础语言,即便对嵌入式软件肯定硬件开发编程,都是很重要的是的作用。
2.清楚操作系统。对操作系统有所所了解也很不重要,比如进程、线程,系统是怎莫先分配资源的,怎么管理方面硬件的等等,这些都能解决你对硬件和软件有个很好的理解。
3.所了解Linux的或wince下的编程。
4.本身单机片也可以ARM或者MIPS等查找基础。
5.其他知识的扩充。我们还也可以通过阅读一些优秀的代码,清楚UBOOT的源代码,也可以是怎么学习下linux的源代码等等。反正嵌入式也可以不零基础怎么学习的,因为只要你只要用心怎么学习是可以掌握嵌入式开发这门技术的。
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。