嵌入式学习_什么是嵌入式软件开发如何学习

嵌入式技术需要学习什么嵌入式Linux操作系统学习规划
ARM+LINUX路线,主攻嵌入式Linux操作系统及其上应用软件开发目标:
(1) 掌握主流嵌入式微处理器的结构与原理(初步定为arm9)
(2) 必须掌握一个嵌入式操作系统 (初步定为uclinux或linux,版本待定)
(3) 必须熟悉嵌入式软件开发流程并至少做一个嵌入式软件项目 。
从事嵌入式软件开发的好处是:
(1)目前国内外这方面的人都很稀缺 。这一领域入门门槛较高,所以非专业IT人员很难切入这一领域;另一方面,是因为这一领域较新,目前发展太快,大多数人无条件接触 。
(2)与企业计算等应用软件不同,嵌入式领域人才的工作强度通常低一些(但收入不低) 。
(3)哪天若想创业,搞自已的产品,嵌入式不像应用软件那样容易被盗版 。硬件设计一般都是请其它公司给订做(这叫“贴牌”:OEM) , 都是通用的硬件,我们只管设计软件就变成自己的产品了 。
(4)兴趣所在,这是最主要的 。
从事嵌入式软件开发的缺点是:
(1)入门起点较高,所用到的技术往往都有一定难度,若软硬件基础不好,特别是操作系统级软件功底不深,则可能不适于此行 。
(2)这方面的企业数量要远少于企业计算类企业 。
(3)有少数公司经常要硕士以上的人搞嵌入式 , 主要是基于嵌入式的难度 。但大多数公司也并无此要求,只要有经验即可 。
(4)平台依托强 , 换平台比较辛苦 。
兴趣的由来:
1、成功观念不同,不虚度此生,就是我的成功 。
2、喜欢思考,挑战逻辑思维 。
3、喜欢C
C是一种能发挥思维极限的语言 。关于C的精神的一些方面可以被概述成短句如下:
相信程序员 。
不要阻止程序员做那些需要去做的 。
保持语言短小精干 。
一种方法做一个操作 。
使得它运行的够快 , 尽管它并不能保证将是可移植的 。
4、喜欢底层开发 , 讨厌vb类开发工具(并不是说vb不好) 。
5、发展前景好 , 适合创业,不想自己要死了的时候还是一个工程师 。
方法步骤:
1、基础知识:
目的:能看懂硬件工作原理,但重点在嵌入式软件,特别是操作系统级软件,那将是我的优势 。
科目:数字电路、计算机组成原理、嵌入式微处理器结构 。
汇编语言、C/C++、编译原理、离散数学 。
数据结构和算法、操作系统、软件工程、网络、数据库 。
方法:虽科目众多,但都是较简单的基?。?且大部分已掌握 。不一定全学,可根据需要选修 。
主攻书籍:the c++ programming language(一直没时间读)、数据结构-C2 。
2、学习linux:
目的:深入掌握linux系统 。
方法:使用linux—〉linxu系统编程开发—〉驱动开发和分析linux内核 。先看深,那主讲原理 。看几遍后,看情景分析,对照深看,两本交叉 , 深是纲,情是目 。剖析则是0.11版,适合学习 。最后深入代码 。
主攻书籍:linux内核完全剖析、unix环境高级编程、深入理解linux内核、情景分析和源代 。
3、学习嵌入式linux:
目的:掌握嵌入式处理器其及系统 。
方法:(1)嵌入式微处理器结构与应用:直接arm原理及汇编即可,不要重复x86 。
(2)嵌入式操作系统类:ucOS/II简单,开源,可供入门 。而后深入研究uClinux 。
(3)必须有块开发板(arm9以上),有条件可参加培训(进步快,能认识些朋友) 。
主攻书籍:毛德操的《嵌入式系统》及其他arm9手册与arm汇编指令等 。
4、深入学习:
A、数字图像压缩技术:主要是应掌握MPEG、mp3等编解码算法和技术 。
B、通信协议及编程技术:TCP/IP协议、802.11,Bluetooth,GPRS、GSM、CDMA等 。
2010-8-21 16:46 回复
122.90.173.* 2楼
C、网络与信息安全技术:如加密技术,数字证书CA等 。
D、DSP技术:Digital Signal Process,DSP处理器通过硬件实现数字信号处理算法 。
说明:太多细节未说明,可根据实际情况调整 。重点在于1、3 , 不必完全按照顺序作 。对于学习c++ , 理由是c++不只是一种语言,一种工具,她还是一种艺术,一种文化,一种哲学理念、但不是拿来炫耀得东西 。对于linux内核,学习编程,读一些优秀代码也是有必要的 。
注意:要学会举一反多,有强大的基础 , 很多东西简单看看就能会 。想成为合格的程序员,前提是必须熟练至少一种编程语言,并具有良好的逻辑思维 。一定要理论结合实践 。
不要一味钻研技术,虽然挤出时间是很难做到的,但还是要留点余地去完善其他的爱好,比如宇宙,素描、机械、管理 , 心理学、游戏、科幻电影 。还有一些不愿意做但必须要做的!
技术是通过编程编程在编程编出来的 。永远不要梦想一步登天,不要做浮躁的人,不要觉得路途漫上 。而是要编程编程在编程,完了在编程,在编程!等机会来了在创业(不要相信有奇迹发生,盲目创业很难成功,即便成功了发展空间也不一定很大) 。
嵌入式书籍推荐
Linux基础
1、《Linux与Unix Shell 编程指南》
C语言基础
1、《C Primer Plus,5th Edition》【美】Stephen Prata着
2、《The C Programming Language, 2nd Edition》【美】Brian W. Kernighan David M. Rithie(K & R)着
3、《Advanced Programming in the UNIX Environment,2nd Edition》(APUE)
4、《嵌入式Linux应用程序开发详解》
Linux内核
1、《深入理解Linux内核》(第三版)
2、《Linux内核源代码情景分析》毛德操 胡希明著
研发方向
1、《UNIX Network Programming》(UNP)
2、《TCP/IP详解》
3、《Linux内核编程》
4、《Linux设备驱动开发》(LDD)
5、《Linux高级程序设计》 杨宗德著
硬件基础
1、《ARM体系结构与编程》杜春雷着
2、S3C2410 Datasheet
英语基础
1、《计算机与通信专业英语》
系统教程
1、《嵌入式系统――体系结构、编程与设计》
2、《嵌入式系统――采用公开源代码和StrongARM/Xscale处理器》毛德操 胡希明着
3、《Building Embedded Linux Systems》
4、《嵌入式ARM系统原理与实例开发》 杨宗德著
理论基础
1、《算法导论》
2、《数据结构(C语言版)》
3、《计算机组织与体系结构?性能分析》
4、《深入理解计算机系统》【美】Randal E. Bryant David O''Hallaron着
5、《操作系统:精髓与设计原理》
6、《编译原理》
7、《数据通信与计算机网络》
8、《数据压缩原理与应用》
C语言书籍推荐
1. The C programming language 《C程序设计语言》
2. Pointers on C 《C和指针》
3. C traps and pitfalls 《C陷阱与缺陷》
4. Expert C Lanuage 《专家C编程》
5. Writing Clean Code -----Microsoft Techiniques for Developing Bug-free C Programs
《编程精粹--Microsoft 编写优质无错C程序秘诀》
6. Programming Embedded Systems in C and C++ 《嵌入式系统编程》
7.《C语言嵌入式系统编程修炼》
8.《高质量C++/C编程指南》林锐
尽可能多的编码,要学好C,不能只注重C本身 。算法,架构方式等都很重要 。
这里很多书其实是推荐而已,不必太在意 , 关键还是基?。?才是重中之重?。。?
学习嵌入式开发要学习哪些知识?近来嵌入式挺火,于是大家都往这里挤 。我想提醒大家的是,嵌入式马上也会成为如今的软件业 。在你进来之前请先考虑清楚 。但只要我们真的学精了一样东西,不管它将来变成什么样,哪怕最后只剩下一个人,那个人也一定就是你自己 。
很多人以为搞嵌入式就是随便找本书看看,在电脑上编几个程序就完事 。非也,其实嵌入式的门槛是比较高的 。具体如下:
1、您得有一定数量的Money 。
(1)、开发板贵
(2)、培训费更贵
(3)、开发平台是贵得不能再贵 。(除非您只是想玩玩而已)
2、需要学习的东西多 。(1)、window环境编程;(2)、Linux环境编程;(3)、单片机
3、最后也是最重要的一点,你得有坚韧不拔之志和一颗平常之心 。
(1)、自信 坚强 积极 勤快 (注:好的自信是自觉的?。?br />(2)、成功其实就是成为最好的您自己
嵌入式门槛虽然较高 , 但也跟其他事物一样,并不是牢不可破 。只要我们用心去对待,东雪终将化去 , 春风定会吹来 。具体步骤如下:
1、《C语言》第二版 谭浩强 ; 《C程序设计语言》第二版 徐宝文译 机戒工业出版社
你能区分开指针数组和数组指针吗?你知道函数指针吗?
你能区分开定义一个变量时系统给它分配的空间与用malloc()函数给一个变量分配的空间有什么不一样吗?
2、《数据结构》C语言版黄国愉、叶乃青编清华大学出版社
你能合上书本,用C语言实现书中的单链表、双链表数据结构吗?
3、《实用C++程序设计》第二板 中国电力出版社 Steve_Oualline著
此阶段主要是学习其面向对象的编程思想 , 加深对C语言和数据结构的理解 。
4、学习单片机 , 最好能找个前辈带一带 。
你能用51单片机做出一样实际的东西吗?即使它再简单!
要注意加深对中断的理解 。
5、学习ARM单片机 。
(1)、细读《ARM微控制器基础与实战》周立工编写 (注:即使你不用书中的开发板)
(2)、细读相关芯片的原版英文文档 。如:arm920TE.pdfS3C2410_1.2.pdf
6、学习uCOS!!操作系统 。
(1)、细读《嵌入式实时操作系统uC/OS-!!》第二版 召贝贝译
你能把uCOS!!移植到自己的平台上吗?
(2)、能编写在uCOS!!操作系统环境下运行的针对具体硬件的驱动程序
7、熟悉Linux环境,学习Linux环境编程,学习交叉编程
(1)、细读《linux命令大全.pdf》
(2)、细读《GNU Make 使用手册(中译版).pdf》
(3)、学习创建交叉编程环境.
8、学习Linux操作系统 。
(1)、《UNIX环境高级编程》
(2)、细读《linux内核完全注释》
(3)、细读《understanding the linux kernel 2》
(4)、利用源代码阅读利器工具”Source Insight”进行真正的linux内核原码刨析
(5)、最后进行内核移植,并能编写在linux操作系统环境下运行的针对具体硬件的驱动程序
9、学习Linux设备驱动编写 。可参考《Linux设备驱动程序》
10、复习C++,学习用QT进行图形界面编程
(1)、细读《QT编程宝典》
(2)、学会通过查看QT电子文档进行QT GUI实地编程
(3)、学习交叉编程.(其实就是把命令qmake变为tmake)
11、当然,你也可学习一下PCB的制作和设计一个自己的CPU(即软壳)
至此,你已学完嵌入式的整流程!但谨记:一个有思想的人才真是一个力量无边的人;有容乃大,能予方强
如何自学嵌入式?大家好,我是一名xx理工大学电子信息工程的学生,现在已经工作四年多了,可能有很多刚毕业的大学生想从事嵌入式这一方面的工作中,可是又无从下手 , 那么我想以我自身为例子来和大家探讨一下这个问题 。
先说说我大学四年的经历吧:
大一:数电 模电 C语言
这些都是基?。夭豢缮倭?。数电,驱动的逻辑与寄存器的入门;模电,电路图以及外围电路的基?。籆语言 , 这个没啥好说了吧!
大二:数据结构 单片机
数据结构这个没学,后来我在21ic公开课自学了一些Linux课程(主要是朱有鹏还有一些经典的基础入门教程),Linux内核就是大量的数据结构之间的嵌套的派生;单片机,这个已经是嵌入式入门的开始了,可以开始编程设计控制完成一些基本的功能了 。
大三:STM32 uCOS 操作系统原理
这些东西我都已经是自学了,因为没有课程,STM32这个玩意主要是他在市场应用领域广泛,因为他性价比高嘛!21ic公开课上资源丰富 , 稳定,cortex M3的先驱者,学习的话,买个开发板,找个视频看起来,同时自己也要扩展性的学习编码 。uCOS这个操作系统入门简单,资料丰富 , 完全可以自学,同时通过书籍学习阅读源码,但是当你懂得怎么用之后我建议你看RT Thread这款操作系统,非常Linux,强大的组件,只有你想不到,没有你看不到的 。操作系统 这个书 , 我看了一小小部分 , 不好评价,但是已经加入我的必看书单了 。
大四:ubuntu POSIX接口应用 socket等
此时 , 你已经真正进入嵌入式大门领域了,到了这步,或许不用我说你也有你自己的目标了 。
工作之后,实话告诉你 , 如果你做嵌入式 , 大多数是跑cortex M系列的芯片,如果你希望你能上cortex A系列,那么你只是一个写应用的,如果你想在cortex A系列上做嵌入式的开发,那估计是工作几年以后得事了,驱动开发没你想象那么简单,比如一个视频开发,你要了解协议,芯片等等 。不是打击你,刚毕业的很少能做得上cortex A系列的驱动开发,除非你是某芯片厂商的FAE , 那么你能做的也就去看看别人代码,改改BUG,毕竟,驱动一定是需要稳定成熟的 , 不能让你随意改动 。
嵌入式应该学习什么如何学习一、学习嵌入式,你可以做什么?
学习嵌入式必须勤学苦练 。华清远见老师讲一讲具体怎么来学习嵌入式 。
学习嵌入式你可以做:
手机、PDA、MP3、MP4、遥控玩具、psp、相机、家电控制(洗衣机、电饭煲等)、汽车导航仪,只要跟电子控制相关的,
二、如何学习?
计算机这行都是偏向于实践的课程,所以要注重动手能力 。
1&2、c\c++语言,这是计算机行业的必修课,必须找扎实实学好 。可以安装 turbo c编译器为开发环境,联系C语言编程;
安装vc++6.0学习C++编程 。
在这至于,你可以学习一点汇编语言,知道可执行文件到底是怎么执行的 。学习一点MFC编程 , 可以做相应的窗口界面编程 。
当你在使用beep()函数控制电脑发出电子琴声音时,你肯定会兴奋的不得了 。
3、操作系统,先在电脑上安装一个vmware work station,然后在vmware work station里安装一个linux(redhat 企业版)虚拟机 。这就是电脑
里面的电脑 。学习一下操作系统的基本原理 , 熟悉linux环境下的开发环境,然后你就可以照着《自己动手写操作系统》写个操作系统试试
那是多么酷的一件事情,O(∩_∩)O哈哈~,说不定哪天你就能成为像比尔盖茨一样的人物 。
4、熟悉计算机的基本原理,看看一个计算机的基本组成及软件在里面是如何跑的 。
5、这是linux编程的必修课,这本书是我自己用的,非常不错,利用它 , 你可以写出一个自己的qq程序 。
6、其实单片机就是一台电脑,像现在的汽车控制、led控制、屏幕亮光程度控制,他都可以实现 , 自己买块开发板弄一下,你能学到很多的别人学不到的 。
7、arm是现在最流行的微机,它说白了就是32位的单片机,还可以跑操作系统哦,自己想办法移植一个操作系统上去吧
8、芯片到底是怎么做成的,学习这门课,你就知道了
9、硬件的基础-------如果可以的话,学习下protel ,自己做个硬件pcb板试试 。
三、学习的步骤
第一步:C语言、计算机组成原理、模拟电路&数字电路
第二步:汇编语言、单片机、操作系统、C++
第三步:硬件编程语言、arm
四、嵌入式方向分类
嵌入式开发大抵分四个方向:
1、硬件
2、驱动
3、内核
4、应用
总结:
循序渐进,一步步扎实做好 。在完成了你学习的科目后,就可以对自己的就业方向分类了 。
这只是技术单方面而已,也许并不能带给你们很多的财富 , 但是人总要有个谋生的技能 。
自学嵌入式的流程是什么?1、基础知识:
目的:能看懂硬件工作原理,但重点在嵌入式软件,特别是操作系统级软件,那将是我的优
势 。
科目:数字电路、计算机组成原理、嵌入式微处理器结构 。
汇编语言、C/C++、编译原理、离散数学 。
数据结构和算法、操作系统、软件工程、网络、数据库 。
方法:虽科目众多 , 但都是较简单的基础,且大部分已掌握 。不一定全学 , 可根据需要选修 。
thec++programminglanguage(一直没时间读)、数据结构-C2 。
2、学习linux:
目的:深入掌握linux系统 。
方法:使用linux—〉linxu系统编程开发—〉驱动开发和分析linux内核 。先看深,
那主讲原理 。看几遍后,看情景分析,对照深看 , 两本交叉,深是纲,情是目 。剖析则是0.
11版,适合学习 。最后深入代码 。
主攻书籍:linux内核完全剖析、unix环境高级编程、深入理解linux内核、情景分析和源代 。
3、学习嵌入式linux:
目的:掌握嵌入式处理器其及系统.
方法:(1)嵌入式微处理器结构与应用:直接arm原理及汇编即可,不要重复x86 。
(2)嵌入式操作系统类:ucOS/II简单,开源,可供入门 。而后深入研究uClinux 。
(3)必须有块开发板(arm9以上) , 有条件可参加培训(进步快,能认识些朋友)
主攻书籍:毛德操的《嵌入式系统》及其他arm9手册与arm汇编指令等 。
4、深入学习:
A、数字图像压缩技术:主要是应掌握MPEG、mp3等编解码算法和技术 。
B、通信协议及编程技术:TCP/IP协议、802.11 , Bluetooth,GPRS、GSM、CDM
A等 。
C、网络与信息安全技术:如加密技术,数字证书CA等 。
D、DSP技术:DigitalSignalProcess,DSP处理器通过硬件实现数字信号处理算
法 。
说明:太多细节未说明,可根据实际情况调整 。重点在于1、3,不必完全按照顺序
作 。对于学习c++,理由是c++不只是一种语言,一种工具,她还是一种艺术 , 一种文化,
一种哲学理念、但不是拿来炫耀得东西 。对于linux内核 , 学习编程,读一些优秀代码也是
有必要的 。
注意: 要学会举一反多 , 有强大的基础,很多东西简单看看就能会 。想成为合格的
程序员,前提是必须熟练至少一种编程语言,并具有良好的逻辑思维 。一定要理论结合实践 。
不要一味钻研技术,虽然挤出时间是很难做到的,但还是要留点余地去完善其他的爱
好,比如宇宙,素描、机械、管理,心理学、游戏、科幻电影 。还有一些不愿意做但必须要
做的!
技术是通过编程编程在编程编出来的 。永远不要梦想一步登天,不要做浮躁的人 , 不
要觉得路途漫上 。而是要编程编程在编程,完了在编程,在编程!等机会来了在创业(不要
相信有奇迹发生,盲目创业很难成功 , 即便成功了发展空间也不一定很大) 。
嵌入式书籍推荐
Linux基础
1、《Linux与UnixShell编程指南》
C语言基础
1、《CPrimerPlus , 5thEdition》【美】StephenPrata着
2、《TheCProgrammingLanguage,2ndEdition》【美】BrianW.KernighanDav
idM.Rithie(K&R)着
3、《AdvancedProgrammingintheUNIXEnvironment,2ndEdition》(APUE)
4、《嵌入式Linux应用程序开发详解》
Linux内核
1、《深入理解Linux内核》(第三版)
2、《Linux内核源代码情景分析》毛德操胡希明著
研发方向
1、《UNIXNetworkProgramming》(UNP)
2、《TCP/IP详解》
3、《Linux内核编程》
4、《Linux设备驱动开发》(LDD)
5、《Linux高级程序设计》杨宗德著
硬件基础
1、《ARM体系结构与编程》杜春雷着
2、S3C2410Datasheet
英语基础
1、《计算机与通信专业英语》
系统教程
1、《嵌入式系统――体系结构、编程与设计》
2、《嵌入式系统――采用公开源代码和StrongARM/Xscale处理器》毛德操胡希明

3、《BuildingEmbeddedLinuxSystems》
4、《嵌入式ARM系统原理与实例开发》杨宗德著
理论基础
1、《算法导论》
2、《数据结构(C语言版)》
3、《计算机组织与体系结构?性能分析》
4、《深入理解计算机系统》【美】RandalE.Bryant DavidO''Hallaron着
5、《操作系统:精髓与设计原理》
6、《编译原理》
7、《数据通信与计算机网络》
8、《数据压缩原理与应用》
C语言书籍推荐
1.TheCprogramminglanguage《C程序设计语言》
2.PointersonC《C和指针》
3.Ctrapsandpitfalls《C陷阱与缺陷》
4.ExpertCLanuage《专家C编程》
5.WritingCleanCode-----MicrosoftTechiniquesforDevelopingBug-freeCProgr
ams
《编程精粹--Microsoft编写优质无错C程序秘诀》
6.ProgrammingEmbeddedSystemsinCandC++《嵌入式系统编程》
7.《C语言嵌入式系统编程**》
8.《高质量C++/C编程指南》林锐
尽可能多的编码 , 要学好C,不能只注重C本身 。算法,架构方式等都很重要 。
这里很多书其实是推荐而已 , 不必太在意,关键还是基础,才是重中之重?。。?
如何学习嵌入式系统先讲一讲需要掌握的基本技能 。
答:
(1)C语言是所有编程语言中的王者(单片机、DSP、类似ARM的种种芯片的编程都可以用C语言搞定),因此必须非常熟练的掌握,大学本科教学中的C语言是远远不够的,有两个非常重要的内容没有讲“文件的操作”和“IO的操作”,其中“IO的操作”是必须掌握的技术 。
(2)操作系统原理,是必需的,如果你是计算机专业毕业那也就无所谓了,如果是非计算机专业的就必须找一本比较浅显的计算机原理书籍看一看,把啥叫“进程”“线程”“系统调度”等等基本问题搞清楚
(3)计算机原理应该指的是x86的微机原理吧,但是在嵌入式领域x86处理器只是冰山的一小角,还有很多叫做ARM、XScale、SuperH、68K、PowerPC等等等等,无数的其它处理器,有一些我也叫不上名字 。但是,X86总规是基?。?万变不离其宗 , 深入学一下还是非常有必要的(尤其对于想要学习Linux的朋友,想要读核的话就必须要深入学习以下x86系统架构) 。
如何学习嵌入式开发呢?
答:
大家都知道这个领域人才非常稀缺,但是,学习周期比较长 , 需要的知识面也比较广 , 所以不要心急 。先看看下面的几个问题,了解一下你现在的知识水平:
(1)你用VC++或BC++编写过应用程序吗?
如果编写过应用程序,那就做好了,如果你没有做过上层应用程序,那么又如何能够去理解更深的更高深的底层程序呢,那就赶快补上这一课吧?。。?
(2)你曾经编写过单片机或者DSP的程序吗?
我们把类似51单片机或者DSP上面跑的没有操作系统的程序叫做“代码裸奔”,我们也都曾经编写过裸奔的代码 。因为有的时候比如我们编写一个简单的程序,就只需要点几个LED检测几个按钮的状态 , 那么“代码裸奔”弄一个while(1)的死循环就足够了,杀鸡何必用牛刀 。
编写这种裸奔的代码,也是学习嵌入式的必由之路,因为,你将会用C语言去对寄存器写控制字,这就是以后写驱动程序的基础呀 。
另外需要说明的是,从概念上说,“代码裸奔”也已经属于嵌入式开发的范畴 。
(3)到了最后一个阶段,你就可以开始找一个方向(uCos、Linux、VxWorks、WindowsCE、Palm等等等等),学习有操作系统的嵌入式开发了 。
嵌入式操作系统的种类也是无法计数的,有一些我连名字也叫不上来,太多太多了 。但是值得庆幸的是,这些操作系统大同小异,相通的 。
你正在在读书,建议学习uCos操作系统(看邵贝贝的《UC/OS操作系统》);如果你不喜欢这么Basic的操作系统 , VxWorks也是一个不错的选择,VxWorks进入中国已经好多年了,国内出版的书也都很好 , 尤其推荐陈智育的《VxWorks程序开发实践》和周启平的《VxWorks下设备驱动程序及BSP开发指南》;Linux简直是恶梦,但是如果你能够走出这个噩梦 , 你也就成了高手了 。
就说这么多吧,路漫漫其修远 , 祝你成功?。。?
什么是嵌入式软件开发如何学习【嵌入式学习_什么是嵌入式软件开发如何学习】嵌入式自学的话非常难,因为嵌入式需要学习的东西很多而且很难,如果你没掌握学习嵌入式的方法的话,可能1-2年都只能入门 , 如果你掌握嵌入式的学习的方法的话,半年就能学会嵌入式 。
…………………………………………
看你问的问题 , 应该是对嵌入式很感兴趣,其实你可以自学嵌入式 。关于如何学习嵌入式,我刚才看到一篇很不错的文章,是一个专科生介绍自己如何自学嵌入式,并找到嵌入式的工作,里面介绍了他的学习方法和学习过程 , 希望对你有帮助 。
先做个自我介绍,我07年考上一所很烂专科民办的学校,学的是生物专业,具体的学校名称我就不说出来献丑了 。09年我就辍学了,我在那样的学校,一年学费要1万多,但是根本没有人学习,我实在看不到希望 , 我就退学了 。
退学后我也迷茫,大专都没有毕业 , 我真的不知道我能干什么,我在纠结着我能做什么 。所以辍学后我一段时间 , 我想去找工作,因为我比较沉默寡言,不是很会说话,我不适合去应聘做业务 。我想应聘做技术的,可是处处碰壁 。
一次偶然的机会,我才听到嵌入式这个行业 。那天我去新华书店 , 在计算机分类那边想找本书学习 。后来有个女孩子走过来,问我是不是读计算机的,有没有兴趣学习嵌入式,然后给我介绍了一下嵌入式现在的火热情况,告诉我学嵌入式多么的有前景,给我了一份传单,嵌入式培训的广告 。听了她的介绍,我心里痒痒的,确实我很想去学会一门自己的技术,靠自己的双手吃饭 。
回家后,我就上网查了下嵌入式 , 确实是当今比较热门的行业,也是比较好找工作的,工资也是相对比较高 。我就下决心想学嵌入式了 。于是我去找嵌入式培训的相关信息,说真的,我也很迷茫,我不知道培训是否真的能像他们宣传的那样好 , 所以我就想了解一段时间再做打算 。
后来,我在百度知道看到一篇让我很鼓舞的文章,是一个嵌入式高手介绍没有基础的朋友怎么自学入门学嵌入式,文章写的很好,包含了如何学习,该怎么学习 。他提到一个方法就是看视频,因为看书实在太枯燥和费解的,很多我们也看不懂 。这点我真的很认同,我自己看书往往看不了几页 。
我在想,为什么别人都能自学成才 , 我也可以的!我要相信自己,所以我就想自学 , 如果实在学不会我再去培训 。
主意一定,我就去搜索嵌入式的视频,虽然零星找到一些嵌入式的视频 , 但是都不系统,我是想找一个能够告诉我该怎么学的视频,一套从入门到精通的视频,一个比较完整的资料,最好能有老师教,不懂可以请教的 。
后来我又找到一份很好的视频,是在IT学习联盟网站推出的一份视频《零基础嵌入式就业班》(喜欢《零基础嵌入式就业班》的可以复制 sina.lt/qKh 粘贴浏览器地址栏按回车键即打开) 。里面的教程还不错,很完整,可以让我从基础的开始学起 。视频比较便宜 。
下面介绍下我的学习流程,希望对和我一样完全没有基础的朋友有所帮助 。
收到他们寄过来的光盘后,我就开始学习了,由于我没有什么基?。?我就从最简单的C语言视频教程学起,话说简单,其实我还是很多不懂的,我只好请教他们,他们还是很热心的,都帮我解决了 。C语言我差不多学了一个礼拜,接下来我就学了linux的基本命令,我在他们提供linux虚拟机上都有做练习,敲linux的基本命令 , 写简单的C语言代码,差不多也就三个礼拜 。我每天都在不停的写一些简单的代码 , 这样一月后我基本掌握了C和linux的基本操作 。
接下来我就去学习了人家的视频的培训教程,是整套的 , 和去参加培训没有多大的区别 , 这一看就是两个月,学习了ARM的基本原理,学习嵌入式系统的概念 , 也掌握了嵌入式的环境的一些搭建,对linux也有更深层次的理解了,明白了嵌入式应用到底是怎么做的,但是驱动我只是有一点点的了解,这个相对难一点,我想以后再慢慢啃 。
这两个月,除了吃饭睡觉,我几乎都在学习 。因为我知道几乎没有基础,比别人差劲,我只能坚持努力着,我不能放弃 , 我必要要靠自己来养活自己,必须学好这门技术,然后我就把不懂的问题总结记下来,这样慢慢积累了一段时间 , 我发现自己真的有点入门了 。
最后的一个月,我就去看关于实践部分的内容,了解嵌入式项目具体的开发流程,需要什么样的知识,我就开始准备这方面的知识,也就是学习这方面的视频,同时他们建议我去找了找一些嵌入式面试的题目,为自己以后找工作做准备 。我就到网上找了很多嵌入式的题目 , 把他们理解的记下来,这样差不多准备了20天左右
我觉得自己差不多入门了,会做一些简单的东西了 。我就想去找工作看看,于是我就到51job疯狂的投简历,因为我学历的问题,专科没有毕业,说真的 , 大公司没有人会要我,所以我投的都是民营的小公司 , 我希望自己的努力有所回报 。没有想过几天过后,就有面试了 , 但是第一次面试我失败了,虽然我自认为笔试很好,因为我之前做了准备,但是他们的要求比较严格 , 需要有一年的项目经验,所以我没有被选中 。
后来陆续面试了几家公司,终于功夫不负有心人 。我终于面试上的,是在闵行的一家民营的企业 , 公司规模比较小,我的职务是嵌入式linux应用开发,做安防产品的应用的 。我想我也比较幸运,经理很看重我的努力,就决定录用我,开的工资是3500一个月,虽然我知道在上海3500只能过温饱的生活,但是我想我足够了 。我至少不用每天都要靠父母养,我自己也能养活自己的 。我想只要我继续努力,我工资一定会翻倍的 。
把本文写出来,希望能让和我一样的没有基础的朋友有信心,其实我们没有必要自卑,我们不比别人笨,只要我们肯努力,我们一样会成功 。
………………………………………………