1. 学习c语言看什么书好
最近很多人都在问如何学习编程。我觉得学习编程最重要的是入门,如果你入门的时候有一个好的方法和思路,打下比较扎实的基础,对今后的编程工作是很有益处的。即使在学习新的编程语言也无所谓,因为它们有很多相通之处,可以相互借鉴。
我认为可以先学习一下pascal,这个语言比较严谨,适合初学者。pascal它被称为教学语言,结构严谨,不像C语言那么灵活,易于理解和学习。
然后可以继续学习C语言,这个语言比较灵活。有了pascal的基础,在进行C语言编程就不会因为C语言的灵活而有问题
。后面的就可以学习VC什么的了。
C语言的书推荐谭浩强的,比较好。
我当时学习pascal和C语言的时候是将书后的习题都做了一遍,感觉效果很好。
当然了,学习什么语言也要看你具体准备从事什么行业。例如你要进行嵌入式开发,C就是很好的选择,如果是Windows开发,那么VC就不错。还有数据库方面的开发、网络开发等等。不同的语言适合不同的方面。要看自己的选择的,呵呵
。
还有很多人说自己的基础很差,甚至中学毕业什么的。其实这个并不重要,比较说英语,在计算机语言里所用到的单词量很少,而且都是常用词,经常使用就记住了。当然,如果你要看原文资料或者帮助的话,专业词汇比较多,不过在金山词霸的帮助下,经常看,也是没什么大的问题的。至于数学什么的,其实数学只是培养你一个逻辑思维能力,在初学编程的时候影响不是很大。况且,作为一个基础编程人员来说,上面还有系统分析师、项目经理,他们会把需求分析、概要设计和详细设计做好的,你只要按照文档写代码就OK了。不过,要上更上一步的话,其他基础知识就非常重要了,毕竟你不能写一辈子代码。
在你学习好C语言以后,个人建议好好学习一下数据结构和软件工程。这两门对你的水平提高都是很有帮助的。特别是软件工程,它能够使你按照科学的工程方法进行软件开发,对今后的发展很有好处。
只是一家之言,有不到之处,还望见谅
2. 嵌入式开发学习内容
嵌入式培训班学开发要学什么?做嵌入式开发.北京计算机学习认为软硬件都懂,这是嵌入式高手所应该追求如基的,也是高手的必由之路。
硬件道路:
先进步:pcb设计,一般为开发板的电路裁减和扩充,由开发板原理图为基础,画出PCB和封装库,设计自己的电路。
第二步:SOPC技术,一般为FPGA,CPLD开发,利用VHDL等硬件描述语言做专用芯片开发,写出自己的逻辑电路,基于Alter或XIlinux的FPGA做开发。
第三步:SOC设计,分前端,后端实现,这是硬件设计的核心技术:芯片设计.能做到这步,已经不属于平凡的技术清碰人员。
软件道路:
先进步:bootloader的编写.修改,通过这步熟悉ARM硬件结构,学习ARM汇编语言,阅读ARM的芯片手册,感觉就是像操作51单片机一样操作ARM芯片.这一步最好的两个参考资料就是:芯片手册和bootloader源代码。
第二步:系统移植,驱动开发,我只做过linux方向,所以也推荐学习嵌入式linux系统,作为标准体系,他开源而且可以获得大量学习资料.操作系统是整个计算机科学的核心,熟悉kernel实属不易,kernel,驱动开发的学习,没有什么捷径,只有多读代码,多写代码,熟悉系统API..understandinglinuxkernel,linuxdevicedriver都是不可多得的好书.值得一看。
第三步:应用程序的编写,各种GUI的移植,qt,minigui都被大量采用,两种思想都类似,熟悉一种就可以。
软件道路中,驱动,系统应该是最深入的部分,不是短时间可以掌握的,需要有勇气和耐心.嵌入式开发,软硬结合,因为硬件条件比PC差很多,所以肯定会遇见不少问题,因此实践的勇气更加重要.有问题就解决问题.无数次的实验,也渣正谨许是解决问题的必由之路。
3. 刘强东的代码水平如何
刘强东代码水平非常厉害啊。高考是宿迁市的状元,省前几名,智商是非常高的。后来去了人大,他的成绩去清华妥妥的,典型的学霸。他出生农村,家里的经济条件不好,学费都还是村里的老乡凑的。 他大学期间非常用功学习,自己学的编程语言,给别人编写代码挣钱,起码挣了很多万。90年代初,家里有个几万元的都是条件不错的。他却可以通过写代码挣到了大钱。也就是说他的代码水平在大学时都非常高,不然不可能挣到那么多钱。我们可以看出,他的代码的可靠性、稳定性、健壮性都很好。他本人说,大学期间,他们院的院长只是用的BB机,东哥就用的大哥大,很牛。 后来东哥出来创业,他代码能力应该没有继续提高。但是,他大学的代码能力应该属于资深程序员吧。
刘强东的代码水平如何?我认为刘强东会编码但是编码技术不及他的商业天赋
众所周知,互联网大佬们大多数都是程序猿出身,或多或少都会写点代码。比如企鹅帝国的缔造者马化腾,网络掌舵人李彦宏各个都是编程高手。这些互联网大咖要么都是技术出身比如雷军,周鸿祎;要么是教师出身,比如马云,俞敏洪等;而且有些甚至是草根出身,比如今天的主角刘强东。 那东哥的代码能力怎么样呢?
我的观点是刘强东的商业天赋是盖过了他的编程技术的 ,东哥懂代码但是技术并没有马化腾,雷军他们技术牛 。根据相关信息称 刘强东是个 社会 学出身,但是为了谋生为了能早日迎娶白富美走向人生巅峰,他曾经自学编程,也算是个半路出家吧!据说他编程顶峰时期是一个晚上赚个好几万,但这些都是外界说法,至于赚多少钱我们无法考究,但是至少可以肯定东哥是会编码的,他曾经自学过。
再拿我10多年钱刚接触安卓开发的时候,那时候正赶上安卓才兴起。兴许您只要写个简单的控件都觉得很了不起,所以从时间这个方面来讲,东哥曾经也是很早一批学编程的,那时候都是条件简陋,刘强东又并非是计算机专业出生,那时候做个很简单的网页什么的也不能证明技术有多牛,顶多算得上会编程而已。
而且刘强东并不是像我们一样一直专注编程10多年,刘强东后来都去创业了。我认为编程也是一件要持续深耕下去的,刘强东把时间都花在创业上面了,所以他的代码能力也就是一般。
我认为他会编程撸代码不假,但是编程技术并没有达到很牛掰的地步,不过幸好刘强东没有专注去搞技术了,而是利用自己的商业天赋去创业,要不然我们今天也就看不到京东了。
在互联网的世界里面,我们都需要明白的一点道理是:会赚钱的其实不一定是技术大牛,这点从教师出身的马云身上体现的淋漓尽致,一个完全不懂技术的乡村教师凭借着商业嗅觉缔造了这么大的阿里帝国;反之也有通过技术一统江湖的,比如腾讯的马化腾跟同学张志东都是顶尖高手级别的,网络的李彦宏也是业界鼎鼎有名的搜世界专家回国后创办网络。
总结:
我觉得刘强东的代码基础是有的,但是跟马化腾以及李彦宏专业级别的技术专家来说还真是小巫见大巫,代码能力一般。 您认同我的看法吗?您觉得刘强东代码能力怎么样?欢迎补充!
代码水平几乎为零!我看了很多人回答这个问题啊。很多人觉得他作为一个超级富豪,代码水平肯定很高,作为一个超级学霸,肯定代码水平很高。
我可以明确的告诉你,刘强东的代码水平最多一般。刘强东大学是人大学的文科专业: 社会 学,你让一个 社会 学的大学生代码水平高,有点不太可能,除非刘强东是计算机天才。但是这又不可能了,刘强东一直当时忙于创业,忙于抄信,还要兼顾学业,基本上没有时间去学计算机,也没有时间去弄代码。
刘强东的创业或者挣钱之路,基本上和有什么代码没有关系。他大学时开了餐馆,也抄过信,买过大哥大,一时风光无两。
就是后来刘强东创办了京东公司,京东公司的代码水平也一般般啊,所以由此看出来,刘强东的代码水平不是很高,最多只是一般程序员水平。比马云的代码水平高不了太多,互联网大佬之中,程序程序代码写得最好的是雷军,李彦宏,马化腾,周鸿祎。
要正确的看待人,不能把自己的印象,不能把自己的yy加在别人的身上。刘强东是一个学霸,但是学霸不是无所不能的,他都有他的时间精力达不到的地方。不能因为他是一个超级富豪,而肯定他的所有,也不能因为它是一个学霸去肯定他的计算机水平,代码水平。
这就是识人看人的本事,如果刘强东出生是程序员的话,绝对不会去中关村卖什么光盘,就早做程序员了,去做程序员创业了!
做程序员是一件门槛极高的事情,而当时关于程序员的说得很少,他靠自学很难,刘强东的学习天赋虽然很好,但精力有限。作为江苏省状元,也走到今天也算很成功,但我们不能因为它的成功而肯定他的代码水平,他肯定不怎么会写代码。我敢保证京东随便拿出一个程序员都比刘强东代码水平高。
没有证据表明刘强东学过计算机代码,而且计算机代码门槛很高,很多人就是学过C++,学过Java之后就觉得这个计算机和天书一样。刘强东是先天不足,出生在农村家庭没有接触过电脑,哪里来的代码基因?
大多数人看待一个问题不会认真去思考,不会认真去调查,只是凭自己的感觉去回答这个问题怎么样。虽然说我也觉得思想太可怕了,这就是大多数人碌碌无为的原因之一。很多事情的看法,很多想法都是错误的。
刘强东代码水平如何、要看站在什么角度
1、如果站在专业角度、比真正程序员还是要差些、他本身也不是计算机的牛人、企业家中像雷军、马化腾之类都比他厉害
2、站在不是专业码农的角度、他还是挺牛的,至少靠写代码赚过钱!说明还是有点水平的
3、站在时代的角度、那时计算机并普及、程序员其实并不算多、只要略懂一点计算机语言、就比如懂HTML之类、会C语言改改软件、网页界面、都能赚大钱!
综合分析下、刘强东代码水平,应属于一般般、后来他的经历也主要是经商、卖产品为主、猜想他也是对写代码玩技术这块并不算很上心!但可以相信、比同时代的不少码农还是强点!
做为一个老程序员,我来回答下吧
你所谓的代码水平,是指他刚毕业呢?还是指现在?
写代码,和小说里面的练武或学骑自行车不一样。写代码是需要不断学习的,随着平台的变更,需要不断的学习新语言,新语法。如果不学习,后面是完全没会在新平台上编程的。当然,一些数学算法之类的和平台无关的技术,还是会保留的。
我在网上能找到的东哥与代码有关的,也就是刘强东的一次讲座,说是95年的时候,写代码,一个晚上赚5万。
我是97年开始接触编程,两年时间,应该差不多吧,那时候互联网如火如涂,电脑基本是MS-DOS,那时候写代码,应该主要是汇编、C语言和HTML,内容主要是软件、 游戏 和网站,而一晚上就能写出来的,估计只能是网站了,那时候,一个网站要价都是一万起步的,而技术,只是简单的HTML。
所以我不能片面的断定东哥的代码水平,但他确实很有商业头脑,而很多人也有一个误区,认为会赚钱的,技术一定牛。
东哥:什么是代码?
他跟马云一样,都不是计算机科班的,不像雷军李彦宏马化腾。
老刘的代码基础肯定比马云要好!原因很简单,马云承认他自己不懂:)
从专业角度讲,代码太宽泛,概念不清晰!从单片机,c语言,到javscript,SQL,python... 时代在发展对不?
所以,老刘是个商人,不是一个工程师!
4. 请问刚开始学习DSP应该怎么学习,编程应该学习C语言还是汇编语言呢,请高手指点一下。
呵呵,看到这个问题和一些网友的回答,感到走自学成才之路的人真多!
很多人都不懂由浅入深,循序渐进的路子。
C语言是在大一学的,有了初中水平即可掌握C语言。不上大学,也能学会C语言。
学会了C语言,并不能算有什么成就。
大约在大三、大四,学习了模电、数电等课程之后,才学到单片机和DSP。
学单片机和DSP,目的就是学习硬件和汇编。
在这个期间,怎么还能提到学C语言? C语言编程不是在前两年就会了吗?
学DSP,如果学不好汇编语言,可以说是根本就没有学会DSP。
学好了硬件和软件,用什么语言编写程序,并没有规定。
粗放型的,使用C即可,想要精雕细刻,就必须用汇编语言。
5. 大一学生很喜欢上网,上半学期过的并不满意,想要好好利用大学生活,马上开学了,想把爱好用到正地方
在哈尔滨工程大学六年,我在学校电子创新实验室呆了四年,这四年里创新实验室给我提供了良好的学习环境和完善的实验设备;在与众多电子爱好者的交流中,使我学到了更多的专业知识;在学校老师们的教导下,让我学会了如何做一名合格的大学枣罩兆生。因此,在这里我要感谢哈尔滨工程大学的历任领导,我今天成绩的取得得益于他们不断完善的教育体制;衷心地感谢曾经教导过我的刁鸣教授、付永庆教授、王松武教授,没有他们对我的培养,也就没有我的今天。同时我也希望能有更多的电子爱好者加入创新实验室,在完善自我的同时,在电子行业做出更突出的业绩。
年,我以全新的教学方式推出了一套讲述51单片机的教学视频课程——“十天学会单片机”,该视频自从网上发布后,得到了电子爱好者的一致好评,诸多的单片机初学者通过这套视频走上了单片机之路。有很多学员来信或打希望我能够将视频中的内容着书出版,让更多的人受益。为此,从年9月至年7月,我用了近十个月的时间将本书写完。本书的写作风格与我在教学视频中的讲课风格相似,它与传统讲授单片机的书籍完全不同,我以学单片机“过来人”的思路,抱着如何才能更容易掌握单片机的态度,理论与实践完全结合的方式清晰地讲解了单片机部分。其余大部分内容为我多年做项目的经验积累,也有部分内容来自于网络电子高手们的精华总结,应当说,在本书中有太多的知识是大家平时在书本上学不到的。在这里,先将我在大学期间的学习和生活经历与大家分享,借此鼓舞大家珍惜大学时光,多学习文化知识,开创更加美好的明天。
我的大学
写这篇文章的时候,我正处于硕士研究生毕业论文的准备阶段,眼睁睁看着我的大学生活即将画上句,再看看身边有很多低年级的学生们一天天把时间白白荒费掉,我在心里替他们惋惜,在即将结束我的大学生活之际,我将我的大学几年的有意义的生活与大家分享,看过这篇文章后也凳租许能让那些有梦想的同学为了实现自己的人生目标少走些弯路,大家要相信,大学校园——将为你提供一生最好的学习环境。
我高中毕业于新疆伊宁三中,年考入哈尔滨工程大学信息与通信工程学院电子信息工程专业,年以创新人才免试保送哈尔滨工程大学硕士研究生,现在已经是我在学校的最后一个学期了。记得我刚入校的时候对电子知识一点也不懂,之前我比较喜欢经商,想着好好努力,将来开个,做做生意,所以第一志愿报了经济管理学院,结果没被经管学院录取,而被调剂到信通学院,现在想来也算是走对了。在上大学之前,我的梦想是闷饥上大学后,一定要当班长,一定要当学生会的干部。所以我从上大一就开始加入学校的学生会,非常积极地竞选班干部,后来也如了我的愿,班长也当了,学生会干部也做了不少。因为刚上大一的时候根本不知道大学里具体要学什么知识,每天就是上课,那时一节课也不敢逃,每天的生活就是去上课、吃饭、打球和踢球,然后回宿舍瞎侃,上床睡觉。周末时,找几个同学逛逛街什么的,每周都重复着同样的生活,日子过得平平谈谈,但那时也不觉得在虚度,可能还带着刚离开高中校园的那种兴奋,认为理想中的大学生活就是如此吧。
大一的一年就这样糊里湖涂过去了,接着就大二了,大二上学期除了在学生会的职位高了点外,其余和大一时也没什么区别,没有特别的事情发生过,偶尔逃逃不点名的公共课,天天照旧打篮球、踢足球。在大二下学期开学不久的某一天,我静静地的思考了很久,我想起了我曾经有过的梦想、我追求的人生、我向往的生活,想想如果再这样过完两年,我的将来会是什么样子?那天我觉悟了。我的专业是电子信息工程,那我必须在这方面学有所成,两年都快过去了,天天抱着课本啃,现在想想我的水平和高中时一样,我学的是电子专业,从初中就开始学电阻了,到现在都六七年了,至今我连电阻长什么样都没见过,这样下去学的算是什么电子专业?我想我不能再这样下去了,于是找了同宿舍的另一位同学赖世雄,我对他说:“我们一起参加学校的“五四杯”电子设计竞赛吧!”他欣然同意了,当时我俩真是对电子知识一无所知,根本不知道从哪里开始,于是我们就从电子上随便找了个类似控制器的小作品,把上原理图中所有的元件型抄下来,然后我俩就去电子场上元件。第一次电子元件,一点专业知识也没有,我们讲的好多东西元件的人都听不懂,闹了不少笑话,一个电阻被人家要了一毛钱,还说这东西真便宜啊!(实际上一个电阻还不到一分钱),最后了一堆电阻、电容和三极管,加起来一共六七十元,回来就准备照着别人的原理图焊接,很显然,这种做法从一开始就已经注定结果必然是失败的。无奈之下,我们跑去找当时教我们电路基础课的付永庆教授,我对付老师说我们想学点真正的东西,但根本无从下手,能不能请付老师帮我们想想看做个什么东西?付老师是个很好的人,他当时正在构想从学校低年级学生中选出一部分爱动手、有上进心的学生作为创新型人才来培养,他看我俩有想法,就直接对我俩说:“你们俩可以到我的实验室里来,现在我正好带几个大四的学生做毕业设计,你俩先跟着他们学习学习吧!”。当时因为是付老师个人的实验室,所以电脑不够用,于是我俩就把自己的电脑搬进了实验室,从那天起,我真正踏上了电子设计这条路。付老师又给我俩介绍了一位正在做毕业设计的大四女同学,她叫黄光亚,她正在做一个两台计算机之间用激光通信的题目,我和赖世雄每天都去实验室看着黄光亚焊电路、写程序,那时看着真是一头雾水,感觉那些东西好神奇,在计算机上写上几句程序,按完回车,看见一道激光穿过眼前,然后在另一台电脑上就能看到整屏滚动的数据。大概跟着黄光亚前后忙了一个月,对黄光亚正在做的作品的硬件部分算是有了基本的了解,但计算机部分具体怎么实现的还是不明白。那时正好赶上年学校的“五四杯”电子设计竞赛,我们借黄光亚的作品申报了参赛资格。在比赛那天,我们就用仅懂些基本原理的一堆元件加两台电脑等待比赛评委的到来,当时评委们问了我们这是什么原理、怎么样调制、传输波特率多少等很多很多简单的专业问题。说实话,我们哪里知道啊!我那时连RS电平是什么概念都不明白,评委们提的专业名词我根本就没听说过,当时也就把我们懂的东西全说了,也不知道对应评委的哪个问题。那时学校“五四杯”电子竞赛的参赛作品比较少,评委看我们才大二,而且我们的作品又是一个较完整的系统,基本没什么工作上的漏洞,为了鼓励我们,最后还给我们发了个小奖。
“五四杯”结束后,赖世雄就从实验室把他的电脑搬回宿舍了,很可惜,他放弃了继续走这条路。我的电脑一直放在付老师的实验室。说到这里还要讲一点儿关于我电脑的小插曲。大二上学期时,我的很多同学们都了电脑,于是我也跟着了,当时不知道来电脑后具体要学什么东西,我的同学们来电脑后,大部分时间在玩游戏、聊天,有的同学可以从早上一直聊到晚上,玩游戏的同学可以从早玩到晚,我同学建议我玩“传奇”游戏,说很有意思,他帮我注册了账,游戏里一个动画人物拿着一把大刀不停地砍野猪、野鹿什么乱七八糟的所谓怪物,他砍了几刀就把一头野猪砍死了,然后他说:“你看长经验了吧,多有意思,你来玩!”,我接过鼠标砍了三刀,我想破脑子也想不出他说的有意思是指什么,然后我说:“实在是无聊!”,那天起开始了我的游戏生涯,三刀后也结束了我的游戏生涯,我觉得网络游戏实在是没有意思。我更不喜欢聊,可是这电脑都了,不能一点用处都没有吧,当时那个时候,真的不知道电脑能“玩”什么和我们专业有关的东西,那些天我每天用电脑做的最多的工作就是把文件从一个分区拷到另一个分区,把一些不用的文件删除,甚至把C盘下能删的文件都删了,最后导致系统无法启动还问为什么?过了几个月我发现除了和粘贴功能我用得非常熟练外,其他我好像还是什么也没学会。再后来就去书店了些Flas和照片的Photoshop之类的书,回来后天天学那些没用的东西。现在想来真的是太可惜了,那时真是浪费了大把大把的时间。电脑真的是可以学很多很多东西的,对于我们专业来讲,学单片机需要学C语言,学Keil、WAE、IAR、ICC、MPLAB软件的使用,学汇编语言;在用到上位机界面编程时,需要学C++、C++、B语言等;用CPLD/FPGA/SOPC时,需要学HDL和erlog语言,学这些语言时,可以学Maxplus、uartus软件的使用;当用到仿真时,可以学Protues、Multisim软件的使用;设计电路板时,可以学Protell、Altium Designer、Power PCB软件的使用等;还可以学DSP用的CCS软件、ARM用的ADS、STD软件等,所有上面我提到的这些,全都依赖于计算机系统。在今天看来,我是全部掌握了,然而这是后来我付出巨大的代价才换来的,如果我能利用好大一大二那些大好时光的话,我相信今天的我又会是另一番模样。
接上面话题,赖世雄搬走后,付老师给了我实验室的钥匙,从那天起,实验室便成了我的另一个家。当时那个实验室只有我一个人学硬件,也只有我一个本科生,其他的硕士、博士研究生主要研究理论,所以很少有做硬件的,那时我分不清电解电容的正负极性,我拿着一个电解电容问了实验室的好几个人,结果他们也不知道,更有人说这是什么东西,我从来没见过。这件事很令我震惊,难道这就是电子专业读了四年本科,又读了几年硕士研究生的高水平大学生吗?现在大学毕业生的工作确实不好找,那不能怪别人,只是因为你确实没有别人需要你的理由。偶尔听前届的学长们说到,作为信通学院的学生,如果学会了单片机、C语言、DSP那你的前途必定是一片光明。于是我开始学习单片机,当时苦于没有硬件实验环境,身边又没有会的人请教,于是我就上网找资料,看见网上有单片机学习板的,那时价格都挺贵的,但我还是狠下心了一块三百多块钱的单片机学习板,寄回来后我就开始做练习,之前也看过几遍书,可发现光看书没有任何效果,看上十遍、二十遍,感觉是学会单片机了,可当要应用到硬件系统中时,发现其实我什么也不会。后来我就边做实验边查书,这样就理解得很透彻了,就是从那时起我每天早上八点之前就到实验室了,除了选上部分课外,其他时间都泡在实验室里,一直到晚上十点多看楼的大爷用脚踹着实验室的门叫我走我才离开实验室。那时每天就摆弄单片机,没有人教我,全是我自己一个人摸索,而且当时学的是非常难懂的汇编语言。记得大一时也学过C语言,可我发现等要用的时候我什么也不会,根本和单片机不起来,就和没学一样,我只好选择汇编语言,大概一个月后,也就是快放暑假时,我做出来了自己的第一个单片机作品,一个电子钟。有人说你要是用单片机做出一个电子钟,那你基本上已经掌握单片机的80%了。这句话有道理,电子钟对编程的综合性要求还是相当高的。
那时,我对单片机已经有了初步的掌握,假期的时候我报名参加了年黑龙江省大学生电子设计大赛,那天起我搬进了学校的电子创新实验室,我们选的题目是无线数据通信,当时指导老师让我们用FPGA做,其中还要用到C编程及C++语言,我那时还不懂什么是FPGA,于是我开始拼命地学这些知识,每天吃饭都在实验室。省赛不同国赛,省赛是把题目先发下来,两个月后交作品就行,其实学FPGA/CPLD也和学单片机一样,关键是自己动手写程序实践,不停地写程序,然后看程序运行的效果,这两个月里我把HDL语言搞得很熟练,但是C还差了一点。我们队一共三个人,除我之外还有路智超(做模拟电路部分)和魏旭东(上位机C程序),魏旭东是我校理学院的,C学得相当好,他的C编程也全是自已业余学的。魏旭东编程时,我就在旁边看,他耐心地给我解释每一行每一句,等空闲时我自己再练,那段时间我对C有了初步的了解。比赛结果很好,我们获得了黑龙江省一等奖,这也是我的第二次获奖,这次获奖给了我很大的鼓舞,接下来我发现必须要学单片机C语言编程了,汇编编程非常烦琐,一个全面的人才不能只将知识局限于某一方面。
从大三开始学校里有各种电子设计竞赛,我总是积极报名参加,为自己寻找锻炼的机会,我为此放弃了我最喜欢的篮球、足球运动,再没有逛过一次街,每天早上起床、洗脸、刷牙,然后就拿着书去实验室,白天在实验室写程序、调电路,做各种硬件练习,晚上回来补充理论知识,模电、数电、高频一遍一遍地重复看,每晚差不多两点睡觉,充分地把实践与理论结合在了一起,那时我才发现大学里的理论知识同样是那么重要,而原来根本没有意识到。孤立地学习理论,不把它们与要应用的领域结合在一起,就失去了学习它的意义;如果只为了参加期末考试,等考完试的第二周也许就已经忘得干干净净了,如果这样学习,那只能说我们学错了方向。如果一个人的模拟电路、数字电路和高频电子线路的基础不好,那么他可能设计不出什么好的电路, 我们在做硬件实践的同时再来看书中的理论知识,这样的结合是最好的。这种单调的生活我天天重复着大概过了一年,无数次实验失败时内心涌起的烦燥被我执着追求知识的欲望一次次抑制住;无数次胜利的经验告诉我,唯有坚持不懈、永不放弃才会取得最终的胜利。在这一年期间,我陆续参加了一些国家级及校里的竞赛,同时也获得了不少奖项。
大三下学期,我基本上在学习单片机C语言编程,进一步熟练C、C++语言。等真正学会用C语言给单片机编程时,那时才将单片机用得得心应手。回想过去,学汇编语言花费了我大量的时间,假如当初有人指点我学单片机的C语言编程那该有多好,至少可以少走很多弯路。很多人说,学单片机最好先学汇编语言,以我的经验告诉大家,绝对没有这个必要,初学者一开始就直接用C语言为单片机编程,既省时间,学起来又容易,进步速度会很快。在刚开始学单片机的时候,千万不要为了解单片机内部结构而浪费时间,这样只能打击你的信心,当你学会编程后,自然一步步就掌握其内部结构了。大三暑期时,我为每两年一届的“索尼杯”全国大学生电子设计竞赛做准备, 大赛时我们选择的题目是“集成运放参数测量仪”,题目是自己队员商量后选择的,我们代表队有三名成员,说实话,对于这个题目我当时心里还真没底,大家研究了两个小时,感觉不应该选这个题目,可惜题目已定,不能更换,大赛只有四天三夜的时间,第一天的早上八点知道题目,要求第四天的晚上八点交作品,所以每一分钟都是非常宝贵的,既然题目都选了不管有多大的难度都要坚持到底。计算机系的于振南主要负责写软件,他对硬件也很熟悉,完全是凭兴趣自学的,他的工作态度和吃苦精神当时给我留下了很深的印象。那四天三夜里我们没有睡过觉,尤其是于振南,他几乎是一直坐在电脑前写软件,差不多有几十个小时没有睡一分钟,他什么时候吃的饭我都没看见,最后我看他眼睛一直在流眼泪,当然不是哭了,那是看电脑屏幕看的。因为工作量非常大,要做硬件,写软件,绘制整个系统的电路图,还要写几万字的论文,都要在这四天三夜里完成。当时我们队三个人的个人能力都比较强,可能是以前大家没在一起合作过,所以到真正合作设计作品的时候还不是很默契。电路焊了一套又一套,结果都不理想。我们的作品最终在联调时失败了,每个人负责的功能能够实现,可联在一起就不能工作了,而评委要看的就是你的整体功能实现,不会看部分的。这次比赛我们以失败告终。以后大家如果有机会组队参加比赛要注意如下三点:①选题最关键,一定要选你们比较熟的,队里有一两个比较熟也行,但如果三个人都不会那一定要换题。②题目选定后,首先以实现基本功能为主开始做题,如果基本功能你都能做成功了,那你应该能得全国二等奖了,因为在这么短的时间里大部分队根本是什么也做不出来的,如果发挥部分再能做出一部分就可以向全国一等奖进军了,我们队失败的另一个原因就是我们直接开始做发挥部分的题目,而忽略了基本部分。③组队的安排,一定要找大家熟悉的人,最好在一起合作过,分工要明确,不要无头绪地各干各的,最后要做什么大家都不明白。 参加完这次比赛后,我承接了一个项目,我找了于振南合作,我设计硬件,于振南写软件,我俩很快就把项目做完了,这也算是我们用所学的专业知识淘的第一桶金吧,获得的报酬足够支付我俩两年的学费了。在学习更多电子技术知识的同时,我和于振南共同合作了几个项目,一点点积累着经验。
大四了,已经习惯了的生活和大三没有多大的变化,和我第一次参加“五四杯”的赖世雄同学每天都在忙着复习考研,最终也考上了他理想的学校。我不想再读书了,想着早点毕业出去工作。快十月份时,我们学院电工电子基地的王松武老师告诉我,某个电子每年在我们学校招两三个学生,要求动手能力较强的,最好参加过一些国家级的竞赛获过奖的同学,那边待遇很不错,王老师推荐了我,我谢过王老师准备参加该单位十月三来学校进行的面试。我正准备面试呢,十月二学校贴出通告,我被免试保送我校的研究生了,当时很高兴。学校有制度,学生有某方面的特长,多次获级别较高国家奖项的可以推荐免试读研究生,保送读研究生不交学费,不用考试,而且享有硕博连读的优先资格。当时值得庆幸的是,我的综合成绩平均分70多分,也就是刚够分数线,若再低一点点恐怕我也无缘这等好事了。我从内心感谢哈尔滨工程大学的领导、感谢哈尔滨工程大学的教育体制。
大四上学期一学期我基本上都在为年的“枭龙杯”中国空中机器人大赛备赛,这次于振南也参加了,我主要负责飞机的自动驾驶仪,另外协助于振南一起写地面站操作平台。这次比赛涉及的知识领域非常广泛,主要包括同时刻四通道无线通信(遥控器、远程无线数据传输、远程微波图像传输、GPS传输)、单片机技术、计算机控制、应用软件、图像捕捉、图像识别、惯性导航、飞行器等技术。这次比赛我全身心投入,在调试飞机的近六个月的时间里,差不多天天早出晚归。功夫不负有心人,我校设计的无人机实现了全程无人控制全自主的自动起飞、自动巡航、自动识别静态/动态目标、自动着陆动作,开辟了我国无人机全自主飞行的先河。最终我校代表队战胜清华等多所名校,获得了全国亚军。
大四的寒假,那时我对单片机的掌握已经很熟练了,想着应该用学会的知识来些产品了,一来可以解决生活费用上的开销,二来正好也可以圆我经商做生意的梦。想着很多曾经和我一样的单片机初学者可能会购学习板,于是决定单片机学习板,2月份做出第一个样板,3月份做出第2版,4月底建立个人“天祥电子”
从大四下学期开始,我一边管理自己的,一边学习DSP(数字处理器),因为我清楚,在科技日新月异的今天,仅靠会一点单片机而在社会上立足是万万不行的,我必须充分利用在大学校园里的这几年时间,以最快的速度尽可能多地掌握各种电子技术知识,一旦出了校园,恐怕再也不会有太多的学习时间了。由于学校实验室里有DSP实验箱,这样学习起来就方便多了,一台DSP实验箱的价格都在七、八千甚至上万元,以个人能力购还是很费劲的。学硬件主要就是做实验,写程序、下载程序、观察现象、认真思考、修改程序、再下载程序、再观察现象……如此重复,直到得到满意的现象结果,只要抓住这条思路,任何硬件都会在很短的时间内掌握。大四下学期,我的同学们都在为各自的本科毕业设计而忙碌,而我却在设计自己的DSP实验板,由于DSP实验板上使用的芯片大多为多引脚贴片封装的,所以至少要设计成4层的PCB板,那是我第一次画4层PCB板,用了近一个月才绘制完成,值得庆幸的是,板子做出来后完全正常,我又用了一个月将其调试完成。差不多在4个月的时间里,我完成了对DSP从认识到制板再到最后调试实验板通过的全过程。因为之前有单片机的基础,本科毕业设计对我来讲是非常容易的,在大多数同学花半年的时间去研究的时候,我从设计到完成用了不到10天的时间,而且在这10天里还帮了很多同学的忙。
转眼就到了本科毕业聚会了,大部分同学的大学生活就此画上了句。我亲眼看着他们如何一步步地成就了自己的梦想,也亲眼看着他们如何一次次地重复着自己的生活,同时也亲眼看着他们如何一天天地堕落下去。从那天起,大家又将迎来各自的全新环境,在那里,也许有人庆幸、也许有人后悔,但无论怎样,自己的路自己选择,当然要自己走下去。
知识的海洋永无尽头,在路上的我不能停止,还没等到研究生开学,我已经为这2年半的时间制定了全面的计划。从假期开始,我就开始接触ARM(嵌入式系统)了,在我看来,如果不涉及ARM的操作系统,那么它的学习方法还是和单片机一样,在开始阶段,我就把它当成一块单片机来用,当然它的功能要比单片机强大得多。半年后,我和同学宋宝森还有于振南三人共同承接了一个用三星ARM7做主控制器的工程项目,该项目所涉及的知识也非常之广,内容涵盖单片机系统、嵌入式ARM7、GPRS网络、Internet应用、图像采集、图像处理及远程传输、TCP/IP协议、通信技术、码分多址技术、网络数据解析、模拟电路、数字电路、高频电路、射频无线数据传输、工业传感器等技术。在这个项目设计中,我发现,上面我提到的这些知识领域,没有几个是我大学专业所学到的,就算是学到了也没有几个是真正能应用到实际当中的,在高科技主导社会进步的今天,单纯掌握某一狭窄领域的知识是远远不够的,我们只有不断地学习,不断地应用,再学习,抱着这种态度才能让知识得到最大的发挥,让科技不断地进步。
年初,通过学校的科技创新立项,我申报了“远程无线可控潜水器”项目,最后以全校唯一特大重点项目获得批准,学校和院里都给予了全额资金的支持,在经过我和团队成员5个月的努力后,我们的作品终于试水成功。该作品获年学校“五四杯”一等奖,同年获得黑龙江省“挑战杯”大学生电子设计竞赛一等奖。至我离开学校时,该项目还在由团队其他成员进一步改进完善中。
在研一阶段,我利用两个寒暑期在学校举办了为期十天的单片机培训班,我以全新的授课方式,以初学者最容易快速入门的方法为学员讲解了51单片机的用法,我在课堂现场带领学员做实验,每天课后学员们自己再练习写程序,经过十天的强化训练,课程结束时,几乎所有的学员都能够编程操作51单片机的各个功能了。在同年的“索尼杯”全国大学生电子设计大赛中,我担任学校指导教师,在大赛现场我看到了许多曾经在我的课堂上听课的学员的身影,而且他们最终都取得了喜人的成绩,我由衷地感到欣慰。为了让更多的单片机初学者受益,我将授课过程全程录像,然后将其免费发布到网上,自该录像在网上发布后,得到了很多学员的高度赞扬,甚至有许多国外的留学生打来向我致谢。
年9月,我以实习生的身份到某能源股份有限做硕士课题,当时与我同去的还有很多其他院校的本科毕业生,他们有与我同专业的,也有自动化专业的。我与几个老员工是仅有的能够项目并且真正懂硬件编程的人,我们拿着高薪,而且还把我们当成宝贝,其他新来的大学生们在夸奖我们能力的同时也叹息自己大学里到底学了什么,从无奈的语气中我看出了他们的悔恨,然而今天的他们在现实中又有什么办法呢?每周6个工作日、每天8小时、迟到扣工资、早退扣工资、请假扣工资……这就是摆在他们面前不可改变的现实,每月等待那么一天的到来,而薄薄的信封里也仅仅够每个月的基本生活费。年轻的朋友们啊!同是从大学校园里走出的大学生,这就是差距,而且这只是差距的开始。实习期间,在与技术人员的交流中,在产品一步步地改进完善中,我的专业知识得到进一步的升华,我深刻地认识到,仅仅死学书本上的理论而不与实际硬件结合进行实践,这样的理论没有用;仅仅在校园里做的简单硬件实践如果不与工业现场应用结合,这样的实践是不成熟的。至年6月我离开,我为研发了一系列的太阳能充/放电控制器、太阳能路灯控制器和基站的太阳能电站充/放电控制器,并且得到了批量生产和应用。
大学生活是我们人生中最宝贵的经历,我们付出了四年光阴的代价,我们应该也必须为此有所收获。很多同学在大学校园里迷失了方向,不知道自己来到这里究竟是为了什么,单纯的认为毕业后找个好工作就万事大吉了,可你们是否想过,没有真正的本领如何能找到好工作?如何能为这个社会做出贡献?更现实一些,没有一份好工作如何成家,建立起属于你自己的幸福快乐的家呢?
6. 研发工程师要有的五步职业规划
研发工程师要有的五步职业规划
实际上,技术这种东西的规律是大同小异的,虽然是电子工程师的成长的道路,但是,其它领域的技术人员,我想也是一样的。因为我也是比较痛苦地用了较长的时间才完成了从初学者到一个系统工程师的转变,所以啊,将自己这点体会写出来,希望能起到一点微薄的作用。
作为一个初出校门的大学生,如果有高手带的话,实际上只需要大概6个月到1年的时间就能实现这个转变。
只要你够勤奋、善于沟通、人品好。
前2者大家都可以理解;人品好就是大家看着这个人顺眼,愿意帮他,什么都愿意跟他讲,相处不厌倦。
要是狗脾气、自私,谁爱理你?要知道,自私的人,也愿意跟人品好的人在一起。
一个电子工程师,或者说,一个电子系统设计工程师,需要有机会,这种机会是靠自己去争取, “哭着喊着要进步”,有这种精神,还需要明师带着,就可以。
可是,上了班,谁会带你?很少,或者没有。市场竞争激烈,过去还说: “教会徒弟饿死**”,这种现象,国营单位或许严重一些,民营企业中你需要给老板创造效益,至于学习,是在工作中学,老板是不会让你不干活而学习的,只能边干边学。
我把技术人员的成长之路分成几个阶段:
1. 入门 1~2年
2. 登堂入室 3年
3. 勤奋至卓越
4. 沟通、协作
5. 对某个行业深入理解,做出产品 5年
第一步 入门-51核心和基本电路
中国人有10亿啊,每年有多少大学生毕业呢?我不知道。但是我看到有一张照片,招聘会上熙熙攘攘,人来人往,十分震撼。从来没有一个时刻让我感觉到中国的人力资源是如举雀此的丰富。但是,从现在的大学毕业出来的学生学到了什么东西呢?一些理论,跟实际脱钩的理论。有没有用呢?有点用。但是,在企业中,需要的是实际干点事情出来,实际解决问题。所以说,很多企业不想要大学本科出来的大学生,说动手,没有动手能力,不知道电阻电容长得什么样子,能够做什么?但是又自视甚高,对工资的期望值比较高。等到能够干点事情了,又拍拍屁股跑了。所以企业现在喜欢使用大专中专甚至是职业学校培训出来的小孩,至少这些孩子们知道自己的份量,能够实实在在地做事。要知道,他们很多人的天赋并不差,很多人是家庭条件不好,打小就是苦孩子,没有条件接受良好的教育。一旦给机会,他们都比较珍惜。
现在的大学,误人子弟甚多。扩招是没有错,但是,实验室扩了吗?教室扩了吗?教师扩了吗?至少实验室是没有扩。老树认得的一个研究生说,只有到了一个阶段,才能到实验室作实验。很多导师就是把学生当奴隶一样干活,要是在干活中能够学到东西那就算是运气好的;运气不好的,直接就是导师的廉价的劳力了,学不到东西,活倒干了不少。
但是,既然学生要拿文凭,要应付考试,没有办法,那怎么自救?
在入门这个阶段,需要去学习大量的知识,摸清你所在的领侍答凯域所需要的知识体系,从最基本的学起。
如果励志要做一名出色的电子工程师,老树可以谈谈自己的看法。
做一个电子工程师,先从51学起,这是得到公认的。不需老树饶舌。
首先,去买一个开发板,越便宜的越好,在上面可以练练keil C。最好再买一个仿真器,这样调试的效率高。当然这个不便宜,但是我觉得可以志同道合的哥几个合买。反正1天24小时,每人8个小时轮流上,有个几个月,C51语言也就差不多了。
其次,看看老树的文章,北京的大学生没事到中发去转转,认认老树的文章上说得哪些老唤电阻、电容、三极管、芯片、接插件什么的,看看自己的电脑上的主板、网卡、声卡、显卡是怎么画的,找到感觉,这些板卡都是高手的杰作啊。
构思一个小的产品,按照老树文章上的思考题,找本 protel99se的书,从每个菜单练起,循序渐进,从单片机最小系统->输入->LED->RS232/RS422 /RS485->固态继电器、继电器等原理图画起,边画边学,一点一点做,做好了,最好找个高手看看,找出毛病在哪里,再反复改进。在这样的模拟实战中找到感觉。
顺便说一句我对市场上的开发板的看法,这些开发板当然都不错,但是,只能学到语言,不能教你画原理图和PCB,实际做的时候,还是需要高手带一带是最快的。我就是一个朋友教我的,也就半天的功夫,就会了。当时还是DOS下的protel 3.16版本。
以战养战。找个公司、企业,帮他们做个小产品,既能得到公司的高手的指点,又能赚到一笔费用,岂不甚佳?这时,你的开发板、仿真器的费用就出来了。从原理图->PCB-
>C51,单片机也入门了。
第二步:登堂入室
对所在的技术领域的知识全面进行了解,做好知识的储备,同时彻底掌握单项和多项技术。
作为一个电子工程师,这时,需要对电子技术的所有东东进行全面的了解,主要是看看杂志、BBS、网站上的技术文章、何立民先生主持编着的《单片机应用技术大全》系列,将单片机和它的配套的电路,输入输出、通讯等等做一个全面的了解。目标是为什么?系统的技术储备。知道什么问题可以使用什么方法解决,可能在什么地方找到解决的方法,这对你以后走上工作岗位,解决实际问题是非常有好处的。
如果你真能这么做,那么,你今后肯定比单位中的老同志还要棒。
老树在国营研究所的时候,曾经有一段时间无所事事,就是在那一两年的时间内将研究所的技术杂志看了一遍,尤其是《电子技术应用》。打下了一个良好的基础。
这时,争取机会,学习高手们的硬件设计。一个比较快的办法就是到工控机的厂家那里,看看工控机的板卡和调理板是怎样设计的,都使用了哪些东西。记得老树第一次看到国外的一个器件,到处去问,也不知道是什么东东。后来在四通工控那里看到了,原来是固态继电器。这时,脑子里关于固态继电器的知识都冒出来了。
什么东西就是这样,你要是不知道它是干什么的,你天天看见,也熟视无睹。
有心人就是这样,在什么样的情况下,都能慢慢积蓄知识和力量。毕竟一个产品,不是只会单片机就可以了,还是需要很多的外围电路,按照何老师的分类,前向、后向、人机、互相通道等,才能做成一件产品的。
这个时候,抓住任何机会,去参与一个大型产品开发,在其中做一件事情,你可以学到沟通、协作、界面等产品开发的一些要素。
第三步:勤奋至卓越
中国人多啊,每个人都是智商100,谁比谁傻啊。凭什么你比别人强?你能有好的工作、好的收入,你能香车宝马,醇酒美人?老树认为,没有别的办法,就是靠勤奋。
勤奋学习-这个道理大家知道,知识就是金钱啊;
勤奋工作-想比别人多赚钱,在智商相同的情况下,就是靠多付出时间干活,再提高工作效率。别人5×8小时工作,你是7×16小时,再提高工作效率一倍,你不久赚了比别人多5倍的钱吗?老树公司有2个员工,原来在老家种苹果,没有赚到钱,到老树的公司中干活,计件,活忙的时候,早晨 8:00起来,晚上12:00收工,年底也赚了一笔钱回家,高高兴兴,老树也开心,原来一屋子人干的活,现在2个人干了,公司管理省事了,员工也赚到了钱。
开发也是一样。当然,这个需要你的公司有这个机制,多劳多得的机制。但是,要是现在没有,你要不要这样干呢?
我认为,需要。一方面,干别人的活,练自己的技术,长自己的本事。另一方面,多干活,才能快速增长本事,技术才能跃变、突破,登堂入室,再得心应手、出神入化。至少,熟练工种是没有问题的吧。
就象一壶水,老是小火,烧了半天,也是温吞水;可是大火一上,一会就开了,就是这个意思。
你看《射雕英雄转》中的郭靖,没有别的本事,就是傻练,有一天开窍了,如有神助。技术这个东西就是这样,突破了门槛,就是坦途。需要勤奋勤奋再勤奋。有一天这个日子来了,你就苦尽甘来了。
勤奋还有另外一个含意,就是天道酬勤。其实是每个人看见勤奋的人,都会给他机会的,觉得帮助这样的人,高兴;把事情放在他的手里,也放心。
还有一个含意是触类旁通。知识需要很多的参照物,去比较、联想、萃取、升华。换句话,你可能付出的是其他人的n倍的努力,可是你得到的是n倍以上的回报,你的知识已经不是简单的累加了,已经质变了。
如果你在这个单位,勤奋了,也出成果了,就是没有得到公平的待遇,也没有关系。换一个环境就是了,总有人会欣赏你的。再说了,付出总有回报。
有些人习惯怨天尤人,没有好的老爸老妈,没有好的老师,没有好的同伴,没有好的环境。这些人需要去看看周立功的文章,看看周老师怎样一步步成长的。
第四步:沟通、协作
原来还有,现在越来越少,做一个小的产品,就可以生活无忧。
现在这种情况越来越少了。在任何一个单位,将一个产品做好,都需要与同伴主动沟通,与不同部门的人互相协作。经常是跟不同单位的`人沟通完成意见事情。
有些人性格内向,从做技术的角度出发,这也是不可取的,还是要善于跟同事沟通,向高手求教,才能学到真本领。
第五步:对某个行业深入理解
每个人生存在这个世界上,大都需要有一门独到的技术;更何况你是这个论坛的读者;
有的人天生千娇百媚,有的人天生金嗓子,有的人有个好的老爸老妈;这些都不足为恃,更何况没有这些天赋呢?
当你掌握了单片机、ARM、CPLD/FPGA等高端的技术,应该说,养身立命是没有问题了,可以解决人生的基本问题了;但是,还想更上一步,就需要对某个行业进入深入的理解和挖掘。
我认识的靠技术过上宝马豪宅生活的工程师,并不是在技术上一开始就有什么过人之处,也不是说他的产品一开始就会比别人好很多,而是都是特别有韧性的人,都在捕捉某个行业的机会,在某个行业内精耕细作,坚持不懈,别人都干其它的去了,只有他还在这个行业中慢慢来,过上5年或者更多的时间,慢慢得到业内人士的认可,产品不断改进,慢慢打开了销路,最后站住脚,机会来了,一下发达了。我的一个朋友,就是这样**成了正果。
有个笑话,说:刚刚离开的行业,发展最快。说得就是这个道理。
中国大啊,市场大啊,只要认真耕耘,就会有收获。
需要去从事多个行业吗?就个体而言,不需要。那个行业都有金子。
就公司而言,需要吗?那要看你的公司有没有这方面的人才;还需要看有没有这个方面的机制。否则,盲目的进行多个行业的扩展,没有必要。需要做的是至少在某个行业做到前三名。
你看,原来的LOTUS的 notes,卖给了IBM,原来只卖出去300万份,到了IBM,就卖到了1000万份。产品就是这样,占领市场的同时,利润就有了,规模效益就有了。一个公司的产品不需要太多,但是要卖的多,才是正路。
象吉列,就是那么个小刀片,作成这么大的企业,多么舒服。
象 GE,每个行业都是业内的翘楚,那是资本主义社会200年的技术积累。在中国,需要做的是每一个小的公司都是某个产品最突出的。从小的产品做起,做到国内最好、亚洲最好、世界最好。就行了。中国就强大了。
到那个时候,才有可能出现象GE这样的大公司。才有形成这样的大公司的技术基础。
;7. 电子信息工程专业有必要学习单片机吗请给理由
需要
单片机作为 微机的一种具体体现,绝对算得上是 电子信息工程专业的专业能力课程,所以必须学习。
电子信息工程专业主干学科:电子科学与技术、信息与通信工程、计算机科学与技术。
主要课程:电路理论系列课程、计算机技术系列课程、信息理论与编码、信号与系统、数字信号处理、电磁场理论、自动控制原理、感测技术等。
主要实践性教学环节:包括课程实验、计算机上机训练、课程设计、生产实习、毕业设计等。一般要求实践教学环节不少于30周。
单片机学习方法:
基础理论知识包括模拟电路、数字电路和C语言知识。模拟电路和数字电路属于抽象学科,要把它学好还得费点精神。在你学习单片机之前,觉得模拟电路和数字电路基础不好的话,不要急着学习单片机,应该先回顾所学过的模拟电路和数字电路知识,为学习单片机加强基础。否则,你的单片机学习之路不仅会很艰难和漫长,还可能半途而废。笔者始终认为,扎实的电子技术基础是学好单片机的关键,直接影响单片机学习入门的快慢。有些同学觉得单片机很难,越学越复杂,最后学不下去了。有的同学看书时似乎明白了,可是动起手来却一塌糊涂,究其原因就是电子技术基础没有打好,首先被表面知识给困惑了。
单片机属于数字电路,其概念、术语、硬件结构和原理都源自数字电路,如果数字电路基础扎实,对复杂的单片机硬件结构和原理就能容易理解,就能轻松地迈开学习的第一步,自信心也会树立起来。相反,基础不好,这个看不懂那个也弄不明白,越学问题越多,越学越没有信心。如果你觉得单片机很难,那就应该先放下单片机教材,去重温数字电路,搞清楚触发器、寄存器、门电路、COMS电路、时序逻辑和时序图、进制转换等理论知识。理解了这些知识之后再去看看单片机的结构和原理,我想你会大彻大悟,信心倍增。
模拟电路是电子技术最基础的学科,它让你知道什么是电阻、电容、电感、二极管、三极管、场效应管、放大器等等以及它们的工作原理和在电路中的作用,这是学习电子技术必须掌握的基础知识。一般是先学习模拟电路再去学习数字电路。扎实的模拟电路基础不仅让你容易看懂别人设计的电路,而且让你的设计的电路更可靠,提高产品质量。
单片机的学习离不开编程,在所有的程序设计中C语言运用的最为广泛。C语言知识并不难,没有任何编程基础的人都可以学,在我看来,初中生、高中生、中专生、大学生都能学会。当然,数学基础好、逻辑思维好的人学起来相对轻松一些。C语言需要掌握的知识就那么3个条件判断语句、3个循环语句、3个跳转语句和1个开关语句。别小看这10个语句,用他们组合形成的逻辑要多复杂有多复杂。学习时要一条语句一条语句的学,学一条活用一条,全部学过用过这些关键语句后,相信你的C基础建立了。
当基础打好以后,你会感觉到单片机不再难学了,而且越学越起劲。当单片机乖乖的依照你的逻辑思维和算法去执行指令,实现预期控制效果的时候,成就感会让你信心十足、夜以续日、废寝忘食的投入到单片机的世界里。可以这么说,扎实的电子技术基础和C语言基础能增强学习单片机信心,较快掌握单片机技术。
实验实践
这是真正学习单片机的过程,既让人兴奋又让人疲惫,既让人无奈又让人不服,既让人孤独又让人充实,既让人气愤又让人欣慰,既有失落感又有成就感。其中的酸甜苦辣只有学过的人深有体会。思想上要有刻苦学习的决心,硬件上要有一套完整的学习开发工具,软件上要注重理论和实践相结合。
1.有刻苦学习的决心
首先,明确学习目的。先认真回答两个问题:我学单片机来做什么?需要多长时间把它学会?这是你学单片机的动力。没有动力,我想你坚持不了多久。其次,端正学习心态。单片机学习过程是枯燥乏味、孤独寂寞的过程。要知道,学习知识没有捷径,只有循序渐进,脚踏实地,一步一个脚印,才能学到真功夫。再次,要多动脑勤动手。单片机的学习具有很强的实践性,是一门很注重实际动手操作的技术学科。不动手实践你是学不会单片机的。最后,虚心交流。在单片机学习过程中每个人都会遇到无数不能解决的问题,需要你向有经验的过来人虚心求教,否则,一味的自己埋头摸索会走许多弯路,浪费很多时间。
2.有一套完整的学习开发工具
学习单片机是需要成本的。必须有一台电脑、一块单片机开发板(如果开发板不能直接下载程序代码的话还得需要一个编程器)、一套视频教程、一本单片机教材和一本C语言教材。电脑是用来编写和编译程序,并将程序代码下载到单片机上;开发板用来运行单片机程序,验证实际效果;视频教程就是手把手教你单片机开发环境的使用、单片机编程和调试。对于单片机初学者来说,视频教程必须看,要不然,哪怕把教材看了几遍,还是不知道如何下手,尤其是院校里的单片机教材,学了之后,面对真正的单片机时可能还是束手无策;单片机教材和C语言教材是理论学习资料,备忘备查。不要为了节约成本不用开发板而光用Proteus软件仿真调试,这和纸上谈兵没什么区别。
3. 要注重理论和实践相结合
单片机C语言编程理论知识并不深奥,光看书不动手也能明白。但在实际编程的时候就没那么简单了。一个程序的形成不仅需要有C语言知识,更多需要融入你个人的编程思路和算法。编程思路和算法决定一个程序的优劣,是单片机编程的大问题,只有在实际动手编写的时候才会有深切的感悟。一个程序能否按照你的意愿正常运行就要看你的思路和算法是否正确、合理。如果程序不正常则要反复调试(检查、修改思路和算法),直到成功。这个过程耗时、费脑、疲精神,意志不坚强者往往被绊倒在这里半途而废。
学习编写程序应该按照以下过程学习,效果会更好。看到例程题目先试着构思自己的编程思路,然后再看教材或视频教程里的代码,研究人家的编程思路,注意与自己思路的差异;接下来就照搬人家的思路亲自动手编写这个程序,领会其中每一条语句的作用;对有疑问的地方试着按照自己的思路修改程序,比较程序运行效果,领会其中的奥妙。每一个例程都坚持按照这个过程学习,你很快会找到编程的感觉,取其精华去其糟粕,久而久之会形成你独特的编程思想。当然,刚开始,看别人的程序源代码就像看天书一样,只要硬着头皮看,看到不懂的关键字和语句就翻书查阅、对照。只要能坚持下来,学习收获会事半功倍。在实践过程中不仅要学会别人的例程,还要在别人的程序上改进和拓展,让程序产生更强大的功能。同时,还要懂得通过查阅芯片数据手册(DATASHEET)里有关芯片命令和数据的读写时序来核对别人例程的可靠性,如果你觉得例程不可靠就把它修改过来,成为是你自己的程序。不仅如此,自己应该经常找些项目来做,以巩固所学的知识和积累更多的经验。
硬件设计
当编写自己的程序信手拈来、阅读别人的程序能够发现问题的时候,说明你的单片机编程水平相当不错了。接下来就应该研究硬件了。硬件设计包括电路原理设计和PCB板设计。学习做硬件要比学习做软件麻烦,成本更高,周期更长。但是,学习单片机的最终目的是做产品开发----软件和硬件相结合形成完整的控制系统。所以,做硬件也是学习单片机技术的一个必学内容。
电路原理设计涉及到各种芯片的应用,而这些芯片外围电路的设计、典型应用电路和与单片机的连接等在芯片数据手册(DATASHEET)都能找到答案,前提是要看得懂全英文的数据手册。否则,照搬别人的设计永远落在别人的后面,你做的产品就没有创意。电子技术领域的第一手资料(DATASHEET)都是英文,从第一手资料里你所获得的知识可能是在教科书、网络文档和课外读物等所没有的知识。虽然有些资料也都是在DATASHEET的基础上撰写的,但内容不全面,甚至存在翻译上的遗漏和错误。当然,阅读DATASHEET需要具备一定的英文阅读能力,这也是阻碍单片机学习者晋级的绊脚石。良好的英文阅读能力能让你在单片机技术知识的海洋里自由遨游。
做PCB板就比较简单了。只要懂得使用Protel软件或 AltiumDesigner软件就没问题了。但要想做的板子布局美观、布线合理还得费一番功夫了。
娴熟的单片机C语言编程、会使用Protel软件或 AltiumDesigner软件设计PCB板和具备一定的英文阅读能力,你就是一个遇强则强的单片机高手了。[2]
抗干扰设计
在提高硬件系统抗干扰能力的同时,软件抗干扰以其设计灵活、节省硬件资源、可靠性好越来越受到重视。下面以MCS-51单片机系统为例,对微机系统软件抗干扰方法进行研究。
抗干扰
在工程实践中,软件抗干扰研究的内容主要是:一、消除模拟输入信号的噪声(如数字滤波技术);二、程序运行混乱时使程序重入正轨的方法。本文针对后者提出了几种有效的软件抗干扰方法。
8. 我专业是电气自动化,今年大二已经学了C,模电,数电如果学嵌入式,该怎样学怎样深入,请高手指点
先讲一讲需要掌握的基本技能。
答:
(1)C语言是所有编程语言中的王者(单片机、DSP、类似ARM的种种芯片的编程都可以用C语言搞定),因此必须非常熟练的掌握,大学本科教学中的C语言是远远不够的,有两个非常重要的内容没有讲“文件的操作”和“IO的操作”,其中“IO的操作”是必须掌握的技术。
(2)操作系统原理,是必需的,如果你是计算机专业毕业那也就无所谓了,如果是非计算机专业的就必须找一本比较浅显的计算机原理书籍看一看,把啥叫“进程”“线程”“系统调度”等等基本问题搞清楚
(3)计算机原理应该指的是x86的微机原理吧,但是在嵌入式领域x86处理器只是冰山的一小角,还有很多叫做ARM、XScale、SuperH、68K、PowerPC等等等等,无数的其它处理器,有一些岩唤我也叫不上名字。但是,X86总规是基础,万变不离其宗,深入学一下还是非常有必要的(尤其对于想要学习Linux的朋友,想要读核的话就必须要深入学习以下x86系统架构)。
如何学习嵌入式开发呢?
答:
大家都知道这个领域人才非常稀缺,但是,学习周期比较长,需要的知识面也比较广,所以不要心急。先看看下面的几个问题,了解一下你现在的知识水平:
(1)你键枣虚用VC++或BC++编写过应用程序吗?
如果编写过应用程序,那就做好了,如果你没有做过上层应用程序,那么又如何能够去理解更深的更高深的底层程序呢,那就赶快补上这一课吧!!!
(2)你曾经编写过单片机或者DSP的程序吗?
我们把类似51单片机或者DSP上面跑的没有操作系统的程序叫做“代码裸奔”,我们也都曾经编写过裸奔的代码。因为有的时候比如我们编写一个简单的程序,就只需要点几个LED检测几个按钮的状态,那么“代码裸奔”弄一个while(1)的死循环就足够了,杀鸡何必用牛刀。
编写这种裸奔的代码,也是学习嵌入式的必由之路,因为,你将会用C语言去对寄存器写控制字,这就是以后写驱动程序的基础呀。
另外需要说明的是,从概念上说,“代码裸奔”也已经属于嵌入式开发的范畴。
(3)到了最后一个阶段,你就可以开始找一个方向(uCos、Linux、VxWorks、WindowsCE、Palm等等等等),学习有操作系统的嵌入式开发了。
嵌入式操作系统的种类也是无法计数的,有一些我连名字也叫不上来,太多太多了。但是值得庆幸的是,这些操作系统大同小异,相通的。
你正在在读书,建议学习uCos操作系统(看邵贝贝的《UC/OS操作系统》);如果你不喜欢这么Basic的操作系统,VxWorks也是一个不错的选择,VxWorks进入中国已经好多年了,国内出版的书也都很好,尤其推荐陈智育的《VxWorks程序开发实践》和周启平稿燃的《VxWorks下设备驱动程序及BSP开发指南》;Linux简直是恶梦,但是如果你能够走出这个噩梦,你也就成了高手了。
就说这么多吧,路漫漫其修远,祝你成功!!!
9. 单片机汇编高手进 ,这道题怎么算 求详细过程
0123H: ACALL SUBTRN ; (PC)=0123H (因为是双字节指令) (PC)=PC+2
0125H: 未知指令亏数 ; (PC)=0345H , (61H)=25H , (62H)=01H. (SP)=62H
-------- ; 程序转到子程序 首地址
0345H: 未知指数此令 ; PC=0345 (子程销毕首序 SUBTRN 的首地址)
------
RET ; 执行到这里会 弹出 SP
10. 本人是电子信息工程专业的大三学生 想学一些有关单片机或者嵌入式的东西 请问这两个哪个更有发展前景
楼主的复制一大堆,根本不讲重点啊。
单片机其实就是嵌入式的一部分,更简单的来说,单片机应该是嵌入式的基础的一部分,单片机因为功能简单,学习起来也比较简单。
随着电子产品的价格越来越白菜价,当然现在企业上用单片机来开发产品了,更多是是用的ARM.
所以你说单片机和嵌入式哪个更有前途,那当然是嵌入式。嵌入式的应用范围很广泛啊。从随身携带的mp3、语言复读机、手机、PDA到家庭之中的智能电视、智能冰箱、机顶盒,再到工业生存、娱乐中的机器人,无不采用嵌入式技术。各大跨国公司及国内家电巨头如INTEL、TI、SONY、三星、TCL、联想和康佳等都面临着嵌入式人才严重短缺的挑战。
关于如何学才能脱颖而出 ?
其实很简单,总结起来就是一句话,努力加上不断努力。
关于如何学习嵌入式,我刚才看到一篇很不错的文章,是一个专科生介绍自己如何自学嵌入式,并找到嵌入式的工作,里面介绍了他的学习方法和学习过程,希望对你有帮助。
专科生学嵌入式到找到工作的前前后后--学习的榜样
先做个自我介绍,我07年考上一所很烂专科民办的学简做纯校,学的是生物专业,具体的学校名称我就不说出来献丑了。09年我就辍学了,我在那样的学校,一年学费要1万多,但是根本没有人学习,我实在看不到希望,我就退学了。
退学后我也迷茫,大专都没有毕业,我真的不知道我能干什么,我在纠结着我能做什么。所以辍学后我一段时间,我想去找工作,因为我比较沉默寡言,不是很会说话,我不适合去应聘做业务。我想应聘做技术的,可是处处碰壁。
一次偶然的机会,我才听到嵌入式这个行业。那天我去新华书店,在计算机分类那边想找本书学习。后来有个女孩子走过来,问我是不是读计算机的,有没有兴趣学习嵌入式,然后给我介绍了一下嵌入式现在的火热情况,告诉我学嵌入式多么的有前景,给我了一份传单,嵌入式培训的广告。听了她的介绍,我心里痒痒的,确实我很想去学会一门自己的技术,靠自己的双手吃饭。
回家后,我就上网查了下嵌入式,确实是当今胡散比较热门的行业,也是比较好找工作的,工资也是相对比较高。我就下决心想学嵌入式了。于是我去找嵌入式培训的相关信息,说真的,我也很迷茫,我不知道培训是否真的能像他们宣传的那样好,所以我就想了解一段时间再做打算。
后来,我在网络知道看到一篇让我很鼓舞的文章《如何学习嵌入式》,是一个嵌入式高手介绍没有基础的朋友怎么自学入门学嵌入式,文章写的很好,包含了如何学习,该怎么学习。他提到一个方法就是看视频,因为看书实在太枯燥和费解的,很多我们也看不懂。这点我真的很认同,我自己看书往往看不了几页。
我在想,为什么别人都能自学成才,我也可以的!我要相信自己,所以我就想自学,如果实在学不会我再去培训。
主意一定,我就去搜索嵌入式的视频,虽然零星找到一些嵌入式的视频,但是都不系统,我是想找一个能够告诉我该怎么学的视频,一套从入门到精通的视频,一个比较完整的资料,最好能有老师教,不懂可以请教的。
后来我又找到一份很好的视频,是在嵌入式学习网推出的一份视频《从零基础开始学嵌入式》,网址:http://www.002r.com/e.htm
里面的教程还不错,很完整,可以让我从基础的开始学起。视频不便宜啊,但是我也忍了,毕竟买几本书都要几百了,何况他们还有半年的技术咨询和服务,算值了。
下面介绍下我的学习流程,希望对和我一样完全没有基础的朋友有所帮助。
收到他们寄过来的光盘后,我就开始学习了,由于我没有什么基础,我就从最简单的C语言视频教程学起,话说简单,其实我还是很多不懂的,我只好请教他们,他们还是很热心的,都帮我解决了。C语言我差不多学了一个礼拜,接下来我就学了linux的基本命令,我在他们提供linux虚拟机上都有做练习,敲linux的基本命令,写简单的C语言代码拦咐,差不多也就三个礼拜。我每天都在不停的写一些简单的代码,这样一月后我基本掌握了C和linux的基本操作。
接下来我就去学习了人家的视频的培训教程,是整套的,和去参加培训没有多大的区别,这一看就是两个月,学习了ARM的基本原理,学习嵌入式系统的概念,也掌握了嵌入式的环境的一些搭建,对linux也有更深层次的理解了,明白了嵌入式应用到底是怎么做的,但是驱动我只是有一点点的了解,这个相对难一点,我想以后再慢慢啃。
这两个月,除了吃饭睡觉,我几乎都在学习。因为我知道几乎没有基础,比别人差劲,我只能坚持努力着,我不能放弃,我必要要靠自己来养活自己,必须学好这门技术,同时我不懂的就问,这里真的很感谢他们的技术客服对我的任何问题都是耐心的解答,每天都我几乎都有好几个问题问他们,然后我就把不懂的问题总结记下来,这样慢慢积累了一段时间,我发现自己真的有点入门了。
最后的一个月,我就去看关于实践部分的内容,了解嵌入式项目具体的开发流程,需要什么样的知识,我就开始准备这方面的知识,也就是学习这方面的视频,同时他们建议我去找了找一些嵌入式面试的题目,为自己以后找工作做准备。我就到网上找了很多嵌入式的题目,把他们理解的记下来,这样差不多准备了20天左右
我觉得自己差不多入门了,会做一些简单的东西了。我就想去找工作看看,于是我就到51job疯狂的投简历,因为我学历的问题,专科没有毕业,说真的,大公司没有人会要我,所以我投的都是民营的小公司,我希望自己的努力有所回报。没有想过几天过后,就有面试了,但是第一次面试我失败了,虽然我自认为笔试很好,因为我之前做了准备,但是他们的要求比较严格,需要有一年的项目经验,所以我没有被选中。
后来陆续面试了几家公司,终于功夫不负有心人。我终于面试上的,是在闵行的一家民营的企业,公司规模比较小,我的职务是嵌入式linux应用开发,做安防产品的应用的。我想我也比较幸运,经理很看重我的努力,就决定录用我,开的工资是3500一个月,虽然我知道在上海3500只能过温饱的生活,但是我想我足够了。我至少不用每天都要靠父母养,我自己也能养活自己的。我想只要我继续努力,我工资一定会翻倍的。
把本文写出来,希望能让和我一样的没有基础的朋友有信心,其实我们没有必要自卑,我们不比别人笨,只要我们肯努力,我们一样会成功。
最后祝愿所有想学嵌入式的朋友更早的入门!!
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
吃得苦中苦,方位人上人,所以你既然想脱颖而出,记得一定要比别人付出的更多,比别人更懂得抓住你身边的资源,更懂得珍惜机会!