大黑鱼 发表于 2014-8-20 22:53:49

关于初学嵌入式的一些问题?

本帖最后由 大黑鱼 于 2014-8-21 10:20 编辑

嵌入式学习应该怎么学,是否应该上培训,如何权衡?(转自csdn)
嵌入式应该怎么学?
嵌入式的基础大概可以分三块:操作系统及语言、应用处理器(arm等)、外围电子设备。常用的语言是c

、c++功能的编程是c,界面编程用c++。为什么操作系统和语言放在一起呢?语言是一系列的命令,而这

些是建立在操作系统基础上的,对操作系统越了解,代码就更加的高效简捷,语言就是对操作系统的命令

的重新组织。处理器,即单片机的51或凌阳系列或者现在流行的arm系列,单片机系列与arm系列分别在低

端和高端市场占有较大的份额,学习入手时只需研究一种就可以。外围电子设备,即是控制的目的设备,

通过编程告诉处理器怎样给他们信号,不同的公司由于性质不同,控制的目的设备也不同,在这方面要有

一定的电路基础,不过不是重点,到了公司硬件工程师会给你图纸的,能看懂图纸就可以。

学习方法如下:
基础的不应该涉及太多,要学会化繁为简、步步为赢,从能够接受的入手学习有兴趣也有动力。

计算机学科最好是实践为主导的进行学习,当然,前提是你应该这以前接触过计算机,最起码会一种语言

或学过计算机原理。现在很多高校毕业的大学生的基础其实不错,该了解的都了解了,就是没有深入的。

如果是这样,基础不是问题。你学骑自行车有所谓的基础吗?其实就是骑着骑着就会了。
1 如果想入行开始进行学习,那么先不要考虑培训,从书店找一本类似从零开始学习的书籍(别一下买一

大堆,会后悔的),先读一下,体会一下这一行究竟是做什么的,什么样的流程,用什么样的方法做产品

。人员组织如何,自己适合做哪项(如硬件(fpga)、信号算法(dsp)、软件(linux底层开发)),推

荐linux操作系统底层或应用开发,这方面比较适合一般的软件和电子专业大学生。看不懂也没有关系,

大概了解就可以了。

如果看的有感觉,认为自己可以做,那么还等什么?入手吧,不要强调基础或者理论,大家都是干出来的

,不是学出来的。
2 找个便宜的开发板,现在的开发板掉了很多价,学习成本也降低了许多。找那种书店和网上成熟资料最

多的,从440bx到现在2410、2440,总之哪种资料多就买哪种,不要去追流行,老板子只要资料充足也可

以的。别迷信什么地方能够教你做板子,让你做也只是当个焊接工,不知其所以然的。别想一口吃个胖子

,找准入手点,坚定的去行动,不断的去尝试。这个阶段很重要,自己搭建实验环境,一个个的做实验,

对许多的东西不了解,困难是很多的,但不是不能解决,网上该板的论坛和群很多的,许多人在自学。有

问题可以在那里发问。但更重要的是,要学会如何利用搜索引擎,利用书店、图书馆的资料来解决问题,

学会自己解决问题,这是生存的一项重要技能,没有什么问题是解决不了的。
在这个过程中不断的尝试,照着板子的资料,利用bsp(板级开发包)和芯片资料,把手头的实验一个个

的做完,可能第一个实验要做一个月或更长,但是在此期间学到的东西却是价值非凡,因为你将学会了如

何利用各种渠道独立解决问题。
在此期间要注意几点,一是不要随便的买太深入的书籍,去钻研高深的东西而忘记了眼前该做的事情,二

要提高e文的阅读能力,芯片资料多是e文的,周立功公司翻译过一些,利用电脑通过中英文对照进行学习

,每天坚持看几页,时间长了就可以直接看e文资料了。三是不要心浮气躁,遇到困难就停下什么都不做

,遇到困难就绕开,再往前走那时的问题就不是什么问题了。

学习就是这样,不断的行动,不断的尝试,渐渐的学会了自己解决问题,就学会了如何自学。有了这样的

态度,没有基础,理论差都不是什么问题了。把开发板的实验做一遍,再去书店看看,很多的书就像白开

水一样,翻翻而已。国内的嵌入式培训也就到此为止了,所谓的项目,并不比你在开发板上做的难多少。

这个时候,你已经有了一定的基础了,可以找工作了,工作中学习更加有目的性,是个很好的选择。如果

还想往深研究,可以选择一项自己感兴趣且能够找工作的方向,如操作系统、网络电话、路由、防火、智

能建筑、消费电子等等,根据自己的情况进行选择,不可能都学的。

3 选择好一项,进行深入的研究,自己去找相应的外围设备,利用自己的开发板去做产品吧。永远都是实

践第一。
上面没有提到linux内核或者网络知识,也几乎没有提到编程的重要性,他们当然很重要,但是在基础的

学习中,不建议从它们开始入手,否则造成的局面不是陷入泥潭,就是学了半天不知道在学什么,使学习

的积极性受挫。编程是随着对编程的环境和目的了解而提高的,任何语言都是工具,因此有了一点基础后

不必专门学它,随着实践会不断提高语言的应用能力。linux内核的掌握更不应该是初学者该做的,开始

学习就是要利用它,涉及一些初步的就可以,随着编程遇到的问题以及解决的过程,会不断的深入认识操

作系统,也有人专门研究,意图更加贴近产品的应用,那至少应该是有目的的研究。网络、协议、音频、

视频、usb以及其他的应该在有了一定的基础之后,有目的的进行研究,也非初学者直接涉及的。还有就

是人们常说的数据结构,专门学他你会成为教授的,串、链表、堆、栈、树等什么时候看到了不懂拿来参

考书看看就行,找到你用到的知识,而非专门研究。做什么事一定要知道你眼前的目的是什么,别掉进研

究的苦海中。

综上所述,大概学习分三步,几乎所有的嵌入式培训都只能带你道第二步,就是大部分时间重申基础,最

后在教你在板子上做几个实验,和你自己买的板子和做实验是一模一样的,就业也只是推荐就业,和自己

找差不多。高级专业应用的课程都放在了短期培训,时间大概三天或半个月。费用从几千到一万多,培训

的状况就是这样。如果自己买板子及外围的话,加上书籍和上网,费用大概是1000-2000左右,自学到有

工作能力的周期大概是3个月到半年左右。如果有基础的话,一两个月就可以。就业尽两年还可以,以后

就要看水平了,能够适应环境独并且能够立解决问题的人,就是人才,如果你是人才,那就没什么可怕的

了。

如果你一定要培训的话,就应该知道所有的培训都只能带你入门,就业什么的要是能够签订就业协议的话

,也可以考虑。因为任何培训机构出来,除非你的自学能力十分的强,否则找工作仍然是个很大的问题。

去培训机构之前要用一两个月的时间自己学习些初步的知识,好让自己有鉴别能力。与培训机构的咨询师

面谈的时候,他们说的话基本不要相信,一定要去找找过去学完的学生问问,他们能教道什么程度,就业

如何解决的。他们才说实话(但别找到他们的托,嘿嘿)。当然,也不一定那么可怕了,只是有些问题要

注意一下,不可没有防人之心。

写了不少,其中许多废话,文笔也差,望大家见谅。上面写的就是我大四之后自学嵌入式的一些感触,走

了许多弯路,在网上看到很多的朋友想入行,现在的就业压力都很大,大家都挺不容易的,把我的建议写

出来,希望大家能够走好自己的职业之路

大黑鱼 发表于 2014-8-20 23:02:38

沙发{:7_131:}

沉思的牛 发表于 2014-8-20 23:52:01

培训的水太深了{:5_107:}

大黑鱼 发表于 2014-8-20 23:54:12

沉思的牛 发表于 2014-8-20 23:52
培训的水太深了

你经历过吗?{:5_94:}

沉思的牛 发表于 2014-8-20 23:55:41

大黑鱼 发表于 2014-8-20 23:54
你经历过吗?

但不是培训嵌入式

大黑鱼 发表于 2014-8-22 08:57:45

自己支持一下自己,冒个泡

Ryans 发表于 2015-5-1 15:13:44

楼主太良心的说!!!激起师弟的冲劲!!
页: [1]
查看完整版本: 关于初学嵌入式的一些问题?