欢迎来到一句话经典语录网
我要投稿 投诉建议
当前位置:一句话经典语录 > 心得体会 > 嵌入式软件课程设计心得体会

嵌入式软件课程设计心得体会

时间:2015-06-02 15:01

我想学习嵌入式,谁能告诉我比较系统的学习方案,包括课程和推荐书籍

我觉得看书太痛苦了,真正看书很难学好嵌入式的,这是我自己的体会。

我原来自学嵌入式的时候,自己看书看来朦胧,感觉有的好像懂了,可是过阶段完全忘记了,后来看到一篇文章《如何学习嵌入式》,那是一个嵌入式的高手写的,我就跟了他的方法,看视频,确实效果非常好。

关于学习的课程,在那篇文章也写了,我给你看看。

学习嵌入式,该学习什么基本的知识呢

首先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 的代码等等,麻雀虽小,五脏俱全,如果你全看完了,那我想你就是一名很成功的嵌入式工程师。

至于上面说的知识如何学习呢

每个人都应该去找自己最好的方法,所谓的最好的方法就是最适合自己的方法。

很多人看不进书,那就去看看视频吧。

视频也应该要选择,不是随便看看,应该要有所选择,有所挑选。

我也是这样一路走过来的,不过我这人比较懒,我看不进书,一看书我就想睡觉,所以这几年我都是看视频过来的,现在也算学有所成,但也不敢说是高手吧。

我在网上看到,有人把自己学习嵌入式的视频总结出来,嵌入式系列实践和视频教程,大家可以看看网址 我仔细看了觉得很不错,我本来也想整理下,可是奈何我自己的电脑硬盘空间才40G,没有办法,时间也是不够,心有余而力不足,我不是在帮他做广告,虽然要花钱,我觉得算不错,至少自己不用去整理和花大量的时间去找资源,当然如果网上有的下,你网速和硬盘都够的话,我建议大家自己网上下也好。

想想我自己该开始学的时候,那时视频资源少之又少,我买书和买视频至少花了几千块,但是我觉得那很值,至少我现在赚回来了很多知识。

最后,希望这篇文章对热爱嵌入式,想致力于嵌入式开发的朋友有所帮助。

送给大家一句简单而又朴素的话,坚持就是胜利,贵在坚持,也可以看看如何坚持嵌入式学习

嵌入式技术与应用

嵌技术应用 主要就业方向和前景: 式技术及应用是计算机应术发展,具有广泛的应用领域和发展前景,就业形势看好。

该专业毕业生适于IT行业、信息家电和机电类产品中的计算机应用设计开发岗位就业,担任嵌入式产品及应用系统的设计与开发工程师,从事嵌入式技术的应用项目设计开发、产品维护与技术服务等工作。

主干课程及实践环节:计算机系统组成、计算机接口技术、单片机及应用、数据库应用、计算机网络及应用、IT电子产品设计与仿真(EDA)、C\\\/C++\\\/JAVA程序设计、驱动程序设计、嵌入式操作系统、嵌入式系统设计、机器人及智能电子产品的软件开发、国家(或行业)专业技术资格认证课程,IT电子产品设计与仿真、驱动程序设计、计算机接口技术、嵌入式系统设计智能机器人软件开发等实训。

嵌入式系统软件可靠性设计资料及嵌入式软件可靠性设计培训

“中国电子标准协会WAYS”有嵌入式软件可靠性设计的企公开课程和企业内训安排,详情可以百度搜一下他们网站了解一下。

以下为他们协会的通用大纲

嵌入式软件既是电子系统的核心,也是硬件系统的有效补充,需要具备防错、判错、纠错、容错的功能,具备了这些功能,就能保证系统可靠性要求在软件分系统设计中的实现。

但是软件可靠性又不同于硬件电路,它不会随时间的推移而降低,并且其可靠性保障全部在设计过程中实现。

因此软件工程的工作也是软件可靠性所要关注的内容。

为此,中国电子标准协会决定组织召开《嵌入式软件可靠性设计》讲座,本讲座主要从嵌入式软件的系统设计、需求分析、接口、模块、变量控制、软件测试、安全性分析、硬件匹配设计等设计规范进行总结和分析,深层次探讨嵌入式软件的可靠性设计技巧。

现具体事宜通知如下:课程提纲:1.概述和定义2.计算机系统设计准则:2.1、一般要求;2.2、硬件与软件功能的分配原则;2.3、硬件与软件可靠性指标的分配原则;2.4、安全关键功能的人工确认;2.5、安全性内核;2.6、自动记录系统故障;2.7、禁止回避检测出的不安全状态;2.8、保密性设计;2.9、容错设计3.硬件设计:3.1、硬件选用;3.2、总线检测;3.3、加电检测;3.4、电源失效的安全措施;3.5、主控计算机失效的安全措施;3.6、反馈回路传感器失效的防护措施3.7、电磁干扰的防护措施;3.8、维修互锁措施4.软件需求分析5.软件危险分析6.安全关键功能设计7.冗余设计准则:7.1、指令冗余设计;7.2、软件陷阱与软件拦截技术;7.3、软件冗余8.接口设计准则:8.1、硬件接口要求;8.2、硬件接口的软件设计;8.3、人机界面设计;8.4、报警设计;8.5、软件接口设计9.软件健壮性设计准则:9.1、电源失效防护;9.2、加电检测;9.3、电磁干扰;9.4、系统不稳定;9.5、接口故障9.6、干扰信号9.7、错误操作;9.8、监控定时器的设计9.9、异常保护设计10. 简化设计准则:10.1、单入和单出;10.2、模块的独立性;10.3、模块的扇入扇出;10.4、模块耦合方式;10.5、模块内聚顺方式;10.6、其他特殊考虑11.余量设计:11.1、资源分配及余量要求11.2、时序安排的余量要求12. 数据要求:12.1、数据需求;12.2、属性控制;12.3、数值运算范围控制;12.4、合理性检查 13. 防错程序设计准则:13.1、参数化;13.2、公用数据和公共变量;13.3、标志;13.4、文件;13.5、非授权存取的限制13.6、无意指令跳转的处理;13.7、程序检测点的设置13.8、寻址模式的选用;13.9、数据区隔离;13.10、安全关键信息的要求;13.11、信息存储要求;13.12、算法选择要求14. 编程要求:14.1、语言要求;14.2、汇编语言编程限制14.3、高级语言的编程限制;14.4、圈复杂度指数(McCabe)14.5、软件单元的规模;14.6、命名要求;14.7、程序格式要求;14.8、程序注释要求与方法;14.8.1、注释的一般要求14.8.2、模块头注释要求; 14.8.3、模块内注释要求;14.8.4、安全关键内容注释要求;14.9程序设计风格;14.9.1、通用类;14.9.2、结构类;14.9.3、说明类;14.9.4、输人输出类;14.9.5、语言类15. 多余物的处理:15.1、文档中未记载特征的清除;15.2、程序多余物的清除;15.3、未使用内存的处理;15.4、覆盖的处理16. 版式17. 注释18. 命名19. 可读性20. 变量、结构21.函数、过程22. 可测性与软件测试:22.1、需求遗漏或不明确22.2、配置保存的生效22.3、缺省配置的影响22.4、报警和清除 22.5、菜单选项测试 22.6、缺省配置测试22.7、系统测试注意事项23. 程序效率24. 质量保证25. 代码编辑、编译、审查26. 代码测试、维护27. 宏

嵌入式技术需要学习什么

嵌入式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本身。

算法,架构方式等都很重要。

这里很多书其实是推荐而已,不必太在意,关键还是基础,才是重中之重

请问嵌入式软件工程师具体要学习什么内容

嵌入程师需要学习的内容包C语言,汇编,数据结构,linux高级编程,ARM系统,嵌入式内,嵌入式驱动。

看你问题,应该是对嵌入式很感兴趣,其实你可以自学嵌入式。

关于如何学习嵌入式,我刚才看到一篇很不错的文章,是一个专科生介绍自己如何自学嵌入式,并找到嵌入式的工作,里面介绍了他的学习方法和学习过程,希望对你有帮助。

………………………………………………………………………………………………………………………………………………………………先做个自我介绍,我07年考上一所很烂专科民办的学校,学的是生物专业,具体的学校名称我就不说出来献丑了。

09年我就辍学了,我在那样的学校,一年学费要1万多,但是根本没有人学习,我实在看不到希望,我就退学了。

退学后我也迷茫,大专都没有毕业,我真的不知道我能干什么,我在纠结着我能做什么。

所以辍学后我一段时间,我想去找工作,因为我比较沉默寡言,不是很会说话,我不适合去应聘做业务。

我想应聘做技术的,可是处处碰壁。

一次偶然的机会,我才听到嵌入式这个行业。

那天我去新华书店,在计算机分类那边想找本书学习。

后来有个女孩子走过来,问我是不是读计算机的,有没有兴趣学习嵌入式,然后给我介绍了一下嵌入式现在的火热情况,告诉我学嵌入式多么的有前景,给我了一份传单,嵌入式培训的广告。

听了她的介绍,我心里痒痒的,确实我很想去学会一门自己的技术,靠自己的双手吃饭。

回家后,我就上网查了下嵌入式,确实是当今比较热门的行业,也是比较好找工作的,工资也是相对比较高。

我就下决心想学嵌入式了。

于是我去找嵌入式培训的相关信息,说真的,我也很迷茫,我不知道培训是否真的能像他们宣传的那样好,所以我就想了解一段时间再做打算。

后来,我在百度知道看到一篇让我很鼓舞的文章,是一个嵌入式高手介绍没有基础的朋友怎么自学入门学嵌入式,文章写的很好,包含了如何学习,该怎么学习。

他提到一个方法就是看视频,因为看书实在太枯燥和费解的,很多我们也看不懂。

这点我真的很认同,我自己看书往往看不了几页。

我在想,为什么别人都能自学成才,我也可以的

我要相信自己,所以我就想自学,如果实在学不会我再去培训。

主意一定,我就去搜索嵌入式的视频,虽然零星找到一些嵌入式的视频,但是都不系统,我是想找一个能够告诉我该怎么学的视频,一套从入门到精通的视频,一个比较完整的资料,最好能有老师教,不懂可以请教的。

后来我又找到一份很好的视频,是在IT学习联盟网站推出的一份视频《零基础嵌入式就业班》(喜欢《零基础嵌入式就业班》的可以复制 sina.lt\\\/qKh 粘贴浏览器地址栏按回车键即打开)。

里面的教程还不错,很完整,可以让我从基础的开始学起。

视频比较便宜。

下面介绍下我的学习流程,希望对和我一样完全没有基础的朋友有所帮助。

收到他们寄过来的光盘后,我就开始学习了,由于我没有什么基础,我就从最简单的C语言视频教程学起,话说简单,其实我还是很多不懂的,我只好请教他们,他们还是很热心的,都帮我解决了。

C语言我差不多学了一个礼拜,接下来我就学了linux的基本命令,我在他们提供linux虚拟机上都有做练习,敲linux的基本命令,写简单的C语言代码,差不多也就三个礼拜。

我每天都在不停的写一些简单的代码,这样一月后我基本掌握了C和linux的基本操作。

接下来我就去学习了人家的视频的培训教程,是整套的,和去参加培训没有多大的区别,这一看就是两个月,学习了ARM的基本原理,学习嵌入式系统的概念,也掌握了嵌入式的环境的一些搭建,对linux也有更深层次的理解了,明白了嵌入式应用到底是怎么做的,但是驱动我只是有一点点的了解,这个相对难一点,我想以后再慢慢啃。

这两个月,除了吃饭睡觉,我几乎都在学习。

因为我知道几乎没有基础,比别人差劲,我只能坚持努力着,我不能放弃,我必要要靠自己来养活自己,必须学好这门技术,然后我就把不懂的问题总结记下来,这样慢慢积累了一段时间,我发现自己真的有点入门了。

最后的一个月,我就去看关于实践部分的内容,了解嵌入式项目具体的开发流程,需要什么样的知识,我就开始准备这方面的知识,也就是学习这方面的视频,同时他们建议我去找了找一些嵌入式面试的题目,为自己以后找工作做准备。

我就到网上找了很多嵌入式的题目,把他们理解的记下来,这样差不多准备了20天左右 我觉得自己差不多入门了,会做一些简单的东西了。

我就想去找工作看看,于是我就到51job疯狂的投简历,因为我学历的问题,专科没有毕业,说真的,大公司没有人会要我,所以我投的都是民营的小公司,我希望自己的努力有所回报。

没有想过几天过后,就有面试了,但是第一次面试我失败了,虽然我自认为笔试很好,因为我之前做了准备,但是他们的要求比较严格,需要有一年的项目经验,所以我没有被选中。

后来陆续面试了几家公司,终于功夫不负有心人。

我终于面试上的,是在闵行的一家民营的企业,公司规模比较小,我的职务是嵌入式linux应用开发,做安防产品的应用的。

我想我也比较幸运,经理很看重我的努力,就决定录用我,开的工资是3500一个月,虽然我知道在上海3500只能过温饱的生活,但是我想我足够了。

我至少不用每天都要靠父母养,我自己也能养活自己的。

我想只要我继续努力,我工资一定会翻倍的。

把本文写出来,希望能让和我一样的没有基础的朋友有信心,其实我们没有必要自卑,我们不比别人笨,只要我们肯努力,我们一样会成功。

希望这个对你有帮助。

……………………………………………………

软件技术(嵌入式软件工程师) 是个什么专业

说下我的经历。

我是学的软件工程学校要把基础学好,操作系统,网络,组原,编数据结构和算法。

编程的话,我那时候是主攻C++,java也学过。

毕业也找了份通信设备制造商的工作,做的嵌入式软件工程师。

主要做通信设备上协议的开发,工作中主要学习网络协议,内核编程。

我不知道你到底是想学底层的开发,还是只是想学linux下的应用软件开发。

但看你想学linux内核,我就说说我看内核的情况吧。

在刚开始工作的时候,我被要求花2个多星期的时间准备一个ppt给整个部门做个报告,内容是linux内存管理。

相信你也有点基本概念吧,操作系统中可以这么说,最重要的就是内存管理和文件系统这两大块,可想而知对于我一个新人来讲内存管理压力是多么大。

但是我坚持下来了,并通过这两个多星期的学习,真的学到很多东西,所以人有时候就得逼着自己做。

内核学习是非常枯燥的,要想学的话就得持之以恒。

学内核之前,之前说过的基础学科的知识是必要掌握的,接着就可以开始内核之旅了。

首先去买本内核的书吧,understand linux kernel是个不错的选择,英文过的去的话就看英文的,有什么不懂的或难以理解的可以去ChinaUnix论坛上提问,linux书籍有很多,网上搜一下很方便的,给个链接。

平时也要结合代码看,2.6的内核直接在网上搜下就能下到。

这是我的个人经历,你可参考下。

关于选择学习研究生的软件工程嵌入式方向

你要是坚持就没问题,我学电子信息工程的,专业课中就有个c语言与嵌入式沾边,我在网上买视频、书、开发板等等花了不少钱,两个学期基本的嵌入式开发已经没问题了,你是在读研各方面应该比我强吧,坚持学下去肯定没问题

声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。联系xxxxxxxx.com

Copyright©2020 一句话经典语录 www.yiyyy.com 版权所有

友情链接

心理测试 图片大全 壁纸图片