单片机学习心得5篇
心得体会是一种把大家心中感受通过文字保留下来的书面材料,我们在写心得体会的时候一定要认真对待,以下是心得范文网小编精心为您推荐的单片机学习心得5篇,供大家参考。
单片机学习心得篇1
单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。概括的讲:一块芯片就成了一台计算机。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。同时,学习使用单片机是了解计算机原理与结构的最佳选择。 单片机在学习和讲解时可以和学生已比较熟悉的微机的结构进行对比,因为单片机内部也用和微机功能类似的模块,比如cpu、内存、并行总线,还有和硬盘作用相同的存储器件,在学习和讲解中要着重强调单片机在以上相关芯片部件与微机的异同,应用时的差别。 突出讲解单片机是一种在线式实时控制计算机的本质特征,及有较强的抗干扰能力,较低的成本的特性,并且通过列举在日常日常生活中的常见的家电产品如全自动滚筒洗衣机、排烟罩、vcd等等,让学生对单片机的应用产生直观认识,提高学生的学习兴趣。
在进行单片机课程教学安排时,要遵循一定的次序,因为学习单片机知识需要有一定的基础。例如要具备一定的电子技术方面(数字电路和模拟电路等方面)的理论基础,特别是数字电路;软件设计方面要具备一定的编程语言学习基础(如汇编语言或c语言)。引导学生要想成为单片机高手,建议学生首先学习汇编语言,学的差不多的时候,转入c语言学习。尽管汇编语言属于低级语言,编程效率低,但是较c语言具有目标代码简短,占用内存少,执行速度快等优点,更重要的是能使初学者尽快熟悉单片机的内部结构,并能对其进行精确的控制。汇编语言在单片机教材里面都会涉及,不需要单独购买教材和学习。c语言是一门学问,有很多专业书籍来讲解,并且对学生今后的编程生涯有绝对的好处,因此要深入学习,千万不要自以为学习了学校的c语言课程就以为掌握了c语言,那只是c语言的一部分。在教学中给学生推荐单片机c语言程序设计参考书,例如马忠梅等著,北京航空航天大学出版社出版的《单片机的c语言应用程序设计》,要求c语言基础。如果没学过c语言,建议学习清华大学谭浩强编写的c语言程序设计,这本书编写得比较好,通俗易懂。
其次,在教授单片机课程时要注意对单片机教材的选择。单片机是一门非常重视实践的技术,虽然看书不是指导实践最好的方法,但要学习单片机首先仍应重视对教材的学习,通过理论学习对单片机引脚、内部结构、寄存器和原理有??
定地了解和感官认识。现在单片机应用广泛,因此各个厂家分别推出了自己的单片机,按内部结构体系派系分:51系列、pic系列、avr系列、摩托罗拉等等……教导学生没必要每样都学!因为上述单片机的编程方法和调试过程以及内部指令结构有一定的相似,只要学精通一款就可以了。一般来说,mcs-51系列单片机已经得到广泛的普及和应用,市场上它的资料也比较多,用的人也很多。因此可以引导学生在教材之外选择一款有代表性的知识范围广,并且入门容易的51参考书。
最后,任何硬件的应用都离不开软件的设计支撑,因此在讲授单片机的课程中要强调编程的重要性,鼓励学生从小程序的编写设计开始,从模仿到独创,锻炼编程能力。并且注意记住单片机的外部引脚,p3口的复用,相关寄存器,psw的设置,将软硬件技术结合起来,把理论用于实践中去,实现用单片机控制各个机构去做想要实现的事情,把抽象的东西用计算机语言表达出来传给单片机的最终任务。
单片机学习心得篇2
一直想写一个帖子,将自己学习单片机的经历、经验和方法总结一下,今天终于动手写了,呵呵,这是我学习单片机的经验、心得、方法。希望对大家学习单片机有所帮助。
经常在群、论坛里看到有人问:怎么学单片机?也常看到有人说学了好几个月可就是没有什么进展。当然,受限于每个人受到的教育水平不同和个人理解能力的差异,学习起来会有快慢之分,但我感觉最重的就是学习方法。一个好的学习方法,能让你事半功倍,这里说说我学习单片机的经历和方法。
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、看别人的代码,学习人家的思路。这个在学习初期是很有用,通过看别人的代码,特别是有多年编程经验的人写出的具有一定水平的代码,可以使自己编程水平得到迅速的提高,同时,也可以结合别人的编程手法,与自己的想法融合在一起,写出更高水平的代码,从中得到进步。但只读存储器rom、i/o接口、定时器/计数器以及串行通信接口等集成在一块芯片上,构成了一个单片微型计算机,简称为单片机。它的应用范围很广,在工业自动化中应用有数据采集、测控技术。在智能仪器仪表中应用有数字示波器、数字信号源、自动取款机等。在消费类电子产品中应用有空调机、电视机、微波炉、手机、ic卡、汽车电子设备等。在通讯方面应用有手机、小灵通等。在武器装备方面应用有飞机、坦克、导弹、航天飞机、智能武器等。刚开始学习时只能抄写别人做成功的程序,一遍一遍的写,从简单的入手,逐步的积累,一步步的能够将小的程序结合到一起,拼接成较为复杂一些的程序。但是程序不要只是看别人得,一定要自己写过才是自己的。只有当你自己能写出来的时候说明你真懂了。刚接触keil时确实很让人头疼,使用keil不会建项目、不会使用实验板。然后可以参考已经成功的程序,抄过来,写一个最简单的,让它运行起来,先培养一下自己的感
觉,先建个项目,再配置一下项目,然后建个程序,加入项目中,再写代码、编译、生成hex,刷进单片机中、运行。其实当遇到问题一定要自己尝试着解决,不能遇到问题就去问别人,自己一定要掌握解决问的方法和思路。对一个新项目时,自己一定要多想想,不要急着去看别人是怎么写的。应该先想一下程序的构架,想想如何来完成。然后自己动手去写,理清自己的思路这样更容易提高自己。
熟悉单片机的人都知道,要学好单片机可不是一件容易的事,倒不是因为单片机很难学,而是很难找到一本专为单片机入门者而编写的教材。翻一下身边的单片机教材,都好像是为已经懂单片机的人而写的,一般先介绍单片机的硬件结构和指令系统,再是系统扩展和外围器件,顺便讲一些应用设计(随便说一下,很多书中的电路设计已经过时,并且有些程序还是错误的)。如果按照此种学习方法,想进行产品开发,就必须先把所有的知识全部掌握了才可以进行实际应用。学习使用单片机只能靠循序渐进的积累,虽然单片机的课程只上了几节就去上班了,但在学习的过程中有了一定的了解。下面就本人学习单片机的过程和经验做简要介绍。
首先,学习单片机要有一定的基础:电子技术方面要有数字电路和模拟电路等方面的理论基础,特别是数字电路;编程语言要求汇编语言或c语言。要想成为单片机高手,建议初学者首先学习汇编语言,学的差不多的时候,转入c语言学习。尽管汇编语言属于低级语言,编程效率低,但是较c语言具有目标代码简短,占用内存少,执行速度快等优点,更重要的是能使初学者尽快熟悉单片机的内部结构,并能对其进行精确的控制。汇编语言在单片机教材里面都会涉及,不需要单独购买教材和学习。c语言是一门学问,有很多专业书籍来讲解,并且对我们今后的编程生涯有绝对的好处,因此要深入学习,千万不要自以为看了某某的视频教程就以为掌握了c语言,那只是c语言的一部分。在这里给大家推荐一本单片机c语言程序设计参考书,马忠梅等著,北京航空航天大学出版社出版的《单片机的c语言应用程序设计》,要求c语言基础。如果没学过c语言,建议学习清华大学谭浩强编写的c语言程序设计,这本书写的不错,通俗易懂。
其次,是单片机教材选择。单片机是一门非常重视实践的技术,不能总是看书,但要学习它首先应看书,对单片机引脚、内部结构、寄存器和原理有一定地了解和感官认识,它的是怎样工作的,能干些什么?刚开始时,也许你看不明白,
但这并不要紧,因为你还缺乏实践经验。现在单片机应用广泛,因此各个厂家分别推出了自己的单片机,我们没必要每样都学!因为他们的编程方法和调试过程以及内部指令结构有一定的相似,只要学精通一款就ok了!尤其是用c语言编程,就几乎不用分什么派系,但是我们要选择一款有代表性的知识范围广,并且入门容易,书籍多。一般来说,mcs-51系列单片机已经得到广泛的普及和应用,市场上它的资料也比较多,用的人也很多。给大家推荐一些参考书,学习时只需要一本就足够拉。书名:《新编mcs-51单片机应用设计》,哈尔滨工业大学出版,作者:张毅刚;书名:《单片机原理及应用》,高等教育出版社,作者:张毅刚等;书名:《单片机高级教程:应用与设计》,北京航空航天大学出版社,作者:何立民。相关教材还有很多,在这不一一列举。
然后,是开发工具和开发环境的选择。选择一块合适的学习板,对于初学者来说一般无力接受,如果经济条件允许、本人又对单片机很感兴趣、有从事相关工作意向的话,鼓励大家购买。随便说一句,学习板功能要求太全,具有流水灯、数码管、独立键盘、矩阵键盘、ad或da、液晶、蜂鸣器等就差不多啦,毕竟,功能齐全的价格比较高。仿真器对单片机初学者来说既是那么耳熟,同时又有些陌生,这主要是因为市场上传统的仿真器价格都在千元以上,对经济不是非常宽裕的人来说是不小的开支。同时仿真器是用来提高调试程序效率的,也不是非需不可的,如果你没有仿真器,遇到程序出错的时候,只好苦思冥想,反复烧写调试。随便推荐一下,学林电子的51tracer仿真器,有兴趣的朋友可关注一下。有了单片机教程板以后,先看下指导说明书,熟悉一下学习板,开卷有益。以后就得靠自己多练习了,将学习板与电脑连接好,先学会开发软件的使用,然后从最简单的流水灯实验做起,按照你自己的意愿控制流水灯,当你完成时,你会发现这是多么惬意的事情。太好玩了,你会觉得这不是在学习,而是在玩,当你发现,单片机能够按照你编写的程序工作时,你会觉得非常兴奋,比做什么事情都开心,这样你会慢慢迷上单片机,真的。不少网站上说搞定某个实验,就恭维的告诉你一声”恭喜你,学会了”自己学会了单片机,这有点可笑,这只能说明你算过关了,对单片机有了一定了解和会使用它了。但是单片机能完成的功能太多了,尤其是对外围器件的控制,综合起来能设计出许多意想不到的产品.因此除了入门外,精通可千万别轻易说出口。
最后,在熟练掌握和应用后,那可以说对于单片机方面的硬件你已经入门了,剩下的就是自己练习设计开发各种课题,不断的积累经验。最终,自己完全设计具有个人风格的课题,产品,这样你就是单片机高手拉。只要过了第一关,后面的路就好走多了,万事开头难,这大家可能都听过。
有时候单片机的学习很单调,有些知识学起来很抽象,不容易理解,只能慢慢适应,一边学习理论知识,一边编写程序,将程序刷入单片机进行调试,通过这种方式才能更快速的学习单片机。要坚定自己的学习信心,在付出持之以恒的努力,我相信自己能进一步加深对单片机的了解,在单片机的学习道路上走得更远!
单片机学习心得篇3
这世界似乎总是很喜欢和人开着玩笑,原本对电子方面并不是很感兴趣的我在大学里却选择了电子信息科学与技术这一个对自己来说相对陌生的专业,开始慢慢接触各种各样电子方面的知识,开始慢慢的了解它。
单片机课程是我们专业十分重要的课程,单片机方面的很多知识都应用在电子信息中,因此努力学好单片机成为了自己的一个主要的任务。单片机比专用处理器更适合应用于嵌入式系统,因此它得到了最多的应用。事实上单片机是世界上数量最多的计算机。现代人类生活中所用的几乎每件电子和机械产品中都会集成有单片机。手机、电话、计算器、家用电器、电子玩具、掌上电脑以及鼠标等电脑配件中都配有1-2部单片机。而个人电脑中也会有为数不少的单片机在工作。汽车上一般配备40多部单片机,复杂的工业控制系统上甚至可能有数百台单片机在同时工作!单片机的数量不仅远超过pc机和其他计算的综合,甚至比人类的数量还要多。因此如果自己能够很好的掌握单片机方面的有关知识,对于自己将来的发展有十分大的帮助,因此我开始了自己的单片机学习之路。
刚开始接触单片机是陌生的,里面的很多指令往往让自己感到厌烦,面对一些冗长的汇编程序,往往不用看到最后就已经失去兴趣了,甚至瞌睡连绵了,自己也很难想像一些小小的单片机竟然在自己的生活中发挥着那么多的作用。似乎起初学习的记忆往往是那么的苦涩,把书翻阅了几遍几乎没有什么感觉,虽然开始了解单片机编程的一些指令,但对于如何编写单片机相关的程序仍然没有任何眉目。自己请教很多师兄和老师都告诉自己对于单片机的学习一定要手脑并用,只是看书并不能很好的掌握它,因此我选择了在实验中去练习一些书本上简单的程序,慢慢的开始对单片机产生了些好感。渐渐的我发现通过在实验中演练所学的单片机程序,并且自己尝试着编写单片机程序,能够很好的掌握单片机方面的知识,只有很好掌握了基础的知识才能帮助自己进行进一步的单片机研发,帮助自己在未来的人生道路上有更好的发展。
虽然起初的单片机学习是清涩的,但只要坚定自己学习的信心,再付之以持之以恒的努力,我相信自己能够进一步加深对单片机的了解,在单片机的学习道路上走的更远!
单片机学习心得篇4
在过去的二十多天里,我通过自学的方式,在哈尔滨工程大学郭天祥老师的视频为辅导下。自己借了同学的一块单片机学习实验板,从单片机最基础的部分学起,感觉收获不少,现将我最近的学习心得分享给大家,也希望那些在单片机外面迷茫的同学们能够快速入门。以获得更高的知识储备。
以前的我对单片机不知迷茫,甚至恐惧。但是现在我发现喜欢上了单片机。单片机用途太广泛了,我才发现基本上没有哪个领域能离开单片机了。单片机非常好玩,真的能让人上瘾。本着不想虚度大学生活的想法,我试着开始接触单片机,现在感觉已不能自拔。郭天翔老师的单片机教学视频非常的棒,真的很感谢郭老师能把这么好的学习方法和大家分享。在这个视频的辅助下,我基本上已经对单片机入门了。从点亮第一个led灯开始,到现在对液晶的熟练使用。一点一点剖析单片机的内部结构。就像郭老师说的一样,实践真的很重要,有理论没实践的摸索,很困难,而且很枯燥,很难有毅力坚持下去。经济能力许可的话最好买一个单片机快速开发板或者自己做一个都行。把每一个理论从单片机上显示出来。你就会越学越想学,越来越感觉自己会的东西太少了,你就会像饿狼一样不停的去咀嚼每一个知识点。越学越有意思。
单片机外围电路的实验,可以通过proteus或altium—design去仿真实现,这些软件非常好用,也非常好学。更进一步的话,如果学校实验室条件许可的话,也可以去实验室学习,在这里回收的更多,里面的牛人很多的。因为之前汇编学的不是太好,我现在直接用的c语言去编写程序。紧凑程度,方便阅读,可移植性都是其他语言不能比拟的,而且对帮助快速入门单片机很有帮助。编译器是keil51。可编程,也可软件仿真。
单片机真的不是太难,但是要学的东西真是太多了。也希望你能掌握正确的学习方法,学习顺利,获得更高的知识储备。
单片机学习心得篇5
在上个学期学校举办电子设计竞赛,在比赛过程看过一些郭天祥的单片机教程,然后在这个学期真正的理论。通过上课理论与实践相互结合,使我对单片机的认识有了更深刻的理解。系统以51单片机为核心部件,利用汇编软件编程,通过键盘控制和数码管显示实现了基本时钟显示功能、时间调节功能,能实现本设计题目的基本要求和发挥部分。
在平时上课中由于时间有限和本身知识水平的限制,有时做某些作业时,花上很多时间才能完成!但是在完成后,成功的喜悦充斥着。
在课上,我认识到计算机有运算器,计算器,控制器,输入输出设备组成。之前都是利用开发板,进行程序的仿真。现在不断利用软件仿真,但两者的作用是一样。在仿真过程中,总是会碰到程序出错的时候,只好苦思冥想,反复比对程序,在不断修改后,总会成功。
在第一次是点亮led灯来熟悉,keil软件的使用和试验箱上器材。第一次实验体现了一个人对新事物的接受能力和敏感度。虽然之前做过许多种实验。但依旧发现自己存在一个很大的问题,对已懂的东西没耐心听下去,容易开小差;在听老师讲解软件使用时,思路容易停滞,然后就跟不上老师的步骤了,结果需要别人再次指导;对软件的功能没有太大的热情去研究探索,把一个个图标点开,进去看看。
在做实验中,由于没有课前准备的意识,每每都是到了实验室才开始编程,完成作业,导致每次时间都有些仓促。在与同学讨论,换种思路,换种方法,把问题给吃透。发现、提出、分析、解决问题和实践能力是作为我们这个专业的基本素质。依赖性很大,刚开始编程序时喜欢套用书上的语句,却对语句的理解不够。于是当程序出现问题时,不知道如何修改,眼前的程序都是一块一块的被拼凑整合起来的,没法知道哪里错了。但是编程是一件很严肃的事情,容不得半点错误。在错误中不断摸索中前行。