还剩13页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
嵌入式实习总结模板 就在昨天3月9日,学校规定实习时间已经到期了从上个月的13日到现在已经近一个月,虽然与公司的实习时间还没有结束,但是为了完成学校交待的任务,在此对这段时间的实习做一个总结 首先,我先来简单介绍下实习单位我实习的单位全称——上海宝信软件股份厦门分公司其作为上海宝信软件中的重要一员,是宝信软件在全国多网点支持效劳的延伸,具备与宝信软件上海总部相同的技术效劳能力,并可无限制调用总部专家资源,秉承宝信软件“IT效劳,提升信息价值”的经营理念,致力于IT效劳,主营业务包括网络平安产品销售、系统集成、运维效劳、软件工程等 其次,向大家介绍是我的实习内容这里要先介绍我的实习岗位——嵌入式软件开发工程师实习内容大致分为两块,一是软件测试,二是编码在我们刚来的前两周,我的实习内容就是软件测试软件测试的主要内容是UnitTest也就是单元测试但是,在实习刚开始的阶段,我并没有就马上做测试而是有前辈给我发了一份我们要做的产品的功能书给我看功能书文档是日文版的,我要把它看懂,才知道我们这里到底是做什么后面的测试工作就是做单元测试了 我们在做测试是有测试环境的,整个单元测试过程是有前人的所以只要按照规那么来就没有问题,也相比照拟简单就这样单元测试做了近8天左右,测试了51个c++函数其实,单元测试比拟简单,但是碰到函数的输入输出的值及路径多的时候,特别的烦,会影响测试效率实习的另一个内容就是编码,其实说确实切一点,是看代码一个刚来不到3周的新员工,以前又没有经验,公司怎么会放心让你写代码有前辈给我安装了秀丸和SourceInsight软件,然后给了我一代码,让我按上面看,有问题可以问组里的前辈C++代码是看的懂,但是太多的函数,被调用的关系也不清楚,也不了解决函数的意义,所以感到很无趣也许是在考验我的耐心或者是让我熟悉代码编写的标准不管是什么目的,至少自己可以稳固下c++的根底不过真的要感谢前辈的细心指导,使我大概了解程序的调用关系 再次,向大学介绍下我的实习阶段的工作过程每的8小时的上班时间,但是一般会比这个时间长的早上8点45分到9点15分不等上班,晚上5点30分到6点不等下班,中午11点可以去吃饭、1点之前上班这个时间还是比拟人性化的当然也有时候也要加班,如有时候日本客户来这里的时候,发现我们的人都很早下班的时候,他就会和我们的上级说,然后我们就得加班这也是一种非常情况,但是加班是可以调休的每天的上班时间根本上是跟电脑打交道 前期实习阶段都是翻开电子表格看日语版功能说明书,后面做测试的时间就是各种软件一起用了每天做单元测试的时候,其实感觉特别烦有时候一天做7到8个,有时候一天2个做不到但是整个过程自己还是坚持下来了,虽然很累,自己还是很好强的后期根本上是学习编程了由于后面工程已经交互,所以每天都不没有加班了每天的工作主要就是学习代码标准,如那里怎么缩进、命名之类的事至于逻辑什么的,还是很不清楚,还需要努力多问多想 再次,与大家分享下我的实习收获虽然与原方案5个月的实习还差很远,但自己还是很有收获其一,对于歌乐Audio工程有一定的了解具体的表现在,分了几层我个人是分配到app层,也就是业务应用层虽然对业务的熟悉不够深,但大概知道,每一天前辈们都在做什么事其二,日语方面的加强因为客户方面根本上是日本人,所以加强日语学习是必须的有了这样的一种压力,自动会转化为一种动力,促使我去学习我想这样多少可以提高低我的日语能力还有就是,常常有很多日本客户就做在我的旁边感情还是很紧张,因为不知道怎么跟他交流结果每一天他来的时候,我只能和他说声早上好希望自己在今后的时间里要多多加强日语学习,争取与日本客户交流,才能提升自己的能力其三,交流沟通能力的提高其实自习也一直觉得沟通能力对成功奉献是最大,要把一件做成肯定不是一个人的事情,我们需要与别人沟通在沟通中互相了解相联系的局部,这样才能够防止摩擦带来不必要时间与精力的浪费而我自己的沟通能力提高表现在自我意识的提高当遇到问题的时候,会主动的想想,是哪个具体的点不懂,然后列出问题,再向前辈请教这样大脑里就会有一个逻辑过程通过这样就可以把自己的意思清楚的传达给别人在别人向自己传达信息的时候,我会边思考边听,遇到不了解的地方,讲明白自己的不解之处这样这个沟通过程就会比拟流畅其四,职场意识的提高可以说来实习就意味我们提前毕业了,提前进入社会所以,由学生到社会职业人的过渡期就被实习给填充了经过一个月实习,我发现自己已经很习惯在公司工作对于自己能做什么,未来能做什么也有了一定的思考不管毕业,我还是留在这个公司还是去其他的公司,我想我心中已经有了这份意识,这对我将来的职业生涯都是有帮助的其五,时间管理很多人工作的时候就忘记了生活的存在,我们的生活是多彩的,并不是只有工作其中,有一项转变的比拟大,就是很多人不喜欢运动了对于这些,我都是不太认可的我还是会抽出时间出去运动一下我觉得运动可以带给我健康,同时会让我的精神更好,工作更有效率其实,运动并不会浪费我们时间,而是会给生活带更美好 最后,与大家分享一下我这个月实习的与体会通过这段时间的学习,从无知到认知,到深入了解,渐渐的我喜欢上这份工作,让我深刻的体会到学习的过程是最美的在整个实习过程中,我每天都有很多的新的体会,新的想法,想说的很多,我总结下来主要有以下几点
1、持之以恒 既然选择了自己的这份工作,不管工作本身怎么样,我们都要坚持往下走因为我相信每一家公司的工作原理都是差不多的如果你在这家公司做不住的话,我想你在另外一家公司也是做不住的只有我们改变自己的态度,才可能战胜心中的急躁我们新人一来到公司我,一开始都不会立刻给工作我们做,-一般也都是先让我们看看文档或代码,时间短的要几天,时间长的要几周,在这段时间里很多人会觉得很无聊,没事可做,便觉没有开展空间,于是产生想走的念头恰恰在这个关键的时候更需要我们的坚持,轻易放弃只会让自己懊悔
2、不怕做小事,那是一种考验 我们一来到公司实习的时候,很多组里的前辈多数还是把我们当学生看待他们不会也不敢让我们直接参考到一个真正的工程中去在这个其间一般会给我们看一些过去做过工程的文档和代码,其实不可小看这些小事,也许是为了考验我们,也许是让我们先了解业务作为一人新人,一定要积极面对这些,勇于担当做小事,喜欢做小事这样公司同事才会更快的接受你,慢慢地才会让你做一些重要的工作
3、态度端正,一定要多主动 我们到公司工作以后,要知道自己能否胜任这份工作,关键是看你自己对待工作的态度,态度对了,即使自己以前没学过的知识也可以在工作中逐渐的掌握态度不好,就算自己有知识根底也不会把工作做好,四多一少就是我的态度,我刚到这个岗位工作,根本不清楚该做些什么,并且这和我在学校读的专业与这里做的东西还是不太一样的,刚开始我觉得很头痛,可经过工作过程中多看别人怎样做,多听别人怎样说,多想自己应该怎样做,然后自己亲自动手去多做,终于在这一个月里对工作有了一个较系统的认识,慢慢的自己也可以完成相关的工作了,光用嘴巴去说是不行的,所以,我们今后不管干什么都要端正自己的态度,这样才能把事情做好 4.不要报怨 其实在做单元测试的那个时候,有时候觉的特别的烦有时候做了半天连一个函数都没有把弄出来,那种感觉真的是非常的难受,心中也有委屈可是这是我的工作,我报怨也没有用只能一步一个脚印走过来直到后面把函数测完,心中还是很有成就感的其实有的人会觉得公司这里不好那里不好,同事也不好相处工作也不如愿,经常埋怨我觉这样只会影响自己的工作情绪,不但做不好工作,还增加了自己的压力所以,我们应该少埋怨,要看到公司好的一面,对存在的问题应该想方法去解决而不是去报怨,这样才能保持工作的激情
5、虚心学习 由于我们是新手,而且又还没有从学校里完全走出来所以在工作过程中,我们会碰到很多问题,有的问题我们可以有我们所学的解决,有的有很大业务性的问题,我们就无法解决这个时候不要不懂装懂,应该虚心地向前辈们请教请不要害怕,因为前辈肯教我们肯定是我们的福气,对我们以后在工作中都有帮助的同时请教的时候也是一个锻炼沟通的过程在前辈给我们解惑的时候,我们也应该虚心的接受,不要装着一副不屑的样子
6、知错能改 做为一名新人,不管在学校有多么的优秀,来到公司,我们顶多就只有点根底,其他什么的都得重新开始在学习的过程当中,犯错是不可防止的知错能改是我们唯一的选择明知自己有错,还理直气壮那是不应该的我认为这种行为是可耻的在犯错的时候来铭记于心,不要第二次在犯同样的错了当前辈或其他人指出我们的错误时,我们要虚心听教,坦诚改错这样我们才会进步,才会在组里与同事相处融洽
7、团队合作 重要的不是我,是我们在一个工程组里,我并不是一个人我只能说我是组里的一个局部我们每一人都不是神,我们不可能一个来完成所有的工作,因此,必须分工但是,分工并不是都很明确的每个人分到的工作,多多少少都会和别人的工作的有交集这是因为,作为一个工程的每个局部,最终还是整合形成整体我们还是需要这些局部与局部交集作为连接点组合起来因此,每个虽是分工,但更多是合作我们中的我必须明白这些,要有团队观,做好自己的同时,更重要也要做好与别人的沟通这样才会防止工作的重复,意见的不同等负能量
8、沟通能力 在上一点的体会团队合作中,其实我已经说了,团队合作的根底就是沟通一个有效率的团队,我认为它的成功就在于成员之间良好的沟通能力因为,人与人的沟通是信息传递的媒介没有良好的沟通根底,信息在传递的时候就会被曲解在软件开发的整个过程,团队合作是至关重要每一环节,都离不开沟通需求变更带来的问题,尤其需要在沟通中解决问题所以,让自己把信息传递的正确和有效,提高沟通能力是必不可少的
9.做人做事讲究原那么 其实在公司上下班是一个很大的学问同事都已经来上班了,你才来或者是同事还没下班,你人就都先走了其实要把这些看成一种常态在公司上班不是比谁先来,也不是比谁晚走的,比得是自己的工作的效率有时候,我们工作做完,是可以先走你想想,你走了之后,估计别人也敢走了从这一点上,可以说你是帮助了大家当然这只是开玩笑,做人做事要有点原那么工作没完成当然不能跑回去,这是没有责任的表现,以后主管怎么能把事情交给你工作做完,想先走就走了,不必当担忧这担忧那的我相信一个好的主管,不会以一些无因素来衡量一个人的只要自己身体正,就不怕别人说
10.做好职业生涯规划 每个人在来实习之前,肯定会想我来这家公司是做什么当你想好,并决定来的时候,你已经做了第一步职业生涯规划了实习也是成了我们检验方案的时候,如果你发现这个工作不适合你,毕业前你还有时机可以做换如果感觉这个工作适合你,那么你就可以做下一步 的规划了我当初选择这个工作,是因为嵌入式软件开发在近几年会开展会比拟快,而且本人对c++和c比拟感兴趣同时,目前做的工作是对日外包,对于我日语的提高也是很有帮助的现在实习给我感觉是,不出现什么其他状况,应该毕业后会留在这个公司至少今后的以日语和编程提高为主,以管理为辅 在这里,我要感谢上海宝信软件股份分司给我这次珍贵的实习时机同时,也要感谢组员对我有直接帮助的前辈当然还要感谢学校和毕业指导王老师的关心与指导 总而言之,这次实习是我大学四年来最正式的一次我想通过这次的实习,我将从学生走向社会职业人的转变一个月的时间过的太快了,但是我们的实习并没有结束通过这次的总结,我对这次实习的意义有了深刻地认识自己在今后的学习与工作中,一定会更加努力做的更好 这学期才接触嵌入式系统感觉还称不上入门,我通过学习知道了嵌入式的开展前景很大,各个领域都用到了嵌入式,学好嵌入式不愁没饭吃 广义上讲,但凡带有微处理器的专用软硬件系统都是嵌入式系统如各类单片机和DSP系统从狭义上讲,那些使用嵌入式微处理器构成独立系统,具有自己操作系统,具有特定功能,用于特定场合的专用软硬件系统称为嵌入式系统嵌入式系统由嵌入式硬件与嵌入式软件组成;嵌入式硬件以芯片、模板、组件、控制器形式埋藏于设备内部 理解“嵌入”的概念主要从三个方面上来理解
1、从硬件上,将基于CPU的处围器件,整合到CPU芯片内部,比方早期基于X86体系结构下的计算机,CPU只是有运算器和累加器的功能,一切芯片要造外部桥路来扩展实现,象串口之类的都是靠外部的16C550/2的串口控制器芯片实现,而目前的这种串口控制器芯片早已集成到CPU内部,还有PC机有显卡,而多数嵌入式处理器都带有LCD控制器,但其种意义上就相当于显卡比拟高端的ARM类IntelXscale架构下的IXP网络处理器CPU内部集成PCI控制器(可配成支持4个PCI从设备或配成自身为CPI从设备);还集成3个NPE网络处理器引擎,其中两个对应于两个MAC地址,可用于网关交换用,而另外一个NPE网络处理器引擎支持DSL,只要外面再加个PHY芯片即可以实现DSL上网功能IXP系列最高主频可以到达
1.8G,支持2G内存,1G×10或10G×1的以太网口或Febrechannel的光通道IXP系列应该是目标基于ARM体系统结构下由intel进行整合后成Xscale内核的最高的处理器了
2、从软件上前,就是在定制操作系统内核里将应用一并选入,编译后将内核下载到ROM中而在定制操作系统内核时所选择的应用程序组件就是完成了软件的“嵌入”,比方WinCE在内核定制时,会有相应选择,其中就是wordpadPDFMediaPlay等等选择,如果我们选择了,在CE启动后,就可以在界面中找到这些东西,如果是以前PC上将的windows操作系统,多半的东西都需要我们得新再装
3、把软件内核或应用文件系统等东西烧到嵌入式系统硬件平台中的ROM中就实现了一个真正的“嵌入” 嵌入式系统分为4层,硬件层、驱动层、操作系统层和应用层
1、硬件层,是整个嵌入式系统的根本,如果现在单片机及接口这块很熟悉,并且能用C和汇编语言来编程的话,从嵌入式系统的硬件层走起来相对容易,硬件层也是驱动层的根底,一个优秀的驱开工程师是要能够看懂硬件的电路图和自行完成CPLD的逻辑设计的,同时还要对操作系统内核及其调度性相当的熟悉的但硬件平台是根底,增值还要靠软件硬件层比拟适合于,电子、通信、自动化、机电一体、信息工程类专业的人来搞,需要掌握的专业根底知识有,单片机原理及接口技术、微机原理及接口技术、C语言
2、驱动层,这局部比拟难,驱开工程师不仅要能看懂电路图还要能对操作系统内核十分的精通,以便其所写的驱动程序在系统调用时,不会独占操作系统时间片,而导至其它任务不能动行,不懂操作系统内核架构和实时调度性,没有良好的驱动编写风格,按大多数书上所说添加的驱动的方式,很多人都能做到,但可能连个初级的驱开工程师的水平都达不到,这样所写的驱动在应用调用时就如同windows下我们翻开一个程序运行后,再翻开一个程序时,要不就是中断以前的程序,要不就是等上一会才能运行后来翻开的程序想做个好的驱动人员没有
三、四年功底,操作系统内核不研究上几编,不是太容易成功的,但其工资在嵌入式系统四层中可是最高的驱动层比拟适合于电子、通信、自动化、机电一体、信息工程类专业尤其是计算机偏体系结构类专业的人来搞,除硬件层所具备的根底学科外,还要对数据结构与算法、操作系统原理、编译原理都要十分精通了解
3、操作系统层,对于操作系统层目前可能只能说是简单的移植,而很少有人已写操作系统,或者写出缺胳膊少腿的操作系统来,这局部工作大都由驱开工程师来完成操作系统是负责系统任务的调试、磁盘和文件的管理,而嵌入式系统的实时性十分重要据说,XP操作系统是微软投入300人用两年时间才搞定的,总时工时是600人年,中科院软件所自己的女娲Hopen操作系统估计也得花遇几百人年才能搞定因此这局部工作相对来讲没有太大意义
4、应用层,相对来讲较为容易的,如果会在windows下如何进行编程接口函数调用,到操作系统下只是编译和开发环境有相应的变化而已如果涉及Java方面的编程也是如此的嵌入式系统中涉及算法的由专业算法的人来处理的,不必归结到嵌入式系统范畴内但如果涉及嵌入式系统下面嵌入式数据库、基于嵌入式系统的网络编程和基于某此应用层面的协议应用开发(比方基于SIP、H.
323、Astrisk)方面又较为复杂,并且有难度了 通过网上查询我发现目前国内外这方面的人都很稀缺一方面,是因为这一领域入门门槛较高,不仅要懂较底层软件(例如操作系统级、驱动程序级软件),对软件专业水平要求较高(嵌入式系统对软件设计的时间和空间效率要求较高),而且必须懂得硬件的工作原理,所以非专业IT人员很难切入这一领域;另一方面,是因为这一领域较新,目前开展太快,很多软硬件技术出现时间不长或正在出现(如ARM处理器、嵌入式操作系统等),掌握这些新技术的人当然很少嵌入式稀缺,身价自然就高,越有经验价格就越高其实嵌入式人才稀少根本原因可能是大多数人无条件接触这需要相应的嵌入式开发板和软件另外需要有经验的人进行指导开发流程我们软件系的人学习嵌入式,显然应偏重于嵌入式软件,特别是嵌入式操作系统方面对于搞嵌入式软件的人,最重要的技术显然是掌握主流嵌入式微处理器的结构与原理,必须掌握一个嵌入式操作系统,必须熟悉嵌入式软件开发流程并至少做过一个嵌入式软件工程 然而我们都没有做过一个嵌入式软件工程,甚至连嵌入式的开发流程我也不清楚,我只了解了使用简单工具做一个简单的实验只有去专研才能在嵌入式的领域站住脚,只有知道的比别人多才会更有竞争力通过网上了解,我查询了嵌入式的入门和所需要的知识,其中C语言尤为重要,不管是做嵌入式软件还是硬件开发的人员,对C语言的掌握这个是必需的,特别是对于以后致力于嵌入式软件开发的人,现在绝大局部都是用C语言其次,应该对操作系统有所了解,这对你对硬件和软件的理解,绝对有很大的帮助应该把系统的管理理解一下,比方进程、线程,系统如何来分配资源的,系统如何来管理硬件的;知道了c语言和操作系统之后,再来看看嵌入式系统,我们主要学的是ARM,用的是ARM7,深入理解ARM不是件容易的事,只有在知道ARM相关知识之后才能称得上嵌入式已经入门了与嵌入式有关的知识我也学了不少就是不能够综合在一起运用,组成原理,数据结构,操作系统,C++,这3门与嵌入式密切相关的学科都系统的学了一遍,但由于长时间没用到都有点忘记了,从网上得知嵌入式的学习与这些书有很大关系之后,我把嵌入式与以前学过的知识结合起来发现嵌入式的实验中很多都是共通的,我对嵌入式有了初步的理解 我以为学习嵌入式应该分为2个局部软件和硬件关于硬件方面我接触到了数字电路教材和模拟电路方面的知识,但由于没有嵌入式CPU很难亲自动手来实现嵌入式的相关理论;嵌入式入门那么需要不断地实验与分析,我只在实验课时做几个与所给的程序相关的小程序来实现一下;而软件方面那么学过C语言,里面通常的语法曾今熟悉过;我通过以下方法来适应C语言在嵌入式中应用首先重新翻看了下C的教材,看了些常见的语法,接着在编译器的角度来看待C,编译原理我刚学过,其中将高级语言与低级语言的翻译感觉在嵌入式中用到了很多;最后冲硬件的角度来看待C嵌入式的核心包括嵌入式操作系统,嵌入式软件开发平台及工具以及嵌入式应用软件这些决定怎样才能开发一个好的嵌入式系统下面谈谈我了解的嵌入式的相关知识与应用 首先,嵌入式系统是以应用为中心,以计算机技术为根底,且软硬件可裁减,适应应用系统对功能、可靠性、本钱、体积、功耗有严格要求的专用计算机系统嵌入式有如下几个突出的有点
1.系统内核小,2专用性强,3系统精简4高实时性OS5嵌入式系统的应用程序可以没有操作系统直接在芯片上运行,6嵌入式系统需要开发工具和环境 嵌入式系统是近几年才风行起来的,但是这个概念并非新近才出现从20世纪七十年代单片机(最早的单片机是Intel公司的8048,出现在1976年)的出现到今天各式各样的嵌入式微处理器,微控制器的大规模应用,嵌入式系统已经有了近30年的开展历史经过30年的开展,嵌入式技术已经日趋成熟,在中国嵌入式机一般由嵌入式微处理器、外围硬件设备、嵌入式操作系统以及用户的应用程序等四个局部组成,用于实现对其他设备的控制、监视或管理等功能 其次,嵌入式系统无疑是当前最热门最有开展前途的IT应用领域之一嵌入式系统用在一些特定专用设备上,通常这些设备的硬件资源(如处理器、存储器等)非常有限,并且对本钱很敏感,有时对实时响应要求很高等特别是随着消费家电的智能化,嵌入式更显重要嵌入式系统是软硬结合的学科,通常有两类人会去专研嵌入式一类是学电子工程、通信工程等偏硬件专业的,另一类是学软件、计算机专业出身的人,主要从事嵌入式操作系统和应用软件的开发我是软件专业的学习嵌入式,越是智能设备越是复杂系统,软件越起关键作用,而且这是目前的趋势嵌入式应用在很多方面,具体的可以分为工业控制,交通管理,信息家电,家庭智能管理系统,POS网络及电子商务,环境工程与自然,机器人,机电产品方面应用等方面其中目前在效劳领域,如远程点菜器等已经表达了嵌入式系统的优势例外还有很多地方用到了嵌入式系统,最近飞利浦和ARM共同推出32位RISC嵌入式控制器,适用于工业控制,采用最先进的
0.18微米CMOS嵌入式闪存处理技术,操作电压可以低至
1.2伏,它还能降低25%到30%的制造本钱,在工业领域中对最终用户而言是一套极具本钱效益的解决方案 那么该如何学好嵌入式我觉得应该从以下几点入手 首先C语言,这个是毋庸置疑的,不管是做嵌入式软件还是硬件开发的人员,对C语言的掌握这个是必需的,特别是对于以后致力于嵌入式软件开发的人,现在绝大局部都是用C语言,你说不掌握它可以吗?至于如何学习C语言,我想这些根底的知识每个人都有自己的方法,关键要去学习,看书也好,网上找些视频看也好很多人会问,C语言要学到怎么样,我觉得这没有标准的答案我想至少你在明白了一些根底的概念后,就该写代码了,动手才是最重要的,当你动手了,遇到问题了,再反过来学习,反过来查查课本,那时的收获就不是你死看书能得到的 其次,应该对操作系统有所了解,这对你对硬件和软件的理解,绝对有很大的帮助应该把系统的管理理解一下,比方进程、线程,系统如何来分配资源的,系统如何来管理硬件的,当然,不是看书就能把这些理解透,如果不是一时能理解,没关系,多看看,结合以后的工程经验,会有更好的理解的 还有应该学习下linux或者wince下的编程,这些对以后做应用的编程很有帮助,当然,如果做的话,那可以学习MTK、塞班、Android等操作系统,Android是以后开展的趋势,现在很热门,Android也是基于linux系统封装的,所以建议先学习下linux 还有,应该学习下单片机或者ARM或者MIPS,很多人说我没有单片机的经验,直接学ARM可以吗?我觉得那完全没有问题的,当然如果你学习过单片机,那最好不过了,以后学习ARM就更简单了 最后如果你把以上的知识都有所了解后,就该去阅读阅读一些优秀的代码,比方结合arm芯片手册学习去学习下UBOOT的源代码,了解下最小的系统开发,那对你整个嵌入式开发的非常有帮助的,可以的话,还可以学习下linux的源代码,当然如果你直接阅读
2.6的代码,我想你会很痛苦的,可以先看看linux代码早期的版本,比方
0.12的代码等等,麻雀虽小,五脏俱全,如果你全看完了,那我想你就是一名很成功的嵌入式工程师 以上就是我在本学期学习嵌入式后的心得及模板内容仅供参考 。