以文本方式查看主题

-  中文XML论坛 - 专业的XML技术讨论区  (http://bbs.xml.org.cn/index.asp)
--  『 XML 与 移动嵌入式开发 』   (http://bbs.xml.org.cn/list.asp?boardid=77)
----  [转帖]我的嵌入式之路-----大家共勉  (http://bbs.xml.org.cn/dispbbs.asp?boardid=77&rootid=&id=60002)


--  作者:donghuiboy
--  发布时间:3/15/2008 2:33:00 PM

--  [转帖]我的嵌入式之路-----大家共勉
最关键两点:
1、嵌入式是什么?
2、嵌入式需要哪些知识?
  知道了这两点,好办!我就开始规划学习路线。计算机的基本理论不能丢,于是重点看组成原理,数据机构,操作系统、c++。
  这个题目很大,给人一种感觉我好像很成功,其实不然。实际上自己水平不高,甚至很低,但是做过了一些曲折的学习道路,同时把自己真实的学习历程表达出来,希望对后来者有借鉴的意义,甚幸!

工作三年、几成废人!

  我2000年毕业于华中地区的一个理工科大学,专业是机械电子,我当时已经签了一家内陆某个省级机关工作,家里八辈是农民,并且很偏远,能够进入这样的地方是祖坟有风水。但在毕业前夕有个进入it的机会,我本想进去的,家里人极力反对,阻力可想而知。同时要交4000元的违约金,对我来说是天文数字。大学里的费用很多是借的,几乎将近一半的费用是在大学勤工俭学挣的,为了省钱,高中一个学期回家一次,大学一年回去一次。并且我个人也有特殊的人生背景(悲景更确切),这里不多说了,写十篇也写不完,同时偏离主题。这样我就参加了工作。一张报纸一杯茶的日子,几乎下班后有种很空虚和恐慌的感觉。在工作中虽然是与自己专业有点关系,但是很少。专业几乎荒废。我自己也思考,如果再不出去,自己将会成废人,只好让国家养了。两年后决定出去,但是几成废人,谁要呢,只好到学校去镀金。这是中国教育和社会的悲哀!

  至于专业就改为计算机方面,听说好找工作,我说实话不是很对计算机特别感兴趣,生存第一需要。不要笑我,哈哈!考研成绩出来,超过了国家线几十分。那个方向要两个,我第三,但是那年非碘,不面试就按分数来排,自然我落选了。其实给我面试机会也不一定要我,哈哈,自己几斤几两很清楚。最后调剂到另外一个学校,交钱,咬咬牙,交吧!现在仍然债台高筑!

进入学校前夕

  为什么要把这段列出,看后就知道了。

  单位有网络,经常上网查些英语资料,在那里唯独英语没有丢很多。于是我就在网上查资料,学什么好呢,最后确定学嵌入式把,听说跟硬件相对比较紧密!而我在大学里多少学习了数字电路,单片机等,所以多少也有所利用,不会真的一无所知。当然在这之前也自学过数据结构,计算机组成原理等。C 语言在大学就学了。哈哈这就是我的家底。

  我知道自己的基础差,于是我就拿操作系统,数据库、数据结构、c++来看,机关有这个好处,空余时间多,于是平常就看书,很痛苦,没有人请教。

  另外就上网到论坛上去,我就到各个专业的技术论坛,其实是电子论坛和嵌入式论坛。我几乎没有发帖,几乎把几个大型的出名的论坛的帖子翻遍了,虽然有很多重复的,我才知道嵌入式是个什么东东。这些帖子对我以后的学习产生了极大的影响。

最关键两点:
1、嵌入式是什么?
2、嵌入式需要哪些知识?

  知道了这两点,好办!我就开始规划学习路线。计算机的基本理论不能丢,于是重点看组成原理,数据机构,操作系统、c++。同时论坛上了解到,实时操作系统ucos是一个很好的嵌入式操作系统,对初学者很好。于是我就买了一本书,但是代码在电脑里调不通,网上也有很多相同的问题,我就看书,分析代码,一遍不行就两遍,三遍,这样才看了入了门,才知道什么是进程。原来看操作系统书时,根本就不知道进程是个什么东西。

  在这段时间掌握的东西不多,但是,对我以后的影响很大,我想起了大学时一个同学跟我说过了一句话:大学里最重要的不是学到了什么,最重要的是学会怎么学!大概是这个意思。

进入我的避难所

  对我来讲,再次进入大学不再是大学,而是避难所。希望这次进入给我喘气和养精蓄锐的机会和时间。我是这样认为和实践的。

  在学校我有三件事:上课,上图书馆,上网。

  对于上课,学校开了很多课程,非常好,很多是名人名师讲解,于是很多同学都想学,都去听。我也考虑过,最后放弃。我是这样认为的,时间是有限的,什么都想学,什么都学不成。于是我把我自己学的课进行了分化,一般的课程通过就行,重要的一定好好学。我希望不要什么争论学习课程多和少的问题,这仅仅是我的看法。所以我的成绩应该是很差的。分数低。好在后来的单位没有要我的成绩单,否则就惨了。

  我个人感觉是上图书馆的效率比在寝室里高多了,这是我的经验。

  上网,我给自己定了规矩:不玩游戏,不灌水,少看电影!因为时间对我来说太少和宝贵了,我没有资格和资本来浪费这些。上网我就在几个重要的专业技术网站上逛,下载技术资料。我一个朋友最近开了一个嵌入式网站www.embeded.cn 里面的资料相当一部分是我在网上找的资料。那个网站很不错,资料丰富,找嵌入式方面,特别是嵌入式linux的资料,异常丰富。

  有人会问,您下了那么多资料,怎么看的完和消化的了呢?

我是这样对待这个问题的:

  1、网上资料比较零散,不系统,但是如果把差不多的东西收集起来看就相对完整了,(嵌入式的图书就是这两年特别多,特别是2004年,简直是向外涌!2003年想买本嵌入式,特别是嵌入式linux的不多。)

  2、对于像我这种入门的来说,很多看不懂,没关系,反复看,我个人对学习方法的一个总结是:重复是最好的老师!

  3、 即使有的用不上,也可以收集以后用的上时查阅。

  但是我并非什么都要,目前我的技术路线是嵌入式linux,所以像wince之类基本上不收集。

  总之,我在学校里我充分利用时间来学习,我看到一些同学整天的挂在网上打游戏,发些无关痛痒的帖子,浪费时间呀!我真的很痛心!

学习嵌入式
  在这里我把它单独列出,文章有点紊乱,但是内容希望有益。

1、学习linux
  根据我在论坛的了解,我选择学习嵌入式linux,刚好我们学校也重视嵌入式linux,从实验室到课程安排都是关于嵌入式linux方面,天时地利!这里我把学习linux的经验和教训说说。

  可以这样说,在论坛里说道学习linux差不多就学习linux内核。于是我电脑里安装了linux就开始看linux内核方面的书了。我记得来学校以前就买到一本陈莉君的讲linux内核的第一版,现在有第二版了。我就开始看那本说,大家说linux内核情景分析不错,我就买了上下册,后来又买了《深入理解linux内核》,最后也买了毛德操的《嵌入式系统》也是分析linux内核代码的,主要讲arm相关的。

  看内核期间是个非常痛苦的过程,看情景分析有种在森林中找出路,其间我组织了一些同学学习内核,几乎没有几个能坚持下来的。我认为我是坚持下来了。情景分析在看第一、第二遍是几乎没有摸到门道,我分析有三个方面的原因:1、自己的基础差,这是最关键的。2、内核本身很难。3、没有交流和高人指点。到了第三遍时我才摸到门,才差不多知道个linux的大概脉络,很多细节也是稀里糊涂。

  学习linux总结,这里声明一下,我指的嵌入式主要是偏向软件的嵌入式。学习嵌入式的重点和难点关键在操作系统,如果没有掌握操作系统,我认为很难把握一个嵌入式系统。即使在做嵌入式开发中,作应有层的开发几乎可以不知道操作系统也可以开发,我认为那是浮在表面的。很难深入和提高自己的层次。声明:一孔之见!不可深究!

  在学习linux内核过程中犯了一个极其严重路线错误:对linux几乎不懂就开始学习内核。我个人推荐一个学习路线是:使用linux—〉linxu系统编程开发---〉驱动开发和分析linux内核。而我差不多相反,实际上你不会使用linux也可以学习内核,但是如果你懂了这些东西学习更有效率。

  关于要不要学习内核的问题,我的回答如下:不一定。如果你是喜欢钻研的那你进入内核会满足你的欲望。同时对你以后的嵌入式系统的开发有很好的影响。如果你想从事嵌入式linux系统开发,最好对内核有所了解。如果仅仅是做应用开发没有必要。我打个比喻:c、c++、java等语言是武林中的某个武林派别的话,如什么拳法,什么刀法等,那么linux 内核应该是一个人的内功的反应。

  怎么开始学linux内核:最好有三件宝物:《深入理解linux内核》《情景分析》和源代码。先看《深》,那主要讲原理,好像市场上有本讲原理性并且更浅,《linux内核设计与实现》听说不错。如果没有学习操作系统的,像我这样的,最好先看看操作系统原理的书。看了几遍后,就看情景分析,最好对着《深》看。两本交叉看,《深》是纲,《情》是目。最后深入代码。

2、学习嵌入式linux
  学习嵌入式,我认为两个重点,cpu和操作系统,目前市场是比较流行arm,所以推荐大家学习arm。操作系统很多,我个人对开始学习的人,特别不是计算机专业的,推荐学习ucos。那是开源的,同时很小。学习很好。为什么选linux,我不想讲太多,网上这方面的太多,但是我在工作中发现,做linux的技术路线很难,在windows几乎不会有的问题,在linux开发中几乎遍地陷阱。一掉进去划很长时间出来,一旦解决自己又长进了!相对来说开发周期长,难度大。现在资料也逐渐丰富起来,难度也降低了些!

  至于怎么学习,这是他的特色地方,必须有块开发板,我是同学里最早买学习板的,虽然化钱,我认为值。对我实习和工作产生了很大的影响。

  如果没有开发板,那是纸上谈兵。有人说,那要1000-2000亚,的确是,兄弟,看长远的,对您的职业和发展那点钱不算什么!有的人说我站着说话不腰痛,好吧,钱这东西对我影响很大,我在大学里扫厕所,扫的不错,奖5元/月。兄弟你有过吗?我认为教育投资是效益最有保障的!我实习拿3k,很多同学拿1-2k,当然比我高的也有。虽然我现在没有毕业,但一家公司就签了。从事目前流行的高档的消费电子的研发。对于我两年前一无所知的我,应该有质的变化,我感谢学校收了我这个废品。当然我也非常的努力。说这么多并不是要炫耀我什么,实际上根本不值得炫耀,虽然现在工作环境和待遇比较满意,但是,我发现我很差,特别是代码能力,我希望平常大家少玩游戏,多编程。编程才是硬道理!

3、 学习板和培训

  你可以不接受培训,但是不能不买开发板。如果你想学习嵌入式一定要买块学习板,最好买块arm9的,贵些也值。可以跑高级操作系统。这个不要什么品牌公司的,一般不会出什么问题,市场上的板子一般是三星的2410,基本上是抄的。如果是做产品那要注意些。一般的公司一般要2000,加lcd要3000甚至更多。我接触到有的板只要1200,加lcd也就2000,差别比较大,我认为学习都够啦。

  对于培训,如果有条件最好参加,主要是嵌入式相对别的不同,自己摸索很费时,如果有高手指点非常的好,进步快。特别是认识做这些的朋友。我接受过培训,认识个朋友。在以后的工作中帮我很多,在这里谢谢他!我记得哈佛的一个MBA的学生这样说,大意是:在哈佛学到什么不重要,最重要的是这些未来各大公司的高级管理人员是我的同学!真是有远见!

  目前市场是培训比较贵,一个星期两三千,真正算起来也要,那些讲师待遇绝对不会低。但是有个致命的问题是连续上课,一连几天,效果不佳。我希望社会上多出些1000元左右,并且时间长些,如一个月,一周一到两次课。如果没人做,我来做,哈哈!

  没有想到,一下写了这么多,其实还想写的,比如在中科院的一位老兄是怎样学习linux内核和看书的,真的很感动。他的为人我很钦佩。也想介绍毛德操的《嵌入式系统》那本书,对学习arm linux的很好,也想介绍实习和工作的东西,太长了,耽误大家时间。我也不想检查里面的错别字了,很多!就写到这里吧。


--  作者:enyaxp
--  发布时间:3/18/2008 12:45:00 AM

--  
好文!
--  作者:tinyqueen
--  发布时间:3/21/2008 9:12:00 AM

--  
很好
学习学习
--  作者:windowsbbs
--  发布时间:10/25/2011 8:56:00 PM

--  
我也要好好努力啊
--  作者:peixun
--  发布时间:2/6/2012 11:46:00 AM

--  
[URL=http://www.itpeixun.net/danpianji-peixun.html]单片机培训[/URL]与[URL=http://www.itpeixun.net/danpianji-xuexi.html]单片机学习[/URL] 一般来讲,软件人员假定处理器具有恒定的运行速度,并将其作为实时基准。常常采用一个具有己知运行时钟数的紧密循环来产生延迟。由于DS80C320运行指令的速度要比标准8032快得多,那些最初设计的定时循环将无法产生原定的结果。尽管作为一种不良的软件设计,软件定时循环的使用还是被广泛接受,在实际应用中,被相当频繁地用于嵌入式应用。DS80C320的内部定时器的默认状态与8032中的定时器完全相同。如果应用代码正在利用这些定时器而非软件来产生延迟,那么代码的运行结果将与最初的设计完全相同。
上电复位
DS80C320集成了能够为其自身提供上电复位功能电路。同时RST引脚仍然可以连接到一个外部的复位产生电路,这种集成于片内的功能可以给新的设计带来方便。处理器拥有自己的复位功能在很多情况下很有好处。不过,有些情况下,片内复位还是不能满足用户的需要。如果复位不能在期望的电平下触发,或者如果复位不能延续期望的时间周期,正如在使用电池备份 RAM作为存储器时的情况又会怎么样?如果RAM 包含有自己的电压检测电路,并且在和DS80C320脱离复位的相同电压下(4.0V)尚未变为无保护状态,那么处理器就会去访问保护状态下的RAM。虽然这种情况并不普遍,但给每个特定应用留下了一个需要考虑的问题。
功率消耗
除了作为一个更高性能的器件,在等量的工作负荷下,DS80C320还是一个比功耗更低的器件。所有CMOS器件随着速度的增加,会消耗更多的功率。由于 DS80C320具有更高的速度,对于给定的晶振频率,它会消耗更多的功率。然而,如果考虑等量的工作负荷,其功耗略低于传统的8032。这种功耗差异可能仅对于电池供电的应用才显得重要,在此情况下,待机模式时的功率可能更为重要。[URL=http://www.itpeixun.net/qianrushi-peixun.html]嵌入式培训[/URL][URL=http://www.itpeixun.net/qianrushi-peixun.html]http://www.itpeixun.net/qianrushi-peixun.html[/URL]
--  作者:logta2502
--  发布时间:3/19/2012 2:30:00 PM

--  
贴子不错,顶一个上来哟!!!!


白大夫眼部护理精华走珠|http://www.baidaifuu.com


--  作者:happem
--  发布时间:9/4/2012 5:07:00 PM

--  
3G嵌入式开发领域是最具发展前途的IT应用领域之一。已经是众所周知,学习嵌入式基础甚是重要,如果没有一点C相关基础,是很难突破到重点,而且学习起来比较吃力,当然学习嵌入式要从个人的知识背景和现实条件出发,订立合适的阶段目标,在允许的条件下多动手思考和实践,实践是最锻炼人的方式。
嵌入式入门门槛较高,但是再难再高都是一步一步走出来的,所以没有必要因为门槛高就觉得很困难,一步一个脚印,贵在坚持就可以了。
嵌入式主要是C,学习嵌入式,该学习什么基础知识,想必大家也是比较困惑的,里仁教育嵌入式学院借此机会给大家详细讲解一下:
第一点:C语言,这个是毋庸置疑的,不管是做嵌入式软件还是硬件开发的人员,对C语言的掌握这个是必需的,特别是对于以后致力于嵌入式软件开发的人,现在绝大部分都是用C语言,你说不掌握它可以吗?至于如何学习C语言,我想这些基础的知识每个人都有自己的方法,关键要去学习,
嵌入式基础很重要,因为嵌入式学习周期比较长,需要的知识面也比较广。
第一部分:(1)C语言:C语言是所有编程语言中的核心部分,因此必须非常熟练的掌握.
第二部分:(2)操作系统原理;
第三部分:(3)linux高级编程:这是在企业面试中常常会遇到题目,也是必考的一部分。
学习嵌入式的重点和难点关键在操作系统,如果没有掌握操作系统,我认为很难把握一个嵌入式系统。即使在做嵌入式开发中,作应有层的开发几乎可以不知道操作系 统也可以开发,我认为那是浮在表面的。很难深入和提高自己的层次。嵌入式的重点看组成原理,数据机构,操作系统、c++!
嵌入式培训  http://www.lirenedu.org/
嵌入式每个原理都是需要了解与掌握的。所以嵌入式之路必在于努力,坚持之中哦!如果想参加培训,推荐一家不错的培训机构,里仁嵌入式培训学院.网站有很多相关的基础文章。可以去学习学习!

W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
16,503.910ms