面对失败,我学会了从中总结经验教训,并不断调整自己的思维方式。下面是一些优秀范文供大家参考,希望能够激发大家写心得体会的灵感。
课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程。随着科学技术发展的日新日异,单片机已经成为当今计算机应用中空前活跃的领域,在生活中可以说得是无处不在。因此作为二十一世纪的大学来说掌握单片机的开发技术是十分重要的。
本次课程设计持续了一个多月的时间,它主要是培养我们通过把所学的理论知识应用于实践,并且这一次课程设计采用的万用板搭建电路,想要焊接出来的电路板看起来整洁美观,我们便需要从全局入手,要有全局统筹局部的思维,这样才能更快捷设计出整齐美观的电路板。
刚开始时,由于自己的专业基础不足,对课题设计有一些恐惧。刚开始只是对照电路图一个个元件进行焊接,没有对整个电路结构进行布局。有经验的同学提醒我,如果继续这样下去,最后有些电路根本无法焊接上去。有了这种意识之后,我立即决定停止焊接,在同学的帮助下开始对整个电路图进行合理的排列,根据不同的电路部分的不同的特殊要求来安排位置,以达到最佳。最优的效果。在进行焊接的过程中慢慢的对此次课程越来越感兴趣。
然而在用程序对硬件进行调试的时候却出现了一些问题。整体焊接完毕后还是不能实现功能,通过一步一步的测量调试,检查出多处漏焊、虚焊的现象,修改后还是有很多的问题,用万用表不断的测试也找不到问题所在,而且用尽了各种方法检查了很久之后,任然没有有这样一个想法,但是没有做出来心里实在是很不甘心,因此我还是向基础扎实,经验丰富的同学请教,鼓励自己做下去。在他们的帮助下,发现有的电线上的绝缘胶皮由于焊接时,温度过热有部分破损,导致部分短路。一些残留的锡使得有些键盘与键盘之间连接了起来,却又很难被发现。经过多次修改和调整后,终于能基本实现功能。
问题得以圆满的解决,课题设计圆满结束,在此过程学到的细心,坚持不懈,不畏困难将使我受益终身。这其中除了自己的努力,更多的是感谢我们的课题设计老师段正华教授的帮助。由于对电路原理的不熟,对汇编语言的不精通我对课程设计很惧怕,但是段正华教授一方面在理论课上教育我们要对自己有信心,要争做一流的学者,并很详细很专业的为我们讲解了本次课程设计的理论知识,让我对此有了宏观上了解,并能够掌握这些理论知识,为以后的实际操作提供了坚实的基础。另一方面在实际操作时,也给我们很多技术上的指导,让我们能在此过程中,学到更多的操作技能。
接下来就是做硬件方面的焊接工作了。没想到这项看起来不需要多少技术的工作却是非常的劳心劳力。很多次是早上起来带瓶水带些吃的到实训中心,一泡就是一天。我看到有很多人跟我一样,不同的是他们是三三两两,而我大部分时间都是一个人做。在这个时候也有很多人帮助我,或是热心的帮我带饭,或是在我打盹儿的时候帮我做点焊接。大家都鼓励我,即使最后出不来东西,但是一定要坚持把它做完。当我想放弃的时候,我也这么对自己说,即使你做出来的是次品甚至不合格品,但是你一定要拿出来一件成品。
在要验收前,终于做了一件成品出来,不幸的是它真的是一件不合格品。帮我的那个男生做的已经出来了,所以最后应该还是我的焊接方面的问题。有一点灰心,想再重做来不及了,单是检查线路却也查不出来什么问题。那么就准备答辩吧。我对着电路图再看课本,发现以前很多觉得很难记的东西现在记起来容易多了,因为整天都在同它们打交道。51的引脚及其功能,a/d转换器的,驱动器的,所有我用到的我都一再的看书了解,同时请教同学我看书过程当中的疑惑在这个过程中又发现了以前焊接当中出的一些问题,能改的就改,不能改的,咳,要是时间再多一些,或者我能早点做好,要是不只是我一个人动手……算了吧,不要想那些如果,还是准备我自己的,做好我现在能做的吧。
最后,我发现自己对单片机竟然也有了一点兴趣,想暑假回家以后自己去买一些东西来做,再补一补汇编语言。有什么问题请教下以前的那些老同学好了,他们好厉害,在高中劳动课就成功的做出过调频收音机,大一暑假的时候参加了学校的电子竞赛培训接着比赛,不过后来怎么样我就不知道了。汗。看来要多保持联络,这次回家就好好找他们叙叙旧。
回顾起此次单片机课程设计,至今我仍感慨颇多,的确,从选题到定稿,从理论到实践,在整整两星期的日子里,可以说得是苦多于甜,但是可以学到很多很多的的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,比如说三极管pnp管脚不懂怎么放置,不懂分得二极管的正负极,对单片机汇编语言掌握得不好……通过这次课程设计之后,一定把以前所学过的知识重新温故。
这次课程设计终于顺利完成了,在设计中遇到了很多编程问题,最后在老师的辛勤指导下,终于游逆而解。同时,在老师的身上我学得到很多实用的知识,在次我表示感谢!同时,对给过我帮助的所有同学和老师再次表示忠心的感谢!
文档为doc格式。
。
很多想学单片机的人问我的第一句话就是怎样才能学好单片机?对于这个问题我今天就我自己是如何开始学单片机,如何开始上手,如何开始熟练这个过程给大家讲讲。
先说说单片机,一般我们现在用的比较多的的mcs-51的单片机,它的资料比较多,用的人也很多,市场也很大。
就我个人的体会怎么样才能更快的学会单片机这门课。
单片机这门课是一项非常重视动手实践的科目,不能总是看书,但是学习它首先必须得看书,因为从书中你需要大概了解一下,单片机的各个功能寄存器,而说明白点,我们使用单片机就是用软件去控制单片机的各个功能寄存器,再说明白点,就是控制单片机那些管脚的电平什么时候输出高,什么时候输出低。
由这些高低电平的变化来控制你的系统板,实现我们需要的各个功能。
至于看书,只需大概了解单片机各管脚都是干什么的?能实现什么样的功能?第一次,第二次你可能看不明白,但这不要紧,因为还缺少实际的感观认识。
所以我总是说,学单片机看书看两三天的就够了,看小说你一天能看五六本,看单片机你两三天看两三遍就够了,可以不用仔细的看。
推荐一本书,就这一本就足够,书名是《新编mcs-51单片机应用设计》,是哈尔滨工业大学出版社出的的,作者是张毅刚。
大概了解一下书上的内容,然后实践,这是非常关键的,如果说学单片机你不实践那是不可能学会的.,关于实践有两种方法你可以选择,一种方法:你自己花钱买一块单片机的学习板,不要求功能太全的,对于初学者来说你买功能非常多的那种板子,上面有很多东西你这辈子都用不着,我建议有流水灯、数码管、独立键盘、矩阵键盘、ad或da(原理一样)、液晶、蜂鸣器,这就差不多了。
如果上面我提到的这些,你能熟练应用,那可以说对于单片机方面的硬件你已经入门了,剩下的就是自己练习设计电路,不断的积累经验。
只要过了第一关,后面的路就好走多了,万事开头难,大家可能都听过。
方法二:你身边如果有单片机方面的高手,向他求助,让他帮你搭个简单的最小系统板。
对于高手来说,做个单片机的最小系统板只需要一分钟的时间,而对于初学者可就难多了,因为只有对硬件了解了,才能熟练运用。
而如果你身边没有这样的高手,又找不到可以帮助你的人,那我劝你最好是自己买上一块,毕竟自己有一块要方便的多,以后做单片机类的小实验时都能用得上,还省事。
有了单片机学习板之后你就要多练习,最好是自己有台电脑,一天少看电影,少打游戏,把学习板和电脑连好,打开调试软件坐在电脑前,先学会怎么用调试软件,然后从最简单的流水灯实验做起,等你能让那八个流水灯按照你的意愿随意流动时你已经入门了,你会发现单片机是多么迷人的东西啊,太好玩了,这不是在学习知识,而是在玩,当你编写的程序按你的意愿实现时你比做什么事都开心,你会上瘾的,真的。
做电子类的人真的会上瘾。
然后让数码管亮起来,这两项会了后,你已经不能自拔了,你已经开始考虑你这辈子要走哪一行了。
就是要这样练习,在写程序的时候你肯定会遇到很多问题,而这时你再去翻书找,或是问别人,当得到解答后你会记住一辈子的,知识必须用于现实生活中,解决实际问题,这样才能发挥它的作用,你自己好好想想,上了这么多年大学,天天上课,你在课堂上学到了什么?是不是为了期末考试而忙碌呢?考完得了90分,哈哈哈好高兴啊,下学期开学回来忘的一干二净,是不是?你学到什么了?但是我告诉你单片机一旦学会,永远不会忘了。
另外我再说说用汇编和c语言编程的问题。
很多同学大一二就开设了c语言的课,我也上过,我知道那时天天就是几乘几,几加几啊,求个阶乘啊。
学完了有什么用?让你用c语言编单片机的程序你是不是就傻了?书上的东西我们必须要会运用。
单片机编程用c语言或汇编语言都可以,但是我建议用c语言比较好,如果原来有c语言的基础那学起来会更好,如果没有,也可以边学单片机边学c语言,c语言也挺简单,只是一门工具而已,我劝你最好学会,将来肯定用得着,要不你以后也得学,你一点汇编都不会根本无所谓,但你一点c语言都不会那你将来会吃苦头。
汇编写程序代码效率高,但相对难度较大,而且很罗嗦,尤其是遇到算法方面的问题时,根本是麻烦的不得了,现在单片机的主频在不断的提高,我们完全不需要那么高效率的代码,因为有高频率的时钟,单片机的rom也在不断的提高,足够装得下你用c语言写的任何代码,c语言的资料又多又好找,将来可移植性非常好,只需要变一个io口写个温度传感器的程序在哪里都能用,所以我劝大家用c语言。
总结上面,只要你有信心,做事能坚持到底,有不成功不放弃的强烈意志,那学个单片机来说就是件非常容易的事。
步骤:
1.找本书大概了解一下单片机结构,大概了解就行。
不用都看懂,又不让你出书的。(三天)
2.找学习板练习编写程序,学单片机就是练编程序,遇到不会的再问人或查书。(二十天)
3.自己网上找些小电路类的资料练习设计外围电路。
焊好后自己调试,熟悉过程。(十天)
4.自己完全设计具有个人风格的电路,产品,。
你已经是高手了。
看到了吗?下功夫一个多月你就能成为高手,我就讲这么多了,学不学得会,下不下得了功夫就看你的了。
做了几十年技术工作,自认为技术还算过得去。
在自动化控制方面,我以前用的都是plc编程,现在于年逾五十岁之际,又有了要学习单片机的打算,只是还纠结于有没有必要学习?有没有能力学好的考虑之中。
每个人都有惰性,要想混下去总是有许多理由的。
从战略上讲,活到老、学到老是无需争辩的事情,超越自我、战胜自我的座右铭更是放之四海而皆准。
那么学会了技能是不是真的有用呢?考虑到自己最少还要工作十年以上,如果拿出点时间来学习技能,可以用十年以上,无论怎么看都是值得的。
而战术上真是问题多多,首先是年龄问题,这个年纪了,脑筋是不是给力,而学习这个技能的多是年轻人。
第二个是时间问题,自己本身有繁忙的工作,再加上生活琐事,一大堆的人际关系,还有电视电脑以及手机里的新闻和朋友圈的干扰,想一想就让人泄气。
其实,仔细分析自己的优势也不少,由于年龄大,自控能力应当是优势,自己总是教导孩子少玩多学,要有梦想!就像电影《功夫熊猫》里的主人公阿波!当年总是说孩子,现在孩子必然成为无言的监督员(看看我是怎么学习的)。
更大的优势是搞了多年的硬件,对硬件方面比较精通。
如果别人要学,光是硬件部分也够学一阵子的,更要命的是硬件部分需要理论联系实际,要做到精通是无法速成的(纯属给自己打气)。
我要学,只要搞清楚软件部分就ok。
思想斗争到此结束,开弓没有回头箭,下定决心,开始学习。
物质上的准备,仅一本教材是不够的。
于是在网上购买了一个单片机板子,没有想到商家竟然还赠送了视频教程。
有了这个教程学习变得容易了许多,本计划每天专心致志的学习四十五分钟,没想到几乎每次学习都超过这个时间。
这主要是学习中精神过于投入,经常忘了时间,经过了四个多月的学习,单片机已经尽在掌握,这迈出的一小步,其实是从维护到开发的一大步。
这次的学习成功,极大地鼓舞了我生活和工作的热情,响当当的事实再一次证明,一切困难都是纸老虎,只要排除干扰静下心来,那些所谓的困难,根本就是给自己的懒惰找借口而已。
通过这次的学习过程,笔者体会到,不静下心来是不可能成功的,这一点必须提醒大家。
在这次单片机的学习中,心灵上的收获大于技术上的收获。
我准备把这个学习的习惯一直保持下去!因此特把它写出来与志同道合的朋友分享,特别是一些年长的朋友。
单片机技术作为嵌入式系统领域的重要组成部分,其广泛应用于各个领域。作为一名学习者,我在学习单片机技术的过程中,经历了许多的挫折和困难,但同时也获得了许多的收获和成就。在这里,我想分享一下我关于学习单片机技术的心得体会。
首先,学习单片机技术需要有坚定的信心和毅力。单片机技术是一门需要不断实践和思考的技术,很难一蹴而就。在学习的过程中,我遇到了很多的问题和困惑,但是通过不断的实践和学习,我慢慢地找到了解决问题的方法。在遇到困难的时候,要坚信自己的能力,相信只要坚持努力,就一定能够克服困难,取得成果。
其次,需要注重理论与实践相结合。学习单片机技术,理论知识是基础,实践操作是关键。只有理论知识和实践经验相结合,才能真正掌握单片机技术。在学习的过程中,我积极参与实践操作,通过动手实践来加深对理论知识的理解和掌握。通过不断地实践,我逐渐摸索出了一些技巧和方法,这对于我学习单片机技术帮助很大。
此外,要善于寻找问题的根本原因。在学习单片机技术时,遇到问题是非常正常的。但是,关键在于我们要善于找到问题的根本原因,而不只是停留在表面上。有时候,问题看似很复杂,但实际上只是一个小错误导致的。只有找到问题的根本原因,才能够对症下药,解决问题。在学习的过程中,我遇到的问题不计其数,但通过不断的思考和追根溯源,我成功解决了绝大部分问题。
另外,要注重合作和交流。学习单片机技术是一个艰苦而又孤独的过程,但同时也需要与他人进行合作和交流。通过与他人的合作和交流,可以快速地解决问题,提高学习效率。在学习的过程中,我和同学们组成了小组,一起探讨问题和解决难题。这样的合作和交流让我受益匪浅,不仅加深了对单片机技术的理解,还培养了团队合作的能力。
最后,需要保持好奇心和持续学习的态度。学习单片机技术是一个持续学习的过程,需要不断地钻研和探索。保持好奇心,对新技术保持敏感,可以让我们不断追求进步和创新。在学习的过程中,我时刻保持着对单片机技术的好奇,积极主动地学习和尝试新的知识,这让我在单片机技术方面有了很大的提升。
学习单片机技术是一项艰巨而又具有挑战性的任务,但是通过不懈的努力和持续的学习,我深刻地认识到,只要有坚定的信心和毅力,并注重理论与实践相结合,寻找问题的根本原因,进行合作和交流,保持好奇心和持续学习的态度,就一定能够掌握单片机技术,并取得优异的成绩。
通过学习单片机技术,我不仅在专业知识方面得到了提升,更重要的是,我培养了自己的学习能力和解决问题的能力。这对我未来的发展和工作都具有重要意义。因此,我将继续努力,不断学习和提升自己的技术水平,为实现更大的目标做出贡献。
经过一个学期的学习,我认为要学好c语言程序这门课程,不仅仅要认真阅读课本知识,更重要的是要经过上机实践才能增强和巩固我的知识。特别是作为高职生,更要注重实践这一环节,仅有这样我们才能成为合格的计算机人材。
整个设计经过了软件和硬件上的调试。我想这对于自己以后的学习和工作都会有很大的帮忙。在这次设计中遇到了很多实际性的问题,在实际设计中才发现,书本上理论性的东西与在实际运用中的还是有必须的出入的,所以有些问题不但要深入地理解,并且要不断地更正以前的错误思维。一切问题必须要靠自己一点一滴的解决,而在解决的过程当中你会发现自己在飞速的提升。对于教材管理系统,其程序是比较简单的,主要是解决程序设计中的问题,而程序设计是一个很灵活的东西,它反映了你解决问题的逻辑思维和创新本事,它才是一个设计的灵魂所在。所以在整个设计过程中大部分时间是用在程序上头的。很多子程序是能够借鉴书本上的,但怎样衔接各个子程序才是关键的问题所在,这需要对系统的结构很熟悉。所以能够说系统的设计是软件和硬件的结合,二者是密不可分的。经过这次课程设计我也发现了自身存在的不足之处,虽然感觉理论上已经掌握,但在运用到实践的过程中仍有意想不到的困惑,经过一番努力才得以解决。
这也激发了我今后努力学习的兴趣,我想这将对我以后的学习产生进取的影响。其次,这次课程设计让我充分认识到团队合作的重要性,仅有分工协作才能保证整个项目的有条不絮。另外在课程设计的过程中,当我们碰到不明白的问题时,指导教师总是耐心的讲解,给我们的设计以极大的帮忙,使我们获益匪浅。所以十分感激教师的教导。经过这次设计,我懂得了学习的重要性,了解到理论知识与实践相结合的重要意义,学会了坚持、耐心和努力,这将为自己今后的学习和工作做出了最好的榜样。我觉得作为一名软件工程专业的学生,这次课程设计是很有意义的。更重要的是如何把自己平时所学的东西应用到实际中。虽然自己对于这门课懂的并不多,很多基础的东西都还没有很好的掌握,觉得很难,也没有很有效的办法经过自身去理解,可是靠着这一个多礼拜的“学习”,在小组同学的帮忙和讲解下,渐渐对这门课逐渐产生了些许的兴趣,自己开始主动学习并逐步从基础慢慢开始弄懂它。
我认为这个收获应当说是相当大的。一开始我们从参考书上找来了课题,可是毕竟是参考书,做到之后发现很多程序都是不完整的,这让我们伤透了脑筋。看着别的小组都弄得有模有样了,可是我们连一个课题都还没有定好。好不容易又找到了课题,可是结果还是很不尽人意。程序接线什么的都弄好了,调试也没有问题,可是就是无法到达预期想要的结果。参考书毕竟只是一个参考,设计这种东西最终还是要靠自己动脑筋。然后我们大家一起齐心协力,从平时做的实验、教师上课的举例、书本上的知识以及教师的辅导和其他同学的帮忙下最终完成了。应当说这是经过我们小组成员的共同努力和动脑完成的,虽然资料并不是很复杂,可是我们觉得设计的过程相当重要,学到了很多,收获了很多。我觉得课程设计反映的是一个从理论到实际应用的过程,可是更远一点能够联系到以后毕业之后从学校转到踏上社会的一个过程。小组人员的配合、相处,以及自身的动脑和努力,都是以后工作中需要的。
很多想学单片机的人问我的第一句话就是怎样才能学好单片机?对于这个问题我今天就我自己是如何开始学单片机,如何开始上手,如何开始熟练这个过程给大家讲讲。
先说说单片机,一般我们现在用的比较多的的mcs-51的单片机,它的资料比较多,用的人也很多,市场也很大。
就我个人的体会怎么样才能更快的学会单片机这门课。
单片机这门课是一项非常重视动手实践的科目,不能总是看书,但是学习它首先必须得看书,因为从书中你需要大概了解一下,单片机的各个功能寄存器,而说明白点,我们使用单片机就是用软件去控制单片机的各个功能寄存器,再说明白点,就是控制单片机那些管脚的电平什么时候输出高,什么时候输出低。
由这些高低电平的变化来控制你的系统板,实现我们需要的各个功能。
至于看书,只需大概了解单片机各管脚都是干什么的?能实现什么样的功能?第一次,第二次你可能看不明白,但这不要紧,因为还缺少实际的感观认识。
所以我总是说,学单片机看书看两三天的就够了,看小说你一天能看五六本,看单片机你两三天看两三遍就够了,可以不用仔细的看。
推荐一本书,就这一本就足够,书名是《新编mcs-51单片机应用设计》,是哈尔滨工业大学出版社出的的,作者是张毅刚。
大概了解一下书上的内容,然后实践,这是非常关键的,如果说学单片机你不实践那是不可能学会的,关于实践有两种方法你可以选择,一种方法:你自己花钱买一块单片机的学习板,不要求功能太全的,对于初学者来说你买功能非常多的那种板子,上面有很多东西你这辈子都用不着,我建议有流水灯、数码管、独立键盘、矩阵键盘、ad或da(原理一样)、液晶、蜂鸣器,这就差不多了。
如果上面我提到的这些,你能熟练应用,那可以说对于单片机方面的硬件你已经入门了,剩下的就是自己练习设计电路,不断的积累经验。
只要过了第一关,后面的路就好走多了,万事开头难,大家可能都听过。
方法二:你身边如果有单片机方面的高手,向他求助,让他帮你搭个简单的最小系统板。
对于高手来说,做个单片机的最小系统板只需要一分钟的时间,而对于初学者可就难多了,因为只有对硬件了解了,才能熟练运用。
而如果你身边没有这样的高手,又找不到可以帮助你的人,那我劝你最好是自己买上一块,毕竟自己有一块要方便的多,以后做单片机类的小实验时都能用得上,还省事。
有了单片机学习板之后你就要多练习,最好是自己有台电脑,一天少看电影,少打游戏,把学习板和电脑连好,打开调试软件坐在电脑前,先学会怎么用调试软件,然后从最简单的流水灯实验做起,等你能让那八个流水灯按照你的意愿随意流动时你已经入门了,你会发现单片机是多么迷人的东西啊,太好玩了,这不是在学习知识,而是在玩,当你编写的程序按你的意愿实现时你比做什么事都开心,你会上瘾的,真的。
做电子类的人真的会上瘾。
然后让数码管亮起来,这两项会了后,你已经不能自拔了,你已经开始考虑你这辈子要走哪一行了。
就是要这样练习,在写程序的'时候你肯定会遇到很多问题,而这时你再去翻书找,或是问别人,当得到解答后你会记住一辈子的,知识必须用于现实生活中,解决实际问题,这样才能发挥它的作用,你自己好好想想,上了这么多年大学,天天上课,你在课堂上学到了什么?是不是为了期末考试而忙碌呢?考完得了90分,哈哈哈好高兴啊,下学期开学回来忘的一干二净,是不是?你学到什么了?但是我告诉你单片机一旦学会,永远不会忘了。
另外我再说说用汇编和c语言编程的问题。
很多同学大一二就开设了c语言的课,我也上过,我知道那时天天就是几乘几,几加几啊,求个阶乘啊。
学完了有什么用?让你用c语言编单片机的程序你是不是就傻了?书上的东西我们必须要会运用。
单片机编程用c语言或汇编语言都可以,但是我建议用c语言比较好,如果原来有c语言的基础那学起来会更好,如果没有,也可以边学单片机边学c语言,c语言也挺简单,只是一门工具而已,我劝你最好学会,将来肯定用得着,要不你以后也得学,你一点汇编都不会根本无所谓,但你一点c语言都不会那你将来会吃苦头。
汇编写程序代码效率高,但相对难度较大,而且很罗嗦,尤其是遇到算法方面的问题时,根本是麻烦的不得了,现在单片机的主频在不断的提高,我们完全不需要那么高效率的代码,因为有高频率的时钟,单片机的rom也在不断的提高,足够装得下你用c语言写的任何代码,c语言的资料又多又好找,将来可移植性非常好,只需要变一个io口写个温度传感器的程序在哪里都能用,所以我劝大家用c语言。
总结上面,只要你有信心,做事能坚持到底,有不成功不放弃的强烈意志,那学个单片机来说就是件非常容易的事。
步骤:
1.找本书大概了解一下单片机结构,大概了解就行。
不用都看懂,又不让你出书的。(三天)。
2.找学习板练习编写程序,学单片机就是练编程序,遇到不会的再问人或查书。(二十天)。
3.自己网上找些小电路类的资料练习设计外围电路。
焊好后自己调试,熟悉过程。(十天)。
4.自己完全设计具有个人风格的电路,产品,。
你已经是高手了。
看到了吗?下功夫一个多月你就能成为高手,我就讲这么多了,学不学得会,下不下得了功夫就看你的了。
在过去的二十多天里,我通过自学的方式,在哈尔滨工程大学郭天祥老师的视频为辅导下。自己借了同学的一块单片机学习实验板,从单片机最基础的部分学起,感觉收获不少,现将我最近的学习心得分享给大家,也希望那些在单片机外面迷茫的同学们能够快速入门。以获得更高的知识储备。
以前的我对单片机不知迷茫,甚至恐惧。但是现在我发现喜欢上了单片机。单片机用途太广泛了,我才发现基本上没有哪个领域能离开单片机了。单片机非常好玩,真的能让人上瘾。本着不想虚度大学生活的想法,我试着开始接触单片机,现在感觉已不能自拔。郭天翔老师的单片机教学视频非常的棒,真的。很感谢郭老师能把这么好的学习方法和大家分享。在这个视频的辅助下,我基本上已经对单片机入门了。从点亮第一个led灯开始,到现在对液晶的熟练使用。一点一点剖析单片机的内部结构。就像郭老师说的一样,实践真的很重要,有理论没实践的摸索,很困难,而且很枯燥,很难有毅力坚持下去。经济能力许可的话最好买一个单片机快速开发板或者自己做一个都行。把每一个理论从单片机上显示出来。你就会越学越想学,越来越感觉自己会的东西太少了,你就会像饿狼一样不停的去咀嚼每一个知识点。越学越有意思。
单片机外围电路的实验,可以通过proteus或altium—design去仿真实现,这些软件非常好用,也非常好学。更进一步的话,如果学校实验室条件许可的话,也可以去实验室学习,在这里回收的更多,里面的牛人很多的。因为之前汇编学的不是太好,我现在直接用的c语言去编写程序。紧凑程度,方便阅读,可移植性都是其他语言不能比拟的,而且对帮助快速入门单片机很有帮助。编译器是keil51。可编程,也可软件仿真。
单片机真的不是太难,但是要学的东西真是太多了。也希望你能掌握正确的学习方法,学习顺利,获得更高的知识储备。
时光飞逝,一转眼,一个学期又进尾声了,本学期的单片机综合课程设计也在一周内完成了。
俗话说“好的开始是成功的一半”。说起课程设计,我认为最重要的就是做好设计的预习,认真的研究老师给的题目,选一个自己有兴趣的题目。其次,老师对实验的讲解要一丝不苟的去听去想,因为只有都明白了,做起设计就会事半功倍,如果没弄明白,就迷迷糊糊的去选题目做设计,到头来一点收获也没有。最后,要重视程序的模块化,修改的方便,也要注重程序的调试,掌握其方法。
虽然这次的课程设计算起来在实验室的时间只有三天,不过因为我们都有自己的实验板,所以在宿舍里做实验的时间一定不止三天。
硬件的设计跟焊接都要我们自己动手去焊,软件的编程也要我们不断的调试,最终一个能完成课程设计的劳动成果出来了,很高兴它能按着设计的思想与要求运动起来。
当然,这其中也有很多问题:
第一、不够细心比如由于粗心大意焊错了线,由于对课本理论的不熟悉导致编程出现错误。
第二,是在学习态度上,这次课设是对我的学习态度的一次检验。对于这次单片机综合课程实习,我的第一大心得体会就是作为一名工程技术人员,要求具备的首要素质绝对应该是严谨。我们这次实习所遇到的多半问题多数都是由于我们不够严谨。
第三,在做人上,我认识到,无论做什么事情,只要你足够坚强,有足够的毅力与决心,有足够的挑战困难的勇气,就没有什么办不到的。
在这次难得的课程设计过程中我锻炼了自己的思考能力和动手能力。通过题目选择和设计电路的过程中,加强了我思考问题的`完整性和实际生活联系的可行性。在方案设计选择和芯片的选择上,培养了我们综合应用单片机的能力,对单片机的各个管脚的功能也有了进一步的认识。还锻炼我们个人的查阅技术资料的能力,动手能力,发现问题,解决问题的能力。并且我们熟练掌握了有关器件的性能及测试方法。
再次感谢老师的辅导以及同学的帮助,是他们让我有了一个更好的认识,无论是学习还是生活,生活是实在的,要踏实走路。课程设计时间虽然很短,但我学习了很多的东西,使我眼界打开,感受颇深。
今天为止,学习单片机已经快一个月了,感觉还是不太熟练!总体来说,可以归纳为以下几个阶段:
1、了解阶段。这一阶段主要是为了熟悉51的基本结构与组成。例如,51中的串口,定时器,i/o口等等。
2、实验阶段。这一阶段的主要工作就是写程序,不要怕动手,因为你不动手的话,永远也不能发现你到底学到了什么,还有什么不晓得的东西。在这一阶段,可以编写一些比较容易的程序,例如,数码管动态显示与静态显示,串口与上位机通信,计算器,点灯等等一些程序。
3、综合阶段。这一阶段的主要目的就是将以前的一些零碎的知识结合起来。那就是将以前编写的程序综合起来,统一到一个程序中来。
学习单片机技术是我在大学期间最大的学习挑战之一。由于我对电子技术和嵌入式系统有着浓厚的兴趣,因此我决定学习这门让人充满好奇心的技术。然而,一开始接触到单片机技术时,我却感到相当的困惑。学习材料和开发工具的复杂性让我有点望而却步。然而,我决心克服这些困难,因为我相信掌握这门技术将对我的职业发展产生重要影响。
初入单片机技术的学习过程中,我遇到了许多困难。首先,我发现学习资料和教程通常晦涩难懂,缺乏实际的示例。这使得我很难理解基本概念和原理。其次,编写程序时,我经常遇到各种各样的错误,导致我花费大量的时间来调试和修复程序。然而,通过坚持不懈的努力和多次实践,我逐步掌握了编程语言和基本电路的原理。渐渐地,我能够设计简单的电子应用,并成功地将它们实现在单片机上。
第三段:实践中的收获和进一步的学习。
在学习单片机技术的过程中,我发现实践是最重要的。通过与实际项目的接触,我能够将自己的知识应用到实际中去。例如,当我实现了一个基于单片机的温度控制系统时,我感到极大的满足感。这个系统能够根据设定的温度范围控制加热器的工作。通过这个项目,我对单片机的工作原理和编程语言有了更深入的理解。此外,我还通过参加各种电子设计竞赛和项目来进一步提高我的技能。在这个过程中,我学会了如何与团队合作,并在项目中承担重要角色。
第四段:单片机技术的应用和未来的发展。
随着对单片机技术的掌握,我意识到这个领域的应用范围非常广泛,并且具有巨大的发展潜力。单片机技术可以应用于各种各样的领域,包括医疗设备、家庭自动化、工业控制等等。由于其灵活性和可编程性,单片机可以满足各种不同需求的设计要求。未来,我希望能够深入研究单片机技术,并将其应用于自己感兴趣的领域。
第五段:总结与展望。
通过学习单片机技术,我不仅获得了有用的技能,还培养了解决问题和持续学习的能力。这门技术让我对电子工程的深度理解和实践产生了浓厚的兴趣。我相信,通过不断地学习和实践,我能够取得更大的进步,并在职业生涯中取得更多的成就。同时,我也希望能够与其他对单片机技术有兴趣的人分享自己的经验和知识,共同促进这个领域的发展。
做了几十年技术工作,自认为技术还算过得去。
在自动化控制方面,我以前用的都是plc编程,现在于年逾五十岁之际,又有了要学习单片机的打算,只是还纠结于有没有必要学习?有没有能力学好的考虑之中。
每个人都有惰性,要想混下去总是有许多理由的。
从战略上讲,活到老、学到老是无需争辩的事情,超越自我、战胜自我的座右铭更是放之四海而皆准。
那么学会了技能是不是真的有用呢?考虑到自己最少还要工作十年以上,如果拿出点时间来学习技能,可以用十年以上,无论怎么看都是值得的。
而战术上真是问题多多,首先是年龄问题,这个年纪了,脑筋是不是给力,而学习这个技能的多是年轻人。
第二个是时间问题,自己本身有繁忙的工作,再加上生活琐事,一大堆的人际关系,还有电视电脑以及手机里的新闻和朋友圈的干扰,想一想就让人泄气。
其实,仔细分析自己的优势也不少,由于年龄大,自控能力应当是优势,自己总是教导孩子少玩多学,要有梦想!就像电影《功夫熊猫》里的主人公阿波!当年总是说孩子,现在孩子必然成为无言的监督员(看看我是怎么学习的)。
更大的优势是搞了多年的硬件,对硬件方面比较精通。
如果别人要学,光是硬件部分也够学一阵子的,更要命的是硬件部分需要理论联系实际,要做到精通是无法速成的(纯属给自己打气)。
我要学,只要搞清楚软件部分就ok。
思想斗争到此结束,开弓没有回头箭,下定决心,开始学习。
物质上的准备,仅一本教材是不够的。
于是在网上购买了一个单片机板子,没有想到商家竟然还赠送了视频教程。
有了这个教程学习变得容易了许多,本计划每天专心致志的学习四十五分钟,没想到几乎每次学习都超过这个时间。
这主要是学习中精神过于投入,经常忘了时间,经过了四个多月的学习,单片机已经尽在掌握,这迈出的一小步,其实是从维护到开发的一大步。
这次的学习成功,极大地鼓舞了我生活和工作的热情,响当当的事实再一次证明,一切困难都是纸老虎,只要排除干扰静下心来,那些所谓的困难,根本就是给自己的懒惰找借口而已。
通过这次的学习过程,笔者体会到,不静下心来是不可能成功的,这一点必须提醒大家。
在这次单片机的学习中,心灵上的收获大于技术上的收获。
我准备把这个学习的习惯一直保持下去!因此特把它写出来与志同道合的朋友分享,特别是一些年长的朋友。
两周的单片机课程设计最终顺利完成了,其中包含着欢乐,也有辛酸。我们选的设计题目是“数字温度计”,大家都觉得这个题目是比较简单的。其实不然,做了之后,发现设计电路虽然简单,但我们认为它真正困难的地方是程序设计,可是在我们同心努力下最终完成了。
我们刚选该题目时,真的是一头雾水,硬件电路不知如何下手,更何谈解决程序那块,因为我们所学的都是单片机方面的理论知识,应用到实践中去还比较少。可是,我们三人也没偷下懒,迅速分工去查阅和收集资料。我们去了图书馆借一些参考书,上网找一些相关资料,并且请教指导教师。经过不断努力,最终把数字温度计的思路和模型定了下来并开始分一个人去焊接硬件电路,剩下的去整理和修改程序。
经过一番整理和修改后,在电脑上进行仿真,仿真成功后准备焊接电路板。在焊接电路板中,我们首先对硬件电路进行布局,然后确认无误后,在电路板上进行焊接,这个过程我们觉得是做得比较快的,以至于后面出现了虚焊的错误。
焊接电路板完工,细心检查后,进行通电测试。结果液晶lcd没有显示,经过检查,原先是lcd坏了,在换了块新的后,能显示显示值。但还有个问题是,当报警电路不会报警,在请教教师后,发现走动蜂鸣器的电压太低了,是因为串接了一个太大的电阻。然后,我们换了一个小电阻,但这时蜂鸣器却一向在叫,停不下来,可是,在我们三人的的细心检查下,原先是在放大电路的一端虚焊了,这说明我们焊接电路的技术还不够好。在重新焊接那端后,数字温度电路最终成功实现功能,当时我们的心境都是无比兴奋和欢乐的,因为我们两周的辛苦没有白费。
在完成单片机课程设计后,我们发现我们还有许多不足,所学到的知识还远远不够,以至于还有一些功能不能被动完成。但经过学习这一次实践,增强了我们的动手本事,提高和巩固了单片机方面的知识,特别是软件方面。从中增强了我们的团队合作精神,并让我们认识到把理论应用到实践中去是多么重要。
学习单片机技术是我作为电子工程专业学生发展自身实力和技能的一部分,也是我对这门专业的热爱和追求。单片机技术作为现代电子技术的核心之一,不仅在工业控制、通讯系统和消费电子领域广泛应用,而且对于培养我们的逻辑思维、创新意识和动手能力也有着重要意义。在学习单片机技术的过程中,我不断感受到了自身的成长和进步,同时也积累了一些心得和体会。
第二段:学习过程中的挑战和困惑。
学习单片机技术并不是一帆风顺的,我在学习过程中遇到了许多挑战和困惑。首先,单片机技术本身比较复杂,掌握起来并不容易。不仅需要了解单片机的工作原理和硬件结构,还需要学习相关的编程语言和应用开发。其次,由于单片机技术的应用场景非常广泛,学习的知识点也比较广泛,时间不够用成为了我学习的另一个困扰。此外,缺乏实际的项目经验和实践机会,也让我感到一些无从下手。
第三段:如何克服困难和提高学习效果。
在面对这些挑战和困惑时,我采取了一些措施来克服困难和提高学习效果。首先,我从理论学习入手,通过阅读相关的教材和参考书籍,对单片机技术的基本知识和理论有了比较全面的了解。其次,我注重实践,通过做一些小项目来巩固所学知识,并将理论知识与实际应用相结合。此外,我还积极参加相关的培训班和讲座,通过与同学、老师和业界专家的交流和互动,不断扩大自己的技术视野。
通过不断的努力和实践,我在学习单片机技术方面取得了很大的收获。首先,我掌握了单片机的基本原理和工作方式,了解了单片机与其他电子元器件之间的关系,对电子电路的设计和调试有了更深入的认识。其次,我学会了如何使用常见的单片机开发工具和软件,能够独立完成一些简单的单片机应用程序和系统设计。此外,学习单片机技术也培养了我的动手能力和创新意识,使我对电子工程专业有着更深的理解和感悟。
第五段:未来的展望和总结。
学习单片机技术是我电子工程专业学习过程中的一段美好回忆,也是我未来发展的一个重要支撑。通过学习单片机技术,我不仅掌握了一门实用的技能,也培养了自身的逻辑思维和创新能力。未来,我将进一步深入学习和应用单片机技术,不断提升自身的能力水平,为我将来的职业发展打下坚实的基础。同时,我也鼓励更多的同学们加入到学习单片机技术的行列中,体会其中的乐趣和挑战,共同为推动电子技术的发展做出更大的贡献。
通过这一个学期的单片机学习,我收获了很多关于单片机的知识,并且这些知识和日常的生活息息相关。了解了一些简单程序的录入,led显示器、键盘、和显示器的应用和原理。
led显示器:led显示器是由发光二管组成显示字段的器件。通常的8段led显示器是由8个发光二极管组成,led显示器分共阳极和共阴极两种。有段选码和和位选码。当led显示器每段的平均电流位5ma时,就有较满意的亮度,一般选择断码5-10ma电流;位线的电流应选择40-80ma。led显示器的显示方式有动态和静态两种。7289a芯片是具有spi串行接口功能的显示键盘控制芯片,它可同时取得8位共阴极数码管和64个键的键盘矩阵。7289a的控制指令分为两类:8位宽度的单字节指令和16位宽度双字节指令;还有闪烁指令和消隐指令。7289a采用串行方式spi总线与微处理器通信;7289a与at89c52接口电路,在实际电路中无论接不接键盘,电路中连接到其各段上的8个100千欧的下拉电阻均不可以省去,如果不接键盘而只接显示器可以省去8个10千欧电阻,若仅接键盘而不接显示器,可省去串入dp及sa-sg连线的8个220欧电阻,7289a还需要外接晶体振荡电路。液晶显示器简称lcd,其显示原理是用经过处后的液晶具有能改变光线传输方向的特性,达到显示字符和图形的目的。最简单的笔段式液晶显示器类似于lcd显示器,可以显示简单的字符和数字,而目前大量使用的是点阵式lcd显示器,既可以显示字符和数字也可以显示汉字和图形。如果把lcd显示屏、背光可变电源、接口控制逻辑、驱动集成芯片等部件构成一个整体,是的与cpu接口十分方便。
键盘:键盘是最常见的计算机输入设备,它广泛应用于微型计算机和各种终端设备上。计算机操作者通过键盘向计算机输入各种指令、数据,指挥计算机的工作。按照键盘的工作原理和按键方式的不同,可以划分为四种:机械式键盘采用类似金属接触式开关,工作原理是使触点导通或断开,具有工艺简单、噪音大、易维护的特点。塑料薄膜式键盘键盘内部共分四层,实现了无机械磨损。其特点是低价格、低噪音和低成本,已占领市场绝大部分份额。导电橡胶式键盘触点的结构是通过导电橡胶相连。键盘内部有一层凸起带电的导电橡胶,每个按键都对应一个凸起,按下时把下面的触点接通。这种类型键盘是市场由机械键盘向薄膜键盘的过渡产品。无接点静电电容式键盘使用类似电容式开关的原理,通过按键时改变电极间的距离引起电容容量改变从而驱动编码器。特点是无磨损且密封性较好。
按照按键方式的不同键盘可分为接触式和无触点式两类。接触式键盘就是我们通常所说的机械式键盘,它又分为普通触点式和干簧式。普通触点式的两个触点直接接触,从而使电路闭合,产生信号;而干簧式键盘则是在触点间加装磁铁,当键按下时,依靠磁力使触点接触,电路闭合。与普通触点式键盘相比,干簧式键盘具有响应速度快、使用寿命长、触点不易氧化等优点。无触点式键盘又分为电容式、霍尔式和触摸式三种。其中电容式是我们最常用到的键盘类型,它的触点之间并非直接接触,而是当按键按下时,在触点之间形成两个串联的平板电容,从而使脉冲信号通过,其效果与接触式是等同的。电容式键盘击键时无噪声,响应速度快,但是价格很高一些。
显示器:按照显示器的显示管分类crt、lcd。按显示色彩分类单色显示器、彩色显示器。按大小分类通常有14寸、15寸、17寸和19寸,或者更大。显示管的屏幕上涂有一层荧光粉,电子枪发射出的电子击打在屏幕上,使被击打位置的荧光粉发光,从而产生了图像,每一个发光点又由“红”“绿”“蓝”三个小的发光点组成,这个发光点也就是一个象素。由于电子束是分为三条的,它们分别射向屏幕上的这三种不同的发光小点,从而在屏幕上出现绚丽多彩的画面。显示器显示画面是由显示卡来控制的。若仔细观察显示器上的文本或图像是由点组成的,屏幕上点越多越密,则分辨率越高。
屏幕上相邻两个同色点的距离称为点距,常见点距规格有0。31mm、0。28mm、0。25mm等。显示器点距越小,在高分辨率下越容易取得清晰的显示效果。电子束采用光栅扫描方式,从屏幕左上角一点开始,向右逐点进行扫描,形成一条水平线;到达最右端后,又回到下一条水平线的左端,重复上面的过程;当电子束完成右下角一点的扫描后,形成一帧。此后,电子束又回到左上方起点,开始下一帧的扫描。这种方法也就是常说的逐行扫描显示。而隔行扫描指电子束在扫描时每隔一行扫一线,完成一屏后再返回来扫描剩下的线,这与电视机的原理一样。隔行扫描的显示器比逐行扫描闪烁得更厉害,也会让使用者的眼睛更疲劳。完成一帧所花时间的倒数叫垂直扫描频率,也叫刷新频率,比如60hz、75hz等。
通过这几天的单片机的实训,我在理论的基础上更深刻的掌握了单片机的深层内容及实际生活中的应用,实训锻炼了自己动手能力和思维能力,还有在软件方面的编程能力,让我受益匪浅,同时也暴露出一些平时学习上的问题,让我深刻反思。这些问题的发现将为我以后的学习和工作找明道路,查漏补缺为进一步学习作好准备。通过实训,让我懂得了如何编写一些简单的程序,学会了如何制作单片机应用程序,并且可以在今后的日常生活中灵活运用。
高校实验室是培养高层次人才和开展科学研究的重要基地。在西方发达国家,学校对培养学生的动手能力是十分重视的,这一问题近年来也越来越受到我国教育界人士的广泛重视。为了提高学生的动手能力,让学生做相关实训并完成单片机实验报告,在实验的形式上注重培养学生的实验技能和动手能力。从单片机实验心得中学生就可以总结出大量的经验以适应当代社会的发展。
学习单片机这门课程(教学中选用inter公司的mcs-51),要掌握单片机指令系统中汇编语言各种基本语句的意义及汇编语言程序设计的基本知识和方法,以及单片机与其他设备相连接的输入输出中断等接口技术。使学生从硬件软件的结合上理论联系实际,提高动手能力,从而全面掌握单片机的应用。
软件的修改也非常方便,软件和硬件调试都通过后,把程序固化在eprom当中,插上8051单片机构成一个完整的单片机应用系统。
单片机实验板,它由8031、8155,eprom2764,max232键盘及显示器组成。其中8155片内有256个ram单元,接6个7段码显示器和8个按键作输入。串行口连接max232串行口转换芯片,p1口留出作为一些控制量的输入输出用以扩展使用。在实验板上可编写键盘扫描程序、显示程序、时间的设定及计时程序、从键盘上输入两个加数或减数显示结果程序、位变量的逻辑运算程序及串行口和上位机通讯程序等,还可和其它课程相结合,进行实验。同时可参考单片机上的比较生动的单片机学习教程,学习和试验一起进行.例如,《电子测量》课程中各种频率的测量,可通过8031单片机p1口输入被测量,由单片机来进行检测和显示,把几门课程结合在一起学习,使课程有延续性,也提高了学生学习的积极性。由于p1口通过插座引出,也可外部扩展a/dd/a等其他接口芯片,以构成新的应用系统。
此单片机实验报告中的实验板是一个单片机应用系统的硬件电路。有键盘输入和显示输出,在这个基础电路上通过p1口对不同检测或控制对象还可衍生出各种应用来。例如:时间的设置及显示、温度的检测及控制等,在此实验板上,编写相应的软件即可,否则,只在计算机上模拟调试软件,则无法了解单片机接口中各种控制信号的使用。还可帮助学生学会分析问题和解决问题的能力。这在单片机实验报告中都要体现出来。例如:如何检查程序存储器和外部数据存储器及i/o接口,执行访问外部程序存储器eprom2764的0000h单元的指令,只能读取该单元的内容,不能改写,当dptr=0000h时,执行movca@dptr指令,这时候74ls373应锁存地址信号低8位,可用示波器测量74ls373的q0-q7,检验是否锁存了零信号,同样用示波器检测p2口是否输出了地址信号的高8位,用示波器检测p0口和ale控制信号。若和原理分析有偏差,很快就可判断出哪个管脚有问题,可顺藤摸瓜,找出问题所在。同理,执行单条指令访问外部接口8155的papbpc口,软件执行时序信号和管脚测量结果相比较,看是否一致,以便检查硬件线路是否正确。访问外部ram数据存储器(8155片内)时,用示波器测wr及rd控制信号,如:读ram时,应测到读控制信号脉冲,而写ram时,应测得写控制信号脉冲。测得的信号一定是数字信号(0或1,0.7v左右或3.8v左右),2.5v左右的数字信号肯定有问题。在仿真器上调试软件时,通过察看单片机网的相关专栏得知,可采用仿真器上的晶振,通过后,改用用户板上的晶振,看结果是否一致,若有问题,说明用户板上的晶振有问题,再次通过后,把程序固化在eprom2764中,拔掉仿真头,插上8031芯片,看是否通过,此时有问题,说明用户板上的复位信号有问题。逐步学会硬件电路的调试。外部可连接温度传感器,经a/d转换,检测温度信号,并根据键盘输入的设定值范围,进行报警,切换继电器工作;还可通过模拟开关对多点温度进行轮检,构成一台多点温度测试系统。作为测量设备,要考虑精度,在硬件电路上要考虑模拟开关的选择,因为其导通电阻的大小对模拟输入量有影响,应选择导通电阻小,带过压保护的模拟开关,同样a/d转换芯片应根据精度要求,选择8位、12位等转换器,或满足精度要求的压频转换器。也可对外部多种传感器进行检测,如:温度、烟雾、水警、门警、红外等,构成监控电路,被测量中既有模拟量,又有数字量,特别要加强抗干扰性,在线路板设计时,每块芯片电源引脚的滤波电容排放时尽量靠近芯片,模拟地和数字地先分别共地,最后,再把模拟地和数字地共地,模拟地和数字地只能出现一个共地点,最好电源和地单独布层,走线合理,提高线路板的抗干扰性,为了提高抗干扰能力,软件设计时,可连续测量几次,去掉最大值和最小值,剩下的量取平均值,以滤去一些突变信号,提高整个系统的抗干扰能力。
由于单片机体积小、成本低、使用方便,所以被广泛地应用于仪器仪表、现场数据的采集和控制,但单片机存储量有限,数据处理能力差,不利于数据信息的保存和处理,在这里利用单片机的串行口和上位pc机串口通讯,实验板上的max233串行转换芯片实现ttl信号和rs232信号之间的转换,和pc机通讯,从而实现远距离的监控及信息的存储、处理和打印清单,单片机完成现场数据的采集及各种信号的控制,构成一套环境监控单元。
。
学了一年多的单片机,对单片机也有了一个基础的了解。在这一年里,我学了ds18b20、128,64大液晶、数码管显示等。从最初的跑马灯,到整体融合,经历了一段时间。单片机只有p0,p1,p2,p3,如果想把很多功能合在一起的话,就得复用,或着用到扩展,但是那个扩展模块不好用,写起程序来会比较麻烦,其实复用好的话,基本io口都够用!
学习的时候总是难免碰到一些问题!但是我的总结是:没关系,边做边想!或着讲瞎搞!不搞肯定不知道,搞了才会懂!过去的一些问题在现在看来都是小case,什么定时器赋值啊,定时器的使用类型(模式0,模式1,模式2),当时就自己在那里看书理解,一大堆的文字在那里,看了很久也不懂!不过后来我懂得了上网找视频教程!刚开始的时候也总是想为什么这么做,为什么这么做,为什么这么做,一堆的为什么。现在懂了,做多了,就觉得要这样做,要这样做,就是这么做的,没错!不会的时候想着,反正会弄懂的,多试试!
要相信熟能生巧,想想学习的时候,和现在的程度,不是在一个档次的!熟悉了操作,一些疑惑也会虽之解开!
我最初开始学单片机是因为我喜欢编程,我觉得编程是一件乐趣的事!或着说享受技术带来的快乐!我现在懂得了有各门各样的`语言,c语言是其中一种,还有更底程的汇编语言,java之类的高级语言,这些我都很喜欢!它们各有各自的好处和用处!而且我不想只会一门语言,所以我要慢慢地学习各种自己喜欢的语言!
在学习的过程中遇到麻烦或着问题,已经习以为长了!遇到问题也不会焦虑,想的是该怎么解决!水平也是在不断解决问题中提高的,有这一点体会!其实初学单片机,碰到问题总是新的知识而已,因为单片机很简单,也不用很懂电路原理,知道什么时候给0,什么时候给1,其它的就交给硬件去处理。
我也不单单只想有关单片机的程序单片机功能简单,一直写单片机也会变得呆板的(这期间就一直写单片机的程序,不写其它思考性的编程),至少我是这么觉得。因为写单片机的程序一段时间后,我发现我的思路有点僵在单片机的思路上,自己想写一写其它的程序,不是单片机的,是c语言的一些有关数学计算(类似应用题的那种),写的时候却想的写单片机的感觉,有点难以集中到现在要解决的问题!
作为一名自动化专业的大学生,我觉得做单片机课程设计是十分有意义的',而且是十分必要的。在已度过的大学时间里,我们大多数接触的是专业课。我们在课堂上掌握的仅仅是专业课的理论知识,如何去锻炼我们的实践能力?如何把我们所学的专业基础课理论知识运用到实践中去呢?我想做类似的课程设计就为我们提供了良好的实践平台。
在做本次课程设计的过程中,我感触最深的当属查阅大量的设计资料了。为了让自己的设计更加完善,查阅这方面的设计资料是十分必要的,同时也是必不可少的。我们是在做单片机课程设计,但我们不是艺术家,他们可以抛开实际尽情在幻想的世界里翱翔,而我们一切都要有据可依,有理可寻,不切实际的构想永远只能是构想,永远无法升级为设计。
接下来的4月,我意外的接到系学生工作处主管陈老师来电,说我系承办了院校园文化艺术节的南方擂台知识抢答竞赛,而学校又没有抢答器,要我组织几个学生做一个抢答器。我当时想,那好啊,做抢答器不难。以前有用与非门做过,于是我便爽快的答应了陈老师,并保证没有问题,保质保量完成。当是可能是我想得太简单了,抢答器不就八个按键一个数码管显示不就完了么,把最先抢到的组别显示出来。可是到主任给我们提要求的时候才发现抢答器要实现我功能远不只这么多,倒计时、蜂鸣提示、范规报警、电子计分器,这些我都没有考虑进来。主任也说了,这是一次院级的比赛,电子系做的东西要拿的出手,要做就做点样子出来。我想也好,虽有点难度,但符合我喜欢挑战难度的性格。我说行!这个活我做了!
接到任务开始布属,我把计分电路分了出去由其它几个同学做,我专攻抢答部分。由于没有独立设计电路的经验,刚开始得一步步慢慢深入,正好我会proteus。软硬件的调度都靠它完成,这样可以省很多的时间。做抢答器,我们花了一个月的时间,没日没夜的调试程序(当时单片机课程还没学到定时器中断,还得一边自学。)做pcb板,采购元器件,安装,调试,运行。那时,他们的计分电路也做好了,用了16个数码管做显示。我们将计分和抢答电路板及数码管安装在了事先木制的外壳上,进行整体调试。记得那时正赶上五一放假,而五月8号就是比赛了。我们都没有休息,将工作间从实验室搬到了寝室。那段时间虽然辛苦,但很充实,每个人收获都特别大。
为了让自己的编程水平能进一步提高,我将自己编写的程序发到了论坛里与大家共享,并下载网友们的程序进行分析。电子钟程序、液晶密码锁程序、跑马灯程序、大屏幕点阵屏程序、上下位机通信程序等等,这些我都能熟练的掌握。我认为,学编程读别人的程序非常重要,每个人都有不同的思维,相同的任务却有很多不同的方法,在每个程序里都能找到些经典的段子,让人回味。从中可以学到很多的方法,并且有些可以直接的引用。一个出色的程序员在编程时,并不是从零开始,而应该是先找出类似的例子进行分析,参考,看看有没有值得引用和借鉴的地方,加以修改,为自己所用。实践证明,这样做是对的。从当初不知如何着手到现在随手就能写个几百行,短短几个月,我进步还是蛮快的。
做单片机课设那会,我帮助了班上不少的同学,帮他们调试过硬件,修改过程序,并为他们解答了一系列的疑惑。当同学们投来羡慕的目光时,我很自豪,这些都是我努力的结果。当然,努力归努力,方法也很重要。在这里,我总结一下,与大家共勉:
1、基本功要杂实,要有一定的数模电基础。学单片机首先要搞清楚它的基本结构和存储单元的分配。
2、在学单片机的过程中,最好自己动手做一个单片机系统。先找现成的程序,现成的电路图,做成实物,并以这个例子为开端,带着疑问学习,往往更有目的,更主动。
3、有条件的话先个好的开发板,便实验时之用。没开发板,proteus软件仿真也行。
4、多读有代表性的程序,读得多了自然就会学到很多的好方法。可买本单片机子程序集看看,也可网上下载程序分析。
5、多泡泡单片机相关的论坛,与大家多交流交流,单片机完全可以自学的。
我觉得以上几点相当重要,因为它对我帮助很大,算是将我领进了单片机的大门,以至于我学起来不那么吃力,没有感觉到像大家说的那样的难。我看过很多的程序,也调试过很多的程序,每一次收获都不小。我的实验室就是keil和proteus。这使我做实验很方便。虽是虚拟的,但调试程序还是可以的,省去了很多的时间提高了效率。最近我在学cx51,因为学单片机掌握c语言是非常重要的,c语言的通用性对学习其它类型的单片机有很大的帮助。今后,我想做嵌入式系统工程师,想学arm,想搞操作系统。所以我现在必须打好基础,这样才能进步。
我学单片机的一些经历。其实我并不是很厉害,我懂的也只是一点皮毛,只是晓得单片机是怎么回事,能编几个小程序罢了。写这些我只是想记录一下我初学单片机的经历。同时对于那些想开始学习单片机的朋友们,还是可以有一些值得借鉴的地方。希望大家都能学好单片机,那些觉得难的学得吃力的同学要对自己有信心,要多做多练,这样才能培养学习兴趣。只要坚持就能如愿,同志们,加油!
课设的选题,方案的设计与确定,元器件的选择,硬件的焊接,这一系列的课设准备工作早在课设开始之前,老师就向我们做了相关的介绍和明确的说明,同时非常友好的提示我们早点着手准备自己的课设项目。但是如此语重心长的话语在当时似乎没有引起所有人的注意,只到有同学拿出已成型的作品时,只到课程设计进入第二周时,只到看到有同学拿着作品去验收时,只到发现自己在规定的时间里无法完成扩展功能是,我们开始醒悟,开始想起老师之前的友情提示,开始意识到课设的准备工作没做好,开始产生恐惧。这样的情形并不只是出现在的课程设计过程中,而是经常出现在我们的生活中。整个课程设计的过程中都显得有些盲目,有些匆忙。
像这样的实训课程,对我们学习自动化的学生来说意义非常重大,它不仅是对单片机这一门课程的理解与运用,同时也涉及到数字电路和模拟电路的领域;这也是一次锻炼我们动手动脑的绝佳机会,能让我们切实感受理论与实际相结合的过程。
设计的过程是枯燥的,程序的调试过程是让人感到乏味的、无奈的、头疼的,但是看到完工的作品却是激动高兴的。对于硬件的焊接,这可能是很多同学都喜欢做的一个环节。但是这次的硬件焊接与上一次实训时的不一样,这次你需要自己设计电路,自己学习理解某些芯片的引脚功能。芯片引脚的接线是我们容易出错的地方,如果接线图或者焊接有问题,这将对对芯片有很大的危害。硬件完工后,是软件的调试。我认为程序的调试是课设全过程中最难得部分,原因是我这块的功底非常薄弱。很坦诚的讲,以自己现有的能力,没法写出设计中的程序,我和同学只能借鉴高手的程序,努力地去修改源程序,使其能够实现想要的功能。软件的调试不像硬件焊接那么容易,调试过程中,我们必须考虑硬件与程序相匹配。在比如在这个环节中,很感谢我的同学,因为他能够非常耐心的为我讲解c语言中一些语句的用法和功能。
这次实训还有一重大收获是学会写一份正式的科技论文。报告的书写与软硬件同等重要,我们应遵守论文的格式要求,这也是对思维严谨性的一种锻炼。
完成一个出色的作品,单靠一个人的力量是不行的,小组成员之间必须相互配合,相互支持,相互团结,所以这也是一次锻炼我们团队合作精神的机会。
虽然本次实训结束了,但是实训留给我们思考的地方还很多,需要我们学习的地方还很多。无论在现在的学习中还是在以后的工作中,我们都应养成多学习,理解、多思考、多合作,多实践的好习惯,重视理论与实践相结合。
时间过得真快,不经意间,一个学期就到了尾声,进入到如火如荼的期末考试阶段。
在学习单片机这门课程之前,就早早的听各种任课老师和学长学姐们说过这门课程的重要性和学好这门课程的关键~~多做单片机实验。
这个学期,我们除了在课堂上学习理论知识,还在实验室做了7次实验。将所学知识运用到实践中,在实践中发现问题,强化理论知识。
现在,单片机课程已经结束,即将开始考试了,需要来好好的反思和回顾。
总结。
下了。
第一次是借点亮led灯来熟悉keil软件的使用和试验箱上器材。第一次实验体现了一个人对新事物的接受能力和敏感度。虽然之前做过许多种实验。但依旧发现自己存在一个很大的问题,对已懂的东西没耐心听下去,容易开小差;在听老师讲解软件使用时,思路容易停滞,然后就跟不上老师的步骤了,结果需要别人再次指导;对软件的功能没有太大的热情去研究探索,把一个个图标点开,进去看看。所以第一次试验相对失败。鉴于此,我自己在宿舍下载了软件,然后去熟悉它的各个功能,使自己熟练掌握。
在做实验中,第二个问题应该是准备不充分吧。一开始,由于没有课前准备的意识,每每都是到了实验室才开始编程,完成作业,导致每次时间都有些仓促。后来在老师的批评下,认识到这是个很大的问题:老师提前把任务告诉我们,就是希望我们私下把程序编好。于是我便在上机之前把程序编好,拷到u盘,这样上机时只需调试,解决出现的问题。这样就会节约出时间和同学讨论,换种思路,换种方法,把问题给吃透。发现、提出、分析、解决问题和实践能力是作为我们这个专业的基本素质。
三是我的依赖性很大,刚开始编程序时喜欢套用书上的语句,却对语句的理解不够。于是当程序出现问题时,不知道如何修改,眼前的程序都是一块一块的被拼凑整合起来的,没法知道哪里错了。但是编程是一件很严肃的事情,容不得半点错误。于是便只能狠下决心,坚持自己编写,即使套用时,也把每条语句弄懂。这也能激发了学习的兴趣。
还有一次实验是调出电脑里的程序,让它在试验箱上实现其功,让我们去体会别人编程的技巧和程序逻辑美感。看了之后,不得不说我目前的水平简直太小儿科了。还有连线也是个问题,对试验箱内部结构功能的不懂,以至于不知道如何连线让程序实现其功能。这让我意识到单片机是软件和硬件的结合,两者是一个整体。所以必须把硬件方面加强。
五是基础知识的薄弱,也是最基础的问题吧!在用c语言编程时,才发现自己c语言真的太差劲了,虽然这门课程早就学过,但是就目前所掌握的c语言知识,对于单片机编程远远不够。c语言也是我们以后学各种语言的基础,必须要花大量的时间温习强化。通过这个学期的单片机实验,我发现了自己很多问题,也从中学到了很多。它不是物理实验时,只需要记住老师说的步骤,顺次做完就可以了;并不是matlab实验,只需要你知道一些语句表达,然后在不违背语法的情况下,组合好就可以了;它不是eda实验,把一节课混下去就行了,反正大家都不知道,都是混,都跟不上老师的节奏思路。他需要我们在掌握硬件的基础上,用单片机语言在keil软件上写出一定的程序,然后利用stcisp烧到试验箱上,实现其特定的功能。而在编程时需要逻辑力,创新力,知识组合力,知识搜索。单片机在电子技术应用领域中,单片机的应用愈来愈多地应用到各行各业。要开发单片机的应用,不但要掌握单片机硬件和软件方面的知识,而且还要深入了解各应用系统的专业知识,融会贯通和有机结合,才能设计出优良的应用系统。并且需要与时俱进,不断了解各公司最新芯片的结构和应用,在实际应用中找到最好的性能价格比。培养自己接受新知识的自学能力,掌握芯片发展动态。培养自己的创新精神,在原有的基础上进行改进,使之功能不断完善。当然,最重要到还是态度,无论做什么事情,足够认真,足够坚强,足够毅力,足够决心,足够勇气,就一定能办到。
这是我第一次做单片机实验,说起来有一些紧张和新奇。在此之前我并没有接触过单片机,我本以为与之前的光学实验及其它实验差不多,可我进到实验室之后,我就改变了这个看法。
单片机实验要求的是一种思维的创新,而不是简单的重复老师所说的实验步骤。因此第一次实验,实验老师向我们讲解了cvavr编译器的大体情况及使用方法和技巧,并简单的向我们示例——如何在cvavr中编写一段程序。编完程序之后,知道我们如何使用avrstudio达到将编好的程序输入到单片机中来使其运行。
之后老师让我们以组为单位合作编写一段程序,并使其运行。我们组想要编写一个跑马灯的程序。在第一次运行cvavr时,我们组就遇到了一个麻烦,我们在建立一个新project文件那里出现了错误。在保存这个新project文件的时候,我们单击了save,而不是generate,saveandexit.因此它弹不出我们我们所需要的源程序。之后我们通过询问其他人解决了这个问题。在编程中,我们开始做的是两盏灯的交替闪烁,间隔时间是1000ms。在运用avrstudio的时候,我们又犯了一个错误。在我们打开编译好的工程文件时,开始调试,在最后一步点击finish时,弹出一对话框,问我们是否更新,然后我们单击了yes。这导致了仿真器无法下次使用。这是由于实验室中的仿真器是盗版的,无法进行更新。
经过我们的不断努力,我们终于实现了简单的跑马灯的运行,便是两个灯地交替闪烁。我们感到兴奋极了。但是我们并没有满足于当前,我们又编写了三个灯地交替闪烁,四个及多个。当我们一步步实现我们的目的时,我得到莫大成就感和自信。
在这次实验中,我体会到了合作的重要性。一个人也可能实现这一系列的过程,但是要花费很多精力和时间。群策群力,分工明确,可以使我们更好、更快地完成我们的工作。在此期间,你可以更好知道自己的不足和缺陷,来得到改正。还可以知道自己的优势所在,把握好自己的优势。
我看到书上讲:单片机可以用两种语言编写,一种是c语言,另外一种是汇编语言。汇编语言是一种机器语言,且代码繁琐,不易记忆。需要掌握单片机的内部结构和逻辑结构,通过看了几本书让我了解认识到汇编确实太繁琐,不过我学习过c语言,也参加了全国计算机二级考试,觉得自己在一方面具有优势,能很快学好它。
不过在学习中,我才发现学习单片机不仅仅需要软件的知识,还需要硬件的知识。我买了一个单片机在实践中就是一个活生生的例子,没有相应的硬件知识,我连单片机怎么和电脑相连都不知道,我为我当初的想法感到羞愧。单片机是一门很好的学问,需要我去钻研它。
时光飞逝,一转眼,一个学期又进尾声了,本学期的单片机综合课程设计也在一周内完成了。
俗话说“好的开始是成功的一半”。说起课程设计,我认为最重要的就是做好设计的预习,认真的研究老师给的题目,选一个自己有兴趣的题目,其次,老师对实验的讲解要一丝不苟的去听去想,因为只有都明白了,做起设计就会事半功倍,如果没弄明白,就迷迷糊糊的去选题目做设计,到头来一点收获也没有。最后,要重视程序的模块化,修改的方便,也要注重程序的调试,掌握其方法。
虽然这次的课程设计算起来在实验室的时间只有三天,不过因为我们都有自己的实验板,所以在宿舍里做实验的时间一定不止三天。
硬件的设计跟焊接都要我们自己动手去焊,软件的编程也要我们不断的调试,最终一个能完成课程设计的劳动成果出来了,很高兴它能按着设计的思想与要求运动起来。
当然,这其中也有很多问题,第一、不够细心比如由于粗心大意焊错了线,由于对课本理论的不熟悉导致编程出现错误。第二,是在学习态度上,这次课设是对我的学习态度的一次检验。对于这次单片机综合课程实习,我的第一大心得体会就是作为一名工程技术人员,要求具备的首要素质绝对应该是严谨。我们这次实习所遇到的多半问题多数都是由于我们不够严谨。第三,在做人上,我认识到,无论做什么事情,只要你足够坚强,有足够的毅力与决心,有足够的挑战困难的勇气,就没有什么办不到的。
单片机实践心得体会,学习就像一场战争,一场赛跑,它不会因你而停止,而你要因它而奋斗,下面带来单片机实践心得体会相关范文,欢迎阅读参考。
最近自己对单片机特别的感兴趣,因为看到它能控制电机的转动,自己觉得很神奇。
就想弄清楚它到底是怎么做到的?
我看到书上讲:单片机可以用两种语言编写,一种是c语言,另外一种是汇编语言。
汇编语言是一种机器语言,且代码繁琐,不易记忆。
需要掌握单片机的内部结构和逻辑结构,通过看了几本书让我了解认识到汇编确实太繁琐,不过我学习过c语言,也参加了全国计算机二级考试,觉得自己在一方面具有优势,能很快学好它。
不过在学习中,我才发现学习单片机不仅仅需要软件的知识,还需要硬件的知识。
我买了一个单片机在实践中就是一个活生生的例子,没有相应的硬件知识,我连单片机怎么和电脑相连都不知道,我为我当初的想法感到羞愧。
单片机是一门很好的学问,需要我去钻研它。
时光飞逝,一转眼,一个学期又进尾声了,本学期的单片机综合课程设计也在一周内完成了。
俗话说“好的开始是成功的一半”。
说起课程设计,我认为最重要的就是做好设计的预习,认真的研究老师给的题目,选一个自己有兴趣的题目。
其次,老师对实验的讲解要一丝不苟的去听去想,因为只有都明白了,做起设计就会事半功倍,如果没弄明白,就迷迷糊糊的去选题目做设计,到头来一点收获也没有。
最后,要重视程序的模块化,修改的方便,也要注重程序的调试,掌握其方法。
虽然这次的课程设计算起来在实验室的时间只有三天,不过因为我们都有自己的实验板,所以在宿舍里做实验的时间一定不止三天。
硬件的设计跟焊接都要我们自己动手去焊,软件的编程也要我们不断的调试,最终一个能完成课程设计的劳动成果出来了,很高兴它能按着设计的思想与要求运动起来。
当然,这其中也有很多问题,第一、不够细心比如由于粗心大意焊错了线,由于对课本理论的不熟悉导致编程出现错误。
第二,是在学习态度上,这次课设是对我的学习态度的一次检验。
对于这次单片机综合课程实习,我的第一大心得体会就是作为一名工程技术人员,要求具备的首要素质绝对应该是严谨。
我们这次实习所遇到的多半问题多数都是由于我们不够严谨。
第三,在做人上,我认识到,无论做什么事情,只要你足够坚强,有足够的毅力与决心,有足够的挑战困难的勇气,就没有什么办不到的。
这是我第一次做单片机实验,说起来有一些紧张和新奇。
在此之前我并没有接触过单片机,我本以为与之前的光学实验及其它实验差不多,可我进到实验室之后,我就改变了这个看法。
单片机实验要求的是一种思维的创新,而不是简单的重复老师所说的实验步骤。
因此第一次实验,实验老师向我们讲解了cvavr编译器的大体情况及使用方法和技巧,并简单的向我们示例——如何在cvavr中编写一段程序。
编完程序之后,知道我们如何使用avrstudio达到将编好的程序输入到单片机中来使其运行。
之后老师让我们以组为单位合作编写一段程序,并使其运行。
我们组想要编写一个跑马灯的程序。
在第一次运行cvavr时,我们组就遇到了一个麻烦,我们在建立一个新project文件那里出现了错误。
在保存这个新project文件的时候,我们单击了save,而不是generate, save and exit.因此它弹不出我们我们所需要的源程序。
之后我们通过询问其他人解决了这个问题。
在编程中,我们开始做的`是两盏灯的交替闪烁,间隔时间是1000ms。
在运用avrstudio 的时候,我们又犯了一个错误。
在我们打开编译好的工程文件时,开始调试,在最后一步点击 finish时,弹出一对话框,问我们是否更新,然后我们单击了yes。
这导致了仿真器无法下次使用。
这是由于实验室中的仿真器是盗版的,无法进行更新。
经过我们的不断努力,我们终于实现了简单的跑马灯的运行,便是两个灯地交替闪烁。
我们感到兴奋极了。
但是我们并没有满足于当前,我们又编写了三个灯地交替闪烁,四个及多个。
当我们一步步实现我们的目的时,我得到莫大成就感和自信。
在这次实验中,我体会到了合作的重要性。
一个人也可能实现这一系列的过程,但是要花费很多精力和时间。
群策群力,分工明确,可以使我们更好、更快地完成我们的工作。
在此期间,你可以更好知道自己的不足和缺陷,来得到改正。
还可以知道自己的优势所在,把握好自己的优势。
以上便是我做这次实验的心得体会。
作为一名自动化专业的大三学生,我觉得做单片机课程设计是十分有意义的,而且是十分必要的。
在已度过的大学时间里,我们大多数接触的是专业课。
我们在课堂上掌握的仅仅是专业课的理论知识,如何去锻炼我们的实践能力?如何把我们所学的专业基础课理论知识运用到实践中去呢?我想做类似的课程设计就为我们提供了良好的实践平台。
这次单片机课程设计我们历时两个星期,在我们班里算是倒数几组完成的吧,但经过这两个星期的实践和体验下来,我们又怎么会去在乎那个先后问题呢,因为对我来说学到的不仅是那些知识,更多的是团队和合作。
现在想来,也许学校安排的课程设计有着它更深层的意义吧,它不仅仅让我们综合那些理论知识来运用到设计和创新,还让我们知道了一个团队凝聚在一起时所能发挥出的巨大潜能!
单片机作为我们的主要专业课之一,虽然在大三开学初我对这门课并没有什么兴趣,觉得那些程序枯燥乏味,但在这次课程设计后我发现自己在一点一滴的努力中对单片机的兴趣也在逐渐增加。
过没想到这项看起来不需要多少技术的工作却是非常需要耐心和精力在两个星期后的今天我已明白课程设计对我来说的意义,它不仅仅是让我们把所学的理论知识与实践相结合起来,提高自己的实际动手能力和独立思考的能力,更重要的是同学间的团结,虽然我们这次花去的时间比别人多,但我相信我们得到的也会更多!
在做本次课程设计的过程中,我感触最深的当属查阅大量的设计资料了。
为了让自己的设计更加完善,查阅这方面的设计资料是十分必要的,同时也是必不可少的。
我们是在做单片机课程设计,但我们不是艺术家,他们可以抛开实际尽情在幻想的世界里翱翔,而我们一切都要有据可依,有理可寻,不切实际的构想永远只能是构想,永远无法升级为设计。
其次,在这次课程设计中,我们运用到了以前所学的专业课知识,如:cad制图、汇编语言、模拟和数字电路知识等。
虽然过去从未独立应用过它们,但在学习的过程中带着问题去学我发现效率很高,这是我做这次课程设计的又一收获。
要养成注释程序的好习惯,一个程序的完美与否不仅仅是实现功能,而应该让人一看就能明白你的思路,这样也为资料的保存和交流提供了方便;在设计课程过程中遇到问题是很正常德,但我们应该将每次遇到的问题记录下来,并分析清楚,以免下次再碰到同样的问题的课程设计结束了,但是从中学到的知识会让我受益终身。
发现、提出、分析、解决问题和实践能力的提高都会受益于我在以后的学习、工作和生活中。
设计过程,好比是我们人类成长的历程,常有一些不如意,但毕竟这是第一次做,难免会遇到各种各样的问题。
在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固。
我们通过查阅大量有关资料,并在小组中互相讨论,交流经验和自学,若遇到实在搞不明白的问题就会及时请教老师,使自己学到了不少知识,也经历了不少艰辛,但收获同样巨大。
通过这次课程设计我也发现了自身存在的不足之处,虽然感觉理论上已经掌握,但在运用到实践的过程中仍有意想不到的困惑,经过一番努力才得以解决。
这也激发了我今后努力学习的兴趣,我想这将对我以后的学习产生积极的影响。
通过这次设计,我懂得了学习的重要性,了解到理论知识与实践相结合的重要意义,学会了坚持、耐心和努力,这将为自己今后的学习和工作做出了最好的榜样。
我觉得作为一名自动化专业的学生,单片机的课程设计是很有意义的。
更重要的是如何把自己平时所学的东西应用到实际中。
虽然自己对于这门课懂的并不多,很多基础的东西都还没有很好的掌握,觉得很难,也没有很有效的办法通过自身去理解,但是靠着这一个多礼拜的“学习”,在小组同学的帮助和讲解下,渐渐对这门课逐渐产生了些许的兴趣,自己开始主动学习并逐步从基础慢慢开始弄懂它。
我认为这个收获应该说是相当大的。
觉得课程设计反映的是一个从理论到实际应用的过程,但是更远一点可以联系到以后毕业之后从学校转到踏上社会的一个过程。
小组人员的配合﹑相处,以及自身的动脑和努力,都是以后工作中需要的。
在整个单片的机的实验过程中,我的思维发生了很多改变。
首先是,我没有想到这个机器真的可以将电脑上的代码看起来很简单的转换成电路的通断。虽然这个和我们的手机芯片,电脑cpu比起来还差了很多,但是原理可行,便是越做越复杂越做越小。
其次,这门课真的非常依靠我们的上课是不是认真听,微电子电路精密的实验就是这样,任何一个位置的错误操作或者元器件的损坏都是不可能实现最后的结果的。
同样在后面的文章中我还会谈到语句的选择问题,在这些实验中我渐渐的学会了不套用书本上的语言而使用更多的我的思想。从那个定时装置老师需要我们自己计算两个量的乘积开始探索我们发现了我们可以做的有很多,可以去革新,可以去简化。
最后我们的知识实在还是太渺小了,我们可以学的内容还是有很多的,如果想让单片机这个领域有更好的发展,我们需要去寻找的还有很多。
一、实验一定要内容清晰,思路清晰,弄懂每一行代码。
在单片机的系统中,是像一些我们比较熟知的程序语言一样,有自己的地址,有自己的工作方式和工作顺序,因此我们在设计时是不能出一点差错的,而因为每一行都在进行地址的转换和堆栈的转换,因此我们在实验前一定要充分了解这次实验全部要做的内容。
二、实验过程可改变处多、很多路线可以归结到统一的答案。
我们知道最基础的单片机汇编语言结构形式由顺序结构,分支结构,循环结构组成。在我们完成前面几个实验的时候,我们更多的是用的这些结构的本身。但是后面我们发现,其实在单片机系统中有着更多的方式可以完成同样的目标。
例如,我们同样是完成一个定时,前期可以使用循环进行定时,通过机器时间的计算来设置寄存器中的数字大小。但是当我们开始应用定时器的时候同样可以做到我们想要的工作。而且我们发现定时器在和一些输入输出断口的扩展连接上更好。
上述两个语句就同样是在做定时,但我们可以看到右侧更加严谨,左侧更加基础。我们在实验过程中也可以感受到两者在方便性上的区别:左侧的如果要进行更改,需要对立即数进行更改,而右侧的一方面可以通过立即数的更改,一方面也可以通过修改特殊寄存器上的一些开关量来完成。
因为当汇编的代码长起来之后,保持整个篇幅的整洁是十分重要的,在这个方面,之所以做出特殊寄存器就是这里的优越性,使用一个定时器要比中断子程序容易一些。
和这个类似的例子还有不少,比如中断子程序的使用和计数器的关系,比如键盘的一些连接方法。我们都可以比较其中的优缺点而选择最适应用实验现场的方案,即使他们都能达到最后的结果。
三、实验跳出传统的理论,需要考虑对机器的负荷,舍弃约等于。
我们在使用一些语句的时候,如果仅仅是书面上的,那么不论多么复杂的运算,只要最后能达到要求就可以,但是真正操作的时候收到很多限制,比如随着语句的增多,机器总运行时间的增长,会让整个程序非常的'卡。这个时候如何采取措施也是我们需要考虑的。
传统的理论往往用了一些约等于,但是在现实的控制中并不接受一个延时为5ms的系统拥有微小的偏差,因为当这个程序在上万次被调用的过程中,这个偏差会被无限放大。
而如何更改,还可以回到定时器和循环结构做延迟的选择上,定时器要比循环要准确的多。
对于键盘,如果只使用传统的理论,认为人们的操作都是无限准确的,是无法得到想要的结果的,所以人们就用智慧,加了延时判断的语句,使得键盘这个装置可以真正的派上用场。这就是理论和实际的差距,因为本身防抖效果的产生。
四、电路板内部究竟是什么。
做了很多实验,我们感叹电路板很厉害的同时,也需要去思考一下内部的电路结构。我们在书本上学习到这些是由大量的门电路组成的,这些门电路的连接具体是怎样的我们不得而知。作为一个非常基础性的语言,汇编语言是很多高级语言的基础,而这些硬件和门之间的连接同样也是汇编的基础。如果我们可以学习通过门的与或非的连接使得整个体系构成一个特殊寄存器,如果它具有普适的通用性,可能就是一个了不起的发明创造。
并且内部电路的构造对于我们的记忆是十分有必要的。我们在进行编码的时候不可能一直查书,这样会严重影响我们的工作效率,即使我们有工具书来进行查找,我们也需要很好的了解各个编码的功能。而单片机的编码构成是十分大量和冗杂的内容构成的。例如在中断相关的知识,每一个特殊功能寄存器都有八位,而且大量的位都是有其特点,如果通过门电路的示意图,就可以很快的进行记忆。
而这些开关量本身就是内部情况的一个反映。应用这些内部和外部的结合或许以后的某天我们可以设计出更多更优秀的微机系统。
随着电子技术的发展,特别是随着大规模集成电路的产生,给人们的生活带来了根本性的变化,如果说微型计算机的出现使现代的科学研究得到了质的飞跃,那么可编程控制器的出现则是给现代工业控制测控领域带来了一次新的革命。
在现代社会中,温度控制不仅应用在工厂生产方面,其作用也体现到了各个方面。
本学期我们就学习了单片机这门课程,感觉是有点难呢。
也不知道整个学习过程是怎么过来得,可是时间不等人。
时光飞逝,一转眼,一个学期又进尾声了,本学期的单片机实习课题也在一周内完成了。
俗话说“好的开始是成功的一半”。
说这次实习,我认为最重要的就是做好程序调试,认真的研究老师给的题目。
其次,老师对实验的讲解要一丝不苟的去听去想,因为只有都明白了,做起产品就会事半功倍,如果没弄明白,就迷迷糊糊的去做,到头来一点收获也没有。
最后,要重视程序的模块化,修改的方便,也要注重程序的调试,掌握其方法。
虽然这次的实习算起来在实验室的时间只有几天,不过因为我们都有自己的实验板,所以在宿舍里做实验的时间一定不止三天。
硬件的设计跟焊接都要我们自己动手去焊,软件的编程也要我们不断的调试,最终一个能完成课程设计的劳动成果出来了,很高兴它能按着设计的思想与要求运动起来。
当然,这其中也有很多问题,第一、不够细心比如由于粗心大意焊错了线,由于对课本理论的不熟悉导致编程出现错误。
第二,是在学习态度上,这次课设是对我的学习态度的一次检验。
对于这次单片机综合课程实习,我的第一大心得体会就是作为一名工程技术人员,要求具备的首要素质绝对应该是严谨。
我们这次实习所遇到的多半问题多数都是由于我们不够严谨。
第三,在做人上,我认识到,无论做什么事情,只要
你足够坚强,有足够的毅力与决心,有足够的挑战困难的勇气,就没有什么办不到的。
通过这次单片机实习,我不仅加深了对单片机理论的理解,将理论很好地应用到实际当中去,而且我还学会了如何去培养我们的创新精神,从而不断地战胜自己,超越自己。
创新可以是在原有的基础上进行改进,使之功能不断完善,成为真己的东西。
这个设计过程中,我们通过在原有的计数器系统进行了改进,使之增添了暂停、计数、清零等的三个控制功能,使之成为一个更加适用,功能更加完备的属于自己的一个系统。
设计结果能够符合题意,成功完成了此次实习要求,我们不只在乎这一结果,更加在乎的,是这个过程。
这个过程中,我们花费了大量的时间和精力,更重要的是,我们在学会创新的基础上,同时还懂得合作精神的重要性,学会了与他人合作。
作为一名自动化专业的快大三学生,我觉得做单片机实习是十分必要的。
在已度过的.大学时间里,我们大多数接触的是专业课。
我们在课堂上掌握的仅仅是专业课的理论知识,如何去锻炼我们的实践能力?如何把我们所学的专业基础课理论知识运用到实践中去呢?我想做类似实习就为我们提供了良好的实践平台。
首先在做本次实习的过程中,我感触最深的当属查阅大量的设计资料了。
为了让自己的设计更加完善,查阅这方面的设计资料是十分必要的,同时也是必不可少的。
我们是在做单片机实习,但我们不是艺术家,他们可以抛开实际尽情在幻想的世界里翱翔,而我们一切都要有据可依,有理可寻,不切实际的构想永远只能是构想,永远无法升级为设计。
其次,在这次课程设计中,我们运用到了以前所学的专业课知识,如:c语言、模拟和数字电路知识等。
虽然过去从未独立应用过它们,但在学习的过程中带着问题去学我发现效率很高,这是我做这次课程设计的又一收获。
最后,在实习之前,我们要对所用单片机的内部结构有一个系统的了解,知道该单片机内有哪些资源;要有一个清晰的思路和一个完整的的软件流程图;在设计程序时,不能妄想一次就将整个程序设计好,反复修改、不断改进是程序设计的必经之路;要养成注释程序的好习惯,一个程序的完美与否不仅仅是实现功能,而应该让人一看就能明白你的思路,这样也为资料的保存和交流提供了方便;在实习过程中遇到问题是很正常的,但我们应该将每次遇到的问题记录下来,并分析清楚,以免下次再碰到同样的问题。
但是从中学到的知识会让我受益终身。
通过这几天的单片机的实训,我在理论的基础上更深刻的掌握了单片机的深层内容及实际生活中的应用,实训锻炼了自己动手能力和思维能力,还有在软件方面的编程能力,让我受益匪浅,同时也暴露出一些平时学习上的问题,让我深刻反思。
这些问题的发现将为我以后的学习和工作找明道路,查漏补缺为进一步学习作好准备。
这世界似乎总是很喜欢和人开着玩笑,原本对电子方面并不是很感兴趣的我在大学里却选择了电子信息科学与技术这一个对自己来说相对陌生的专业,开始慢慢接触各种各样电子方面的知识,开始慢慢的了解它。
单片机课程是我们专业十分重要的课程,单片机方面的很多知识都应用在电子信息中,因此努力学好单片机成为了自己的一个主要的任务。
单片机比专用处理器更适合应用于嵌入式系统,因此它得到了最多的应用。
事实上单片机是世界上数量最多的计算机。
现代人类生活中所用的几乎每件电子和机械产品中都会集成有单片机。
手机、电话、计算器、家用电器、电子玩具、掌上电脑以及鼠标等电脑配件中都配有1-2部单片机。
而个人电脑中也会有为数不少的单片机在工作。
汽车上一般配备40多部单片机,复杂的工业控制系统上甚至可能有数百台单片机在同时工作!单片机的数量不仅远超过pc机和其他计算的综合,甚至比人类的数量还要多。
因此如果自己能够很好的掌握单片机方面的有关知识,对于自己将来的发展有十分大的帮助,因此我开始了自己的单片机学习之路。
刚开始接触单片机是陌生的,里面的很多指令往往让自己感到厌烦,面对一些冗长的汇编程序,往往不用看到最后就已经失去兴趣了,甚至瞌睡连绵了,自己也很难想像一些小小的单片机竟然在自己的生活中发挥着那么多的作用。
似乎起初学习的记忆往往是那么的苦涩,把书翻阅了几遍几乎没有什么感觉,虽然开始了解单片机编程的一些指令,但对于如何编写单片机相关的程序仍然没有任何眉目。
自己请教很多师兄和老师都告诉自己对于单片机的学习一定要手脑并用,只是看书并不能很好的掌握它,因此我选择了在实验中去练习一些书本上简单的程序,慢慢的开始对单片机产生了些好感。
渐渐的我发现通过在实验中演练所学的单片机程序,并且自己尝试着编写单片机程序,能够很好的掌握单片机方面的知识,只有很好掌握了基础的知识才能帮助自己进行进一步的单片机研发,帮助自己在未来的人生道路上有更好的发展。
虽然起初的单片机学习是清涩的,但只要坚定自己学习的信心,再付之以持之以恒的努力,我相信自己能够进一步加深对单片机的了解,在单片机的学习道路上走的更远!
这个学期的单片机课已经早早的上完了,但是理论纯属理论,没有与实践的结合总让我们学的不踏实,感觉没有达到学以致用的效果。
所庆幸的是在课程介绍考试完之后,老师给我们安排了这次单片机课程设计,给了我们学以致用的做好的实践。
关于这次课程设计,我们花费了比较多的心思,既是对课程理论内容的一次复习和巩固,还让我们丰富了更多与该专业相关的其他知识,比如软件应用等,在摸索中学习,在摸索中成长,在学习的过程中带着问题去学我发现效率很高,这是我做这次课程设计的又一收获,在真正设计之前我们做了相当丰富的准备,首先巩固一下课程理论,再一遍熟悉课程知识的构架,然后结合加以理论分析、总结,有了一个清晰的思路和一个完整的的软件流程图之后才着手设计。
在设计程序时,我们不能妄想一次就将整个程序设计好,反复修改、不断改进是程序设计的必经之路;养成注释程序的好习惯是非常必要的,一个程序的完美与否不仅仅是实现功能,而应该让人一看就能明白你的思路,这样也能为资料的保存和交流提供了方便;我觉得在设计课程过程中遇到问题是很正常,但我们应该将每次遇到的问题记录下来,并分析清楚,以免下次再碰到同样的问题的课程设计又出错了。
除了对此次设计的准备工作之外,我们还学到了很多平时难得的东西,首先是团队协作,在这次设计当中,难免和同学产生观点和意见的分歧,以及分工明细、时间安排等不合理,通过这次设计,我们体会到了团结合作的重要性及力量之强大,还有让我们处理事情更加有条理,思路更加清晰明了了,发现、提出、分析、解决问题和实践能力的提高都将受益于我在以后的学习、工作和生活中。
此次的设计,其实也是我们所学知识的一次综合运用,让我深深的认识到了学习单片机要有一定的基础,要有电子技术方面的数字电路和模拟电路等方面的理论基础,特别是数字电路;也要有编程语言的汇编语言或c语言。
要想成为单片机高手,我们首先要学好汇编语言,然后转入c语言学习,所以我们不能学到后面就忘了前面的知识,更应该将所学的知识紧紧的结合在一起,综合运用,所谓设计,就是要求创新,只有将知识综合运用起来才能真正的设计好。
经过本次微机课题的设计与研究,我们深入的学习了除课本以外的很多微机附件的内容,掌握了很多实验室操作技能。
我们在实际设计中遇到很多问题,但结合所学知识以及参考资料的帮助,不断地尝试,设计了一种能够解决实际问题的系统。
同时也加深了我们对于现实生活中,实际的嵌入式操作系统的原理的理解。
单片机在日常生活中应用广泛,结合这学期在学的嵌入式系统原理,我们更多的了解了单片机的发展现状和发展趋势,以及在生活中的广泛应用,其实80c51只是我们所接触的一种简单的单片机,在实际应用中,有各个公司生产的不同型号的、针对不同功能设计的、以及根据用户的需要和发展自主研发设计的单片机还有很多,由此设计出来的嵌入式系统更是数不胜数。
能够亲身的进行自我实践,并进行实际的应用,其实使我们对现行单片机的一次深入的了解,并能够提升我们将来在学习工作遇到的单片机设计问题。
在实际设计过程中,我们遇到了诸多设计的问题。
例如接口不够,这一问题主要是因为我们所设计的功能诸多,刚开始对于这一接口的规划不是非常的合理,后来通过使用中断,两个中断合理的设计便解决了所有的按键和现实问题。
考虑到目前空调系统也并不是使用我们所用到的80c51单片机,中断也有可能通过扩展有所增加,考虑到硬件设计的难度,使用两中断解决这一问题则是最佳的选择。
在程序设计中,我们更加深入了解了中断的使用与本质,合理利用这些,会使程序简化而不会出错。
比如开始我们把主程序写在中断里面,导致程序运行混乱,而后来发现,只在中断中做少量工作,比如改一下某一个标志,这样比较好。
对于传感器芯片的使用,我们查找了它的datasheet,并查阅了各种关于其硬件连接和软件设计的资料,同时发现了理论资料与实践上的区别,通过多次尝试,成功完成了硬件和软件的设计。
在这次课题设计过程中,我们合理的分工,适宜的规划进度的进展,不仅仅暗示完成了预先设计的内容。
在这一过程中,我们充分发挥我们的主观能动性,想象创造性,攻克了很多之前都没有想过的难关,真的受益匪浅。
这次设计不仅仅耗时耗力,而且自己也亲自跑了电子市场去进行实际考察,对我们理论和实验都有很大的提升,我想这些对于我们今后的学习生活都有很重要的意义,这将是我们在程序设计以及大学学习过程中的宝贵经验和财富。
-------------------------
单片机是一门应用性和实践性很强的学科,很多人都想学习单片机,并且想知道如何学习单片机,基于本人学习单片机的过程和愉快经历,特写此篇文章和广大的单片机初学者一起分享,希望您能从中受益。
熟悉单片机的人都知道,要学好单片机可不是一件容易的事,倒不是因为单片机很难学,而是很难找到一本专为单片机入门者而编写的教材。
翻一下身边的单片机教材,都好像是为已经懂单片机的人而写的,一般先介绍单片机的硬件结构和指令系统,再是系统扩展和外围器件,顺便讲一些应用设计(随便说一下,很多书中的电路设计已经过时,并且有些程序还是错误的)。
如果按照此种学习方法,想进行产品开发,就必须先把所有的知识全部掌握了才可以进行实际应用。
学习使用单片机只能靠循序渐进的积累,下面就本人学习单片机的过程和经验做简要介绍。
首先,学习单片机要有一定的基础:电子技术方面要有数字电路和模拟电路等方面的'理论基础,特别是数字电路;编程语言要求汇编语言或c语言。
要想成为单片机高手,建议初学者首先学习汇编语言,学的差不多的时候,转入c语言学习。
尽管汇编语言属于低级语言,编程效率低,但是较c语言具有目标代码简短,占用内存少,执行速度快等优点,更重要的是能使初学者尽快熟悉单片机的内部结构,并能对其进行精确的控制。
汇编语言在单片机教材里面都会涉及,不需要单独购买教材和学习。
c语言是一门学问,有很多专业书籍来讲解,并且对我们今后的编程生涯有绝对的好处,因此要深入学习,千万不要自以为看了某某的视频教程就以为掌握了c语言,那只是c语言的一部分。
在这里给大家推荐一本单片机c语言程序设计参考书,马忠梅等著,北京航空航天大学出版社出版的《单片机的c语言应用程序设计》,要求c语言基础。
如果没学过c语言,建议学习清华大学谭浩强编写的c语言程序设计,这本书写的不错,通俗易懂。
其次,是单片机教材选择。
单片机是一门非常重视实践的技术,不能总是看书,但要学习它首先应看书,对单片机引脚、内部结构、寄存器和原理有一定地了解和感官认识,它的是怎样工作的,能干些什么?刚开始时,也许你看不明白,但这并不要紧,因为你还缺乏实践经验。
现在单片机应用广泛,因此各个厂家分别推出了自己的单片机,按内部结构体系派系分:51系列、pic系列、avr系列、摩托罗拉等等……我们没必要每样都学!因为他们的编程方法和调试过程以及内部指令结构有一定的相似,只要学精通一款就ok了!尤其是用c语言编程,就几乎不用分什么派系,但是我们要选择一款有代表性的知识范围广,并且入门容易,书籍多。
一般来说,mcs-51系列单片机已经得到广泛的普及和应用,市场上它的资料也比较多,用的人也很多。
给大家推荐一些参考书,学习时只需要一本就足够拉。
书名:《新编mcs-51单片机应用设计》,哈尔滨工业大学出版,作者:张毅刚;书名:《单片机原理及应用》,高等教育出版社,作者:张毅刚等;书名:《单片机高级教程:应用与设计》,北京航空航天大学出版社,作者:何立民。
相关教材还有很多,在这不一一列举。
然后,是开发工具和开发环境的选择。
选择一块合适的学习板,对于初学者来说一般无力接受,如果经济条件允许、本人又对单片机很感兴趣、有从事相关工作意向的话,鼓励大家购买。
随便说一句,学习板功能要求太全,具有流水灯、数码管、独立键盘、矩阵键盘、ad或da、液晶、蜂鸣器等就差不多啦,毕竟,功能齐全的价格比较高。
仿真器对单片机初学者来说既是那么耳熟,同时又有些陌生,这主要是因为市场上传统的仿真器价格都在千元以上,对经济不是非常宽裕的人来说是不小的开支。
同时仿真器是用来提高调试程序效率的,也不是非需不可的,如果你没有仿真器,遇到程序出错的时候,只好苦思冥想,反复烧写调试。
随便推荐一下,学林电子的51tracer仿真器,有兴趣的朋友可关注一下。
有了单片机教程板以后,先看下指导说明书,熟悉一下学习板,开卷有益。
以后就得靠自己多练习了,将学习板与电脑连接好,先学会开发软件的使用,然后从最简单的流水灯实验做起,按照你自己的意愿控制流水灯,当你完成时,你会发现这是多么惬意的事情。
太好玩了,你会觉得这不是在学习,而是在玩,当你发现,单片机能够按照你编写的程序工作时,你会觉得非常兴奋,比做什么事情都开心,这样你会慢慢迷上单片机,真的。
不少网站上说搞定某个实验,就恭维的告诉你一声”恭喜你,学会了”自己学会了单片机,这有点可笑,这只能说明你算过关了,对单片机有了一定了解和会使用它了。
但是单片机能完成的功能太多了,尤其是对外围器件的控制,综合起来能设计出许多意想不到的产品.因此除了入门外,精通可千万别轻易说出口。
最后,在熟练掌握和应用后,那可以说对于单片机方面的硬件你已经入门了,剩下的就是自己练习设计电路,不断的积累经验。
最终,自己完全设计具有个人风格的电路,产品,这样你就是单片机高手拉。
只要过了第一关,后面的路就好走多了,万事开头难,大家可能都听过。
时下多家电子类的报刊杂志如:《电子制作》《无线电》《电子报》《电子世界》都开设了详细的单片机教程专栏,对于想学习单片机的朋友来说帮助很大,可以说现在的单片机教程环境是最好的,有网络,有书籍,有报刊杂志,还有视频教程,元件的采购方面也非常充足,相关的器材又多有便宜。
如果每天能抽出两小时的时间去学习,快的一个月,慢的三个月就入门拉。
一直想写一个帖子,将自己学习单片机的经历、经验和方法总结一下,今天终于动手写了,呵呵,这是我学习单片机的经验、心得、方法。希望对大家学习单片机有所帮助。
经常在群、论坛里看到有人问:怎么学单片机?也常看到有人说学了好几个月可就是没有什么进展。当然,受限于每个人受到的教育水平不同和个人理解能力的差异,学习起来会有快慢之分,但我感觉最重的就是学习方法。一个好的学习方法,能让你事半功倍,这里说说我学习单片机的经历和方法。
05年的时候,因为制作fm发射电路采用了bh1415的芯片,需要用到单片机控制,所以开始接触使用单片机,虽然以前读书时作为一门功课学过,不过也快丢荒了10年了,基本上都忘光了,也算是从头学起了吧。我当时是买了一块实验板,很简单的功能,比论坛实验板还要少功能,还有一个仿真器,也是比较简单的,sst芯片的。然后开始从大家都知道的流水灯写起,万事开头难,第一个程序基本上就抄人家的,翻查了一份快速入门的学习资料,写下第一个程序。然后,在仿真机是单步的看运行结果,从每一步执行,都硬件上反应出来的效果,很快,对单片机的运作有了一个非常感性的认识,这跟只看书然后自己想象运行是完全两码事。然后,是进一步的其它程序学习,一个月时间,基本上已经熟悉了51的各种硬件资源。把流水灯,数码管动态扫描,中断等等的学习了,然后就是写综合性的程序,也就是我发在论坛里的时钟。通过这个程序的编写,使自己的编程水平有了很大的飞跃。之后,就是逐步学习编写更多的程序,各种外围器件的控制等等,通过编写程序使自己不断的提高。在学过汇编之后,我又转到了c语言学习,因为以前没有学习过c语言,一切都很陌生,所以自己沿用了学习汇编的方法,大约花了3天功夫基本就对c语言有了初步的了解,然后就是尝试写上面所说的时钟,以汇编程序的思路作为参考,以c语言来编写,花了几天功夫完成了这一程序,也实现了从汇编编程为主到c编程为主的转变。然后,就是以c语言编写外围器件的控制程序,以此来熟悉c的编程风格,一直到现在,基本上就是c语言编程,汇编已经是作为调试程序的辅助。
下面我概括了几点我的学习经验和心得体会:
1、万事开头难、要勇敢迈出第一步。开始的时候,不要老是给自己找借口,说keil不会建项目啦、没有实验板啦之类的。遇到困难要一件件攻克,不会建项目,就先学它,这方面网上教程很多,随便找找看一下,做几次就懂了。然后可以参考别的人程序,抄过来也无所谓,写一个最简单的,让它运行起来,先培养一下自己的感觉,知道写程序是怎么一回事,无论写大程序还是小程序,要做的工序不会差多少,总得建个项目,再配置一下项目,然后建个程序,加入项目中,再写代码、编译、生成hex,刷进单片机中、运行。必须熟悉这一套工序。个人认为,一块学习板还是必要的,写好程序在上面运行一下看结果,学习效果会好很多,仿真器就看个人需要了。单片机是注重理论和实践的,光看书不动手,是学不会的。
2、知识点用到才学,不用的暂时丢一边。厚厚的一本书,看着人头都晕了,学了后面的,前面的估计也快忘光了,所以,最好结合实际程序,用到的时候才去看,不必说非要把书从第一页看起,看完它才来写程序。比如你写流水灯,完全就没必要看中断的知识,专心把流水灯学好就是了,这是把整本书化整为零,一小点一小点的啃。
3、程序不要光看不写,一定要自己写一次。最开始的时候,啥都不懂,可以抄人家的程序过来,看看每一句是干什么用的,达到什么目的,运行后有什么后果,看明白了之后,就要自己写一次,你会发现,原来看明白别人的程序很容易,但到自己写的时候却一句也写不出来,这就是差距……当你自己能写出来的时候,说明你就真的懂了。
4、必须学会掌握调试程序的方法。不少人写程序,把代码写好了,然后一运行,不是自己想要的结果,就晕了,然后跑到论坛上发个帖子,把程序一贴,问:为什么我的程序不能正常运行?然后就等别人来给自己分析。这是一种很不好的行为,应该自己学会发现问题和学会如何解决问题。这就需要学习调试程序的方法,比如keil里,可以下断点啦,查看寄存器内容等等,这些都是调试程序的手段,当你发现你写的程序运行结果和你想象中不一样的时候,你可以单步,也可以下断点,然后跟踪,查看各相关寄存器内容,看看程序运行过中是不是有什么偏差,找出影响结果的地方,改正过来。这一个过程非常重要,通过程序的排错,你可以学到的知识是书上得不到的。
5、找到解决问题思路比找到代码更重要。我们用单片机来控制周边器件,达到我们想到的目的,这是一个题目,而如何写出一个程序,来控制器件按你想要的结果去运作,这个就是解题的思路。要写程序,就得先找到解决问题的思路,你学会找出这个解题思路,比你找到代码更为重要。不少人很喜欢找人家的代码,有的人甚至有了代码就直接复制到自己的程序中,可以说,这不是一种学习的态度,无助于你编程水平的提高。我几乎不怎么看人家的代码,多数时候是看别人的思路,有方框图最好,没有的话文字说明也可以,要从代码中看出别人处理问题的思路,是相当困难的,特别是大型的程序,看起来是非常的累人,所以现在我也明白了,以前读书时说的程序流程图很重要,现在算是知道了。当你知道一个问题怎么去解决了,那么剩下的只是你安排代码去完成,这就已经不是什么问题了。举个例子:数码管动态扫描,没写过的初学者可能搞不清是怎么回事,其实,就是分时让每一时间段时只控制一只数码管显示数字,几只数码管轮流显示,由于速度很快,人眼的看起来是全部数码管都亮的。明白是这么一回事,事情就好办了,剩下的事情,无非是你安排让一只只数码管轮流显示出相应的数值。显示数字,然后延时一下,再下一只显示数字,延时,知道是这样,我们实际程序上只要做到这样就可以:往段口送段码,然后打开位选显示一只,延时一下,再关闭位选,再送出段码,再打开另一只位选仅此而已。有了解决问题的思路,我们就能问题拆分开来,然后逐一的解决,如果动态扫描的原理都没懂,不知道如何做,那么这个程序是怎么也写不出来的。
6、开动脑筋,运用多种方法,不断优化自己的程序。想想用各种不同方法来实现同一功能。这是一个练习和提高的过程,一个问题,你解决了,那么你再想想,能不能换种写法,也可以实现同一功能,或者说,你写出来的代码,能不能再精简一点,让程序执行效率更高,这个过程,就是一个进步的过程。很多知识和经验的获得,并不是直接写在书让你看就可以得到的,需要自己去实践,开动脑筋,经验才能得到积累,编程水平才能有所提高。
7、看别人的代码,学习人家的思路。这个在学习初期是很有用,通过看别人的代码,特别是有多年编程经验的人写出的具有一定水平的代码,可以使自己编程水平得到迅速的提高,同时,也可以结合别人的编程手法,与自己的想法融合在一起,写出更高水平的代码,从中得到进步。但要注意,切忌将学习变成抄袭,更不是抄袭完了就认为自己学会了,这样做只会使你退步。
8、尝试编写一下综合应用的程序。从流水灯学起,到动态扫描,再到中断,那么,你可以试试写一下时钟这种综合性应用的程序,不要小看时钟,要写好它不是一件容易的事情,它包括了单片机大部分的知识,比如有按键(io读取)、动态扫描(io输出)、中断等,如何协调好各功能模块正常工作,才是编程者需要学习的地方,当你单独写一个功能的时候,比如按键读取,你可能感觉很容易,因为你的程序啥也不做,只是读按键。但把它和其它功能混合在一起,如何在整个程序运行中使每一部分都正常工作,这就不是写一个按键读取这么容易的事情,功能模块之间有可能会互相影响,比如你需要让数码管既能显示,又要去处理按键读取,怎么使这两部分都正常工作,这就是一个协调过程。当你有了这个处理协调能力,你就算是入门了。
9、着重于培养解决问题的能力,而不是具体看自己编写了多少代码或者做过什么。“学单片机重点在于学习解决问题的思路,而不是局限于具体的芯片类型和语言”这一直是我的座右铭,是我学单片机多年来感悟出来的。经常看到有人说“你会驱动xx芯片,真牛啊”“你搞过xx项目,真厉害”之类的话,其实这是非常片面的,搞过xx芯片,搞过xx项目,只能说明你做过这一项目,它只是你的业绩,并不是代表能力就一定高。真正的能力应该是:“遇到没有解决过的问题或器件,能利用自己已学的知识,迅速找到解决问题的方法。”这个才是能力。写程序的过程就是一个创造的过程,几乎没有完全一样的项目,每次你遇上的几乎都不相同,所以你拥有的必须是你面对新项目时的创造能力,而不是标榜着你以往做过多少项目。当然,业绩也能从另一侧面反映你的经验和水平。
10、如果有可能,多学习计算机专业的知识,比如数据结构等。这些是你解决问题的基础知识,你把这些知识应用得越好,就会发现越容易找到解决问题的方法,这就是为什么一个学计算机专业的人编的程序和一个非计算机专业的人编的程序有差异的原因。也是一个菜鸟进军到高手所要配备的知识。如果我们把编程分为宏观编程和微观编程,那么微观编程就是写具体的代码,比如控制某某器件的语句;而宏观编程就是如何对整个程序进行布局、安排,使功能模块以你想要的方式去运行,得出你想要的结果。如前所说“会控制xx器件”这些只能算是微观编程,能做到这一步还只能算是菜鸟级别,如果面对一个新的器件,你心里没底,没把握去写这个控制程序,那说明你还是一个初级的菜鸟。当你有了一定的编程经验,控制过相当数量的器件之后,你就会发现,控制器件这些工作都是相似的、重复的工作,体现不出编程的水平,最多也是写得好与不好的差别,只能算是一些小技巧的应用。而对整个程序进行布局、安排这些才是最头痛的事情,能达到宏观编程和微观编程都做好才是真正的高手。对于规模越大的程序,越能体现出这一点。
11、面对一个新项目时,多自己开动脑筋,不要急于找别人的程序。有不少人面对一个新项目时,第一步想到的就是网上找别人写过的代码,然后抄一段,自己再写几句,凑在一起就完成任务,这虽然可能是省时间,但绝对不利你的学习。当你接到一个新项目时,应该先自己构思一下整个程序的架构,想想如何来完成,有可能的话,画一个流程图,简单的可以画在脑子里,对程序中用到的数据、变量有一个初步的安排,然后自己动手去写,遇到实在没办法解决的地方,再去请教别人,或看别人是怎么处理的,这样首先起码你自己动过脑想过,自己有自己的思路,如果你一开始就看别人的程序,你的思维就会受限在别人的思维里,自己想再创新就更难了,这样你自己永远也没办法提高,因为你是走在别人的影子里。
12、多利用网络的搜索,学会提问题。一般来说,学习过程中,你遇上的问题,前人们多数也有遇上的,所以如果有什么不懂,在自己解决不了的时候,最好先到网上搜索一下,看能不能找到答案,找不到再到论坛里发问,发问也要有目的性,尽量简单明了的描述问题,让帮助你的人可以用最少的时间就看懂你说什么,毕竟人家帮助你是免费的,时间也是有限的。
以上就是我学习单片机的经历和心得体会,希望对大家会有帮助,说得有不好或不对的地方欢迎大家批评指正。
我从大二起,就去实验室去学习。
在这里与老师和一些电子设计爱好者的交流中,我学到了更多的专业知识。
我从此走上了学习嵌入式的道路。
这丰富了我的大学生活,是我在大学的最大收获。
我是从学习单片机开始我的嵌入式学习的。
我接触单片机的方式是在图书馆看书,我看了很多本书,但是大多数书写的大同小异。
书里面讲解的单片机的寄存器我看了很多遍也没有看懂。
我都不知道改怎么学习它了。
慢慢的我悟出了一个道理:电子的学习实践是最重要的,这样,我在大二的时候就买了一块学习板,我一边看视频一边仿照视频的程序,自己编写程序,在很短的时间里,我的单片机有了很大的提高。
那些难懂的寄存器通过编写程序,我慢慢的弄懂了它们,现在回头看去,原来它还是很简单的。
用哪种编程语言最适合我们。
我看过的单片机的书籍,大部分的程序都是汇编写的。
它是一种基于机器硬件的低级语言,对于我们这些只学习过c语言的人来说,非常难懂。
我认为刚开始学习单片机没有必要一定要从学习汇编编程开始。
我学习单片机就是用c语言编程的,我并不会汇编语言,也没有妨碍我把单片机学好。
我的单片机学习心得。
很多人说,学单片机最好先学汇编语言,以我的经验告诉大家,绝对没有这个必要,初学者一开始就直接用c语言为单片机编程,既省时间,学起来又容易,进步速度会很快。
在刚开始学单片机的时候,千万不要为了解单片机内部结构而浪费时间,这样只能打击你的信心,当你学会编程后,自然一步步就掌握其内部结构了。
单片机的学习实践。
单片机提高重在实践,想要学好单片机,软件编程必不可少。
但是熟悉硬件对于学好单片机的也是非常重要的。
如何学习好硬件,动手实践是必不可少的。
我们可以通过自己动手做一个自己的电子制作,通过完成它,以提高我的对一些芯片的了解和熟练运用它。
这样我们就可以多一些了解芯片的结构。
我相信,你完成了一个属于自己的电子制作,你的单片机水平就会有一个质的提高。
这就是我学习单片机的心得体会,希望给单片机的爱好者学好单片机有所帮助。
单片机作为一种最简单的软件,与我们的日常生活息息相关,了解一些单片机程序的简单录入是费城必要的。
如:led显示器、键盘和显示器的应用和原理。
在被刺实训中我们每个人通过一个八位流水灯的制作,使我们深深地体会到了单片机在现实生活中的小小应用,既增强了我们的好奇心,又巩固了我们的理论知识。
更让我们体会到了单片机手动的开始平台的完善与成熟。
只要你有想法,单片机就有可能让他成为现实。
这里我学习完protues软件后的第一感觉是,虽然这软件工作不稳定,但是会有相当不错的效果出来。
这对我以后的工作一定会有帮助的。
在这次试训中不仅只对单片机编程有了新的认识,还对整个单片机的开发平台都有了一厅的了解,这是一笔不错的收获。
通过这几天的试训,使我的感触很深,真实“条条大路通罗马”,要达到目的,不同的人就有不同的方法。
只要你的方法不错!五花八门都可以,而且是各有特色。
走出来的结果都有各自的独到之处。
在编程中“简”字贯穿于整个程序设计中,越简单越好,毕竟单片机留给用户的资源是有限的,所以我们要充分利用这些资源,达到更好的效果,这些是我们在以后的学习生活中应值得注意的地方。
在试训中有苦有甜,当我们为一个很难攻破的程序找出路时,心情烦躁,感觉自己很不可理喻,当程序一点一点编好后,自己从心底感觉到一点小小的安慰,看着自己的成果。
感觉很欣慰,有一丝丝的甜意,几天的实训使自己的思维逻辑也有了小小的进步。
在学校学习期间我有幸的参加了学校的单片机学习小组,在小组里我了解了什么是单片机,单片机有哪些用途,利用单片机可以实现哪些功能来方便人们的生活如交通灯,时钟,还有手机中,电子玩具等等,它们里面都有单片机的存在来实现某种功能。
通过在单片机小组里的学习我简单总结了几点心得和体会:
第一:万事开头难,要勇敢的迈出第一步,不要总找借口说没有学习过就总推脱。
凡事都有第一步可以先可简单的来,然后可以逐步的向深层次学习。
可以从建项目开始,然后可以找一个简单的小程序先把它敲进单片机内然他运行起来,感觉一下单片机的运行,让自己了解单片机整个运行。
第二:对于知识点,学过的要掌握牢固,对于没有学的和暂时用不到的先不用学习。
比如:小灯得点亮就没有用到中断可以先不用看。
这样可以避免知识过多记不住的麻烦。
对于程序这里的知识点不能只停留在理论层次上,一定要结合着程序进行学习这样才能掌握的很牢靠,当用到哪里的知识点不记得了可以去看书,对于用不到的'可以不去看。
第三:程序不要只是看别人得,一定要自己写过才是自己的。
开始不懂可以参考别人的,看看每一句代表着什么意思,能够实现什么现象。
明白之后自己再重新写一遍,你会发现看别人的能懂到自己写的时候很困难。
当你自己能写出来的时候说明你真懂了。
第四:一定要学会程序调试的方法。
有时候把程序写完了然后运行时不能实现理想的现象。
这时有人就晕了不知该怎么办,然后就去问别人。
当别人找出问题出在哪里时就会恍然大悟。
其实当遇到问题一定要自己尝试着解决,不能遇到问题就去问别人。
自己一定要掌握解决问的方法和思路。
第五:在学习初期看别人的代码,学习别人的思路这个很有用。
通过看别人的代码特别是有多年编程经验的人的程序,可以迅速提高自己的编程水平。
也可以结合着别人的手法,与自己的想法结合在一起写出更好的程序。
但是切记将学习变成抄袭,不能认为抄袭别人的你就学会了,这样只能使你退步。
第六:面对一个新项目时,自己一定要多想想,不要急着去看别人是怎么写的。
有的人看到新项目时就去找别人的然后抄一小段,自己在写几句,放在一起完成任务,虽然省时间但不利你的学习。
当你遇到一新项目时你应该先想一下程序的构架,想想如何来完成。
然后自己动手去写,当你遇到实在是没办法解决的问题时再去请教别人,看他是怎么处理的,学习他的方法。
这样起码你自己想过了,有自己的思路不会受到别人的影响,这样更容易提高自己。
在单片机的学习开始时感觉很吃力,在不断的学习过程中慢慢的对单片机产生了些好感,而且在编写程序过程中吃力的感觉慢慢的淡了。
在这其中基础知识掌握牢固是非常重要的,然后在学习过程中要学会提问题和自己解决问题,慢慢的对于学习单片机你也会产兴趣。
虽然在开始学习单片机时感觉很青涩,但只要坚定自己的学习信心,在付出持之以恒的努力,我相信自己能进一步加深对单片机的了解,在单片机的学习道路上走得更远!
版权声明:此文自动收集于网络,若有来源错误或者侵犯您的合法权益,您可通过邮箱与我们取得联系,我们将及时进行处理。
本文地址:https://www.miekuo.com/fanwendaquan/xindetihui/411041.html