综合资讯

comprehensive
综合资讯
大学四年嵌入式学习心得体会
 

  我所在学校是普通的本科院校,从大一开始加入嵌入式实验室,一直在实验室呆了三年半,从大一的懵懂无知,天天看着 C 语言书自己敲代码,到后来学习51单片机,STM32,做过3-4个项目,参加各种比赛,轻轻松松搞定毕业设计。

  在此写的这篇 Chat 主要是针对大学学习嵌入式的童鞋的,嵌入式不容易学,牵扯的内容,知识点太多,你是否不知道如何下手呢?是否在迷茫为什么我学的这么吃力呢?下面作为过来人的我为您解答。

  在讲主要内容之前我说下嵌入式的前景,我想大家对 “ 下一个时代是物联网的时代 ” 这句话不陌生吧,以后的生活一定是智能的,万物互联的,所有你身边的家电,工具,都会集中到一个终端上(应该是手机),我们通过这个终端就可以控制周围的一切,就像扎克伯格为自己家的设备写的一套系统一样,通过一个语音助手就控制整个家,这些智能设备都需要我们嵌入式来做,我们把那些设备嵌入进程序,让他像活的一样,任你怎么控制,是不是很有意思呢?哈哈。

  另一方面大家对最近的中兴事件都有了解吧,偌大一个中兴,仅仅因为芯片不被供应就进入瘫痪状态,多么可悲,国家投入几千亿做这方面可是就是缺人才,阿里今年刚收购了唯一自主嵌入式 CPU IP Core 公司《中天微》,就是想做芯片,解决我们的无 “ 芯 ” 之痛。我们学习嵌入式正好可以用的上。综上所述你感觉嵌入式前景怎么样哪?

  首先我为什么强调从大一开始那?从大一开始就进入实验室,就像我刚上大一那会,实验室的老师就告诉我们嵌入式不容易学习,嵌入式牵扯的东西太多了,不会像软件那么容易学。

  你听说过很多培训 JAVA,python,大数据,数据库,但很少听到有培训嵌入式的吧,就是因为入门难,既要掌握软件的知识,还要学习硬件的知识,还要学习各种硬件之间通讯的原理,协议。

  大一刚来的话肯定要多参加学校的活动,多交些朋友的,找些自己感兴趣的协会玩玩,期间要留意下实验室什么时候纳新,最好从实验室纳新的时候就进去,当然第一学期不进实验室也可以,大一主要学习的专业课就一个 C 语言,学完就行了。

  在大二的时候一定要进实验室了,非常有必要的,大二要开始学习单片机了,这个要有老师,学长带带,有实验室的环境,还能一起做项目,学的会快很多,想着在宿舍学习的尽早放弃,感觉几乎不可能学好。

  当时我也不知道自己学的计算机是干什么的,我比较喜欢动手,不过在学校天天就学 C 语言,我的第一个志愿是机械,我喜欢动手,想着机械能够发明创造出来东西(那时候的思想停留在爱迪生,瓦特发明出来的各种东西当中。。。),我以为我学习的就是开发 APP,天天敲代码,以后也是做软件,只对着电脑,就非常讨厌,感觉和我的兴趣一点也不一样,都想过要转系了。

  不过后来还好多问问我姐,我姐说先等等看看我们嵌入式专业以后学什么知识,做什么工作,再看看其他的专业,机械,电气他们做什么,慢慢的了解之后,大概在大二才发现自己学嵌入式挺好的。

  嵌入式以后的工作是可以动手做自己想做的东西,而且是很智能的设备,开发出来一款设备岂不是很爽,比如门禁,热敏打印机,电子手表,扫地机器人等等。

  嵌入式学习的有软件知识还有硬件知识,当看到学习的是可以实际操作的单片机后就感觉不错了。

  最后真正喜欢嵌入式的话,那么就好好学习吧,后期的学习嵌入式还是有点难度的,这个时候就要发挥兴趣的作用了,既然喜欢,知道他好,那再难也要去学,这样一定能学好的,比的不是谁比谁聪明,比的完全是谁学的时间久,学的知识多。

  如果大一上学期就加入了实验室,那么上学期就应该把 C 语言学习完的,C 语言在实验室学习的进度一定要比课堂上的快的,不会的就问别人,百度。这样下学期就开始学习单片机,推荐学习的资料是郭天祥的 51 单片机,书,还有配套视频(我学的用的这个,不打广告,也可以找学长借),刚开始学习的时候一套资料是一定要有的,不然很吃力。

  大一阶段,懵懵懂懂,思维还没有从高中转变过来。总觉得学习就是要把所有的东西看一遍做一遍才叫会。如果是这样的话,那你的上限只会成为一个 “匠”。所谓掌握,就是做到心中有数,那什么样算心中有数?这就很关键了,掌握单片机的核心构架、拥有自己的编程思想。

  我当时学到了大二下学期,把单片机的各个模块都学习过了,但是不太会用,不能把每个模块结合起来做一个项目。

  后来有幸参加蓝桥杯,当时的题目是做一个可以改时间的万年历,我们需要把温湿度模块,时钟模块,按键模块,液晶模块都添加到程序中,并且让他们能够运转正常,最后在主函数里面调用各个模块的功能,做成了一个项目,不一定非要把每一个知识点都吃透,但是你要准确无误的用起来,那么这时候你就算是学会了。

  应该学习最重要的 C 语言,51 单片机,大二学 51 单片机也可以,高数也应该好好学下,考研或者以后的工作中会有用的。

  一定要把 51 单片机学完,做几个小项目,再学习些自己感兴趣的模块,比如红外感应模块,WIFI 模块,蓝牙模块,指纹检测模块......很多很多模块的,你可以实现你自己的想法了,譬如做个跑马灯、动态数码管显示、模拟个 “ 世上只有妈妈好的铃声 ”、又或者弄个难点的时钟计时又或者红外控制,想做什么,都可以问问老师有没有相关的模块,也可以淘宝上买,都不贵。

  大二期间还应该学习画原理图的软件 protel99se 或者 AD(Altium Designer),C++,java,数据结构,数据库,这些都是课堂上的课程,在课堂上好好学习就行。

  英语在以后的工作中也挺重要的,要看英文的文档,四级要好好准备。在大二下学期也可以开始学 stm32 单片机了,我是大二暑假留在学校的实验室学习 STM32 的,就是每天看视频学些基础的知识。

  学习一种做上位机的语言 VC 或者 C#,同时 STM32 要学的精通了,可以先在 STM32 上学习 UCOS 实时操作系统,大三的时候要多参加大的项目,多参加比赛,我们实验室就会常参加赛佰特杯,还有挑战杯,蓝桥杯,拿着自己做的东西去参加。

  大三如果还有时间的话,就开始做毕业设计,一般两个月应该就能做好了,我们是选择暑假留在学校做毕业设计,实验室的老师给的题目。做完了就用 ARM 学习 LINUX,当然 LINUX 在学校阶段熟悉就行。如果这些知识都掌握了,那学的一定不错了,以后就去实习吧,尽早去社会磨练磨练。

  看了看怎么这么多东西要学,选一个方向学不就行了吗?这么多有什么用哪?我想告诉大家一句龙应台说的一段话:“ 孩子,我要求你读书用功,不是因为我要你跟别人比成绩,而是因为,我希望你将来会拥有选择的权利,选择有意义、有时间的工作,而不是被迫谋生。当你的工作在你心中有意义,你就有成就感。当你的工作给你时间,不剥夺你的生活,你就有尊严。成就感和尊严,给你快乐!”

  其实大学所学的知识都是基本的知识,所学的知识都是为你以后学习更加深的知识打基础的,当你选择一个新的方向,在大学里面如果还接触过,那么学习起来就没那么难了,如果压根没见过,那么学习起来一定会花费大量的时间,工作的时候可不会给你这么多时间学,所以多学点肯定是有用的。

  最快的方法就是做项目,当把一个知识,单片机的基础知识看完之后,一定要做项目,做项目才能让你学的更快。

  简单谈一下我从做项目中获取得经验吧。大一期间就对无线控制很感兴趣,觉得无线控制很有意思,响应设备与控制设备之间的数据交互看不见摸不着,但却能精准高速的相互通信。经过一段时间的学习,我选择红外线这一无线通信工具。

  完成的项目是 “ 基于物联网教室空调控制系统 ”,主要实现的功能,学习、发射红外码,加入 WIFI 通信功能、定时功能、温湿度检测等。首先接到这个项目,先了解基本功能,设计一下方案,思考方案可不可行,各个模块如何相互配合工作?具体需要什么模块等等吧,然后选择适合的 MCU,不需要多大够用就行,然后选择要使用的模块硬件。

  准备工作做好之后,就可以从 PCB 构图做起了。当然如果没有条件,可以选择一个带有你需要模块的现有单片机。硬件准备好之后,就可以嵌入式最擅长的软件编程了。编程过程中要多注意细节,以及个人编程习惯都会导致一些很难排查的 bug,过程当中无可避免的会出现各种各样的 bug。

  多回顾自己的代码,从上到下捋一遍程序逻辑,从中发现问题,解决掉。好的编程习惯不仅会让你的程序看起来完美,也能减少你解决 bug 的痛苦。有一点很重要,自己使用的变量加注释,标明变量做什么用,自己的逻辑最好也加上注释,函数功能等等都加上注释。这样能帮助你更快找出 bug 和复习自己的程序。最后最终代码的敲定往往就是修改掉最后一个 bug,实现了最后一个功能!

  我作为一个学生,写内容可能偏于简单,偏于给学生看的,写的不好还请见谅,欢迎大家一起来讨论!

  本文首发于GitChat,未经授权不得转载,转载需与GitChat联系。

  嵌入式学习是一个循序渐进的过程,如果是希望向嵌入式软件方向发展的话,目前最常见的是嵌入式Linux方向,关注这个方向,我认为大概分3个阶段:1、嵌入式Linux上层应用,包括QT的GUI开发2、嵌入式...

  关于嵌入式如何学习,我相信有很多大牛回答得很专业,最近在知乎上看到一网名为----李brooks,~的网友对此进行了总结,我个人觉得非常好,还有其他两位网友licrifan和TonyHo,毕竟我工...

  2013年夏末,我来到了天津大学,开始为期四年的大学本科学习与生活。在中学时代其实对大学是非常憧憬和向往的,最终在天大的软件学院软件工程系开启了这段对人生十分重要的岁月。四年之后,在即将进入职场之际,...

  首先我们要引入一个最为简单的概念,什么是嵌入式??如何将嵌入式用最简单的方式去告诉别人,告诉不知道的人如何将嵌入式的作用或者说不同于其他的系统开发模式相区别?嵌入式和单片机或者说与非嵌入式系统有着什么...

  感受:来到软帝的第一天,感觉熟悉又陌生,老师是之前带我们课设的邓君老师,所以对他的教学方式有了解,会讲解很多细节,陌生在对于环境和同学的陌生。第一天虽然讲解的知识点不是很多,但是还是感觉学到了很多。首...

  gcc编译多种语言,也是交叉平台编译器,不是与操作系统有关而是处理器,PC端一般的都是X86,体系编译器的编译过程:预处理,编译,汇编,链接预处理包括:头文件展开,宏替换,条件编译-E只进行到预处理的...

  前段时间,我写了很多关于嵌入式学习的文章,通过不少学习者的反馈使我有成就感。分享的乐趣使我决定继续写下去。在接下来的时间,我计划也开始写关于Java的内容。希望对你或多或少提供方向,当然,老规矩,遇到...博文来自:shineo01的博客

  导读:还在大学的你,不知道未来何去何从?都说迷茫是大事做不了,小事不想做。还在做程序袁的你,是不是也想创业?程序袁好创业吗?Linux好学吗?学会了这个能找到咋样的工作?哎,老婆又生第2胎了,跳哪里去...博文来自:凉风习习的博客

  谈谈自己学习51计算机的一点感受,我学这个前后算下花了十年,才学完吧,真的用在上面的时间可能就是半年!我是高中毕业,没有上过大学的,最早接触到这东西时是在读高中时,那时我喜欢电子,没事买电子杂志看,当...博文来自:自学程序

  首先简单的介绍下自己,本人在校学生,专业通信工程,刚进入大学这所知识的殿堂时对一切事情都感觉到很新奇,加上刚刚摆脱高三学海无涯苦作舟的生活,我和同学们一起参加了很多学生会,社团面试招新,然而都没有被录...博文来自:Mculover666的博客

  阅读数 904下学期就要毕业了,四年悄悄的就过完了,没有选择考研,寒假去签约的公司实习。这四年我感觉过的还算充实,学了很多课外的东西,不敢说学习很好,但是动手能力绝对有自信。在整个大学没有挂过科的情况下学了很多自己...博文

  10-20阅读数 2098通过大学四年的学习,我希望自己能够在各个方面都得到提高。                 一、全面发展       (1)性格品质:自信心强,肯吃苦;具有一颗善良的心,待人真诚,能得到大部分人的尊重;...

  10-20阅读数 2366学习是学生的天职!学生的根本任务就是学习。我的学业目标是:拿到学士学位,通过英语四、六级并尽可能拿高分,通过计算机考核,拿到专业认可证书,成为一名优秀的大学生。具体计划:大一时:初步了解职业,主要内容...

  07-29阅读数 1574本人刚刚毕业于某985,211大学,大学四年感觉过的并不是特别完美,原因就是缺少一个合理性的计划,不知道在什么时候该干什么,做事的目的性特别的差,有做的好的地方,也有做的不好的地方,有看到别人做的好的...

  阅读数 1301朱老师物联网视频学习感想和思考接触这个视频大概是15年5月份,我研三正好开始找工作毕业。其实在学校一直是搞单片机的,看过很多的学习视频,郭天祥的《十天学会单片机》、郝斌的《C语言》看过都不知道多少遍,...博文

  阅读数 446C语言之父-----丹吉斯.里奇Linux与UNLX的发展过程中对我的影响:unlx在国外是一种商业开发的模板,对于Linux而言在当时有着无法比拟的优势,但是由于其付费模式的应用,是的不少人对于这种...博文

  阅读数 190传函数实参的两种情况:1.当只使用不修改实参变量对应空间的值,传实参变量名           2.当既使用也修改实参变量的对应空间的值,传实参变量对应空间的地址函数的调用过程:1,通过函数名找到函数...博文

  什么是嵌入式?       嵌入式分为广义和狭义两种。广义的嵌入式就是片上系统(systemonachip),包括单片机、PSOC、NIOS、Microblaze等。而狭义的嵌入式就是ARM9、cor...博文来自:的博客

  //自己的第一篇论文没想到是这个内容摘要:通过新生课的学习,我们明白了大学时期如何学习和大学学习的特点;以及我们怎样在大学时期就养成终身学习的习惯和一生受用的主动学习能力;我们未来的职业方向和目标,培...博文

  去年,也就是2017,我顺利从一个普通二本的计算机学院毕业,这是一篇迟来的总结。...

  1.        极端的社会舆论每每看到大学生就业报告里提到计算机系学生失业人数最多时,我就想mn,什么原因导致了这种现象的发生,在中国软件还处于比较初级的阶段时,市场对软件人才的需求应该每年在大幅...博文

  作为一名应届研究生毕业生,真心庆幸自己在这条嵌入式学习道路上坚持了下来。在今年整体就业形势不是很好的情况下,学嵌入式ARM+LINUX确实还比较好找工作的。我在9月份工作就基本上定下来了,工资也还行。...

  首先说一下我自己的一个大概情况吧,我是一个二本学校的,现在大四下期了,马上就要毕业了,学习嵌入式这方面的东西也有比较长的一段时间了。对于LINUX方面,由于我以前是做STM32和μC/OS方面的,所以...

  小弟今年大四,就读于一所普普通通的地方二本学校,专业是通信工程。说起专业第一时间还是想到填志愿时的一脸懵逼,由此也可以看出前辈的指导是多么重要,可惜我没有那么好运。之所以选择通信工程纯属以为通信是做手...

  作者:李Brooks链接:来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转...

  对于嵌入式的学习来说,你要掌握好方法最重要,不能漫无目的的学习,那样就会使你学的很迷茫,所以学习嵌入式一、嵌入式开发学习路线(按照当前主流的企业岗位需求,基本都是linux,和android系统)直白...

  嵌入式时代已经来临,你还在等什么? ---循序渐进学习嵌入式开发技术最近经常有用人单位给我打来电话,问我这有没有嵌入式Linux方面的开发人员,他们说他们单位急需要懂得在嵌入式linux环境下的软件开...博文

  PS(下文都是转过来的,不代表个人观点。)十年经验教你如何学习嵌入式系统(基于ARM平台)一、嵌入式系统的概念        着重理解“嵌入”的概念  主要从三个方面上来理解。     1、从硬件上,...博文

  专业总结 转眼到了大四下学期,时间过的好快,在大学的这四年里经历了很多,也学习了很多,从对这个专业毫不了解,到选择这个专业开始,再到踏入校门。专业学习的过程便开始了。下面就讲讲大学四年我对专业学习...博文

  一晃,工作也2年多了,到今天混的不好不坏,房子没有,gf没有,工作有的!还好不是三无,最近内心开始渐渐不能平静,或者说浮躁,工作也可能会有些许变化,人生又将到了一个转折,就像一年前来到软件五部....博文

  【深度剖析HMM(附Python代码)】1.前言及隐马尔科夫链HMM的背景04-27


活动五-香格里拉1_1970高奖金官网 活动四-香格里拉5_1970高奖金官网just go 活动三-香格里拉4_1970高奖金官网 活动二香格里拉命命注册平台3_1970高奖金官网 活动一香格里拉2_1970高奖金官网