单片机学习:从入门到实践,掌握核心技术,创造智能控制实物

其实不是单片机难学,而是不知道怎么入门。请大家记住一句话“单片机不是学出来的,而是玩出来的”。学习单片机是汇编编程还是C语言编程的问题。如果原来有C语言的基础,那学起来会更好,如果没有,也可以边学单片机边学C语言。

单片机学习:从入门到实践,掌握核心技术,创造智能控制实物

学习单片机光看书是不够的,实践也要从实际出发。现在的技术太模块化了,什么都可以模块化,最后技术人员只能用得上。前人留下的知识,基础知识,还是要懂的。毕竟学习单片机的最终目的是开发,就是通过创造智能控制对象来体现自己的价值。

练习有两种方法可以选择,一种方法是买一块51单片机实验板,你不需要太多的功能,对于初学者来说,功能多的那种板子上有很多你一辈子都用不到的东西。有的实验板为了增加功能,降低成本,到处使用贴片元件,双面布线,越复杂,档次越高。好像他们设计的时候,以为学单片机只要按照我的提示下载程序就行了,更有甚者,有的甚至把下载器集成到实验板里。很多初学者学了单片机之后,还是认为单片机不是什么芯片,只是老教科书上经常提到的,现在已经不用的单片机。

我觉得这些模块对于单片机初学者来说已经够用了,剩下的就得自己开发了。流光灯,数码管,键盘,蜂鸣器,串口通信,AD等差不多了,如果能熟练应用这些,可以说已经进入单片机硬件了。剩下的就是自己练习设计电路,积累经验。设计电路的时候,一定要学会PCB板设计软件,毕竟产品批量开发还是需要计算机辅助设计的,手工效率太低了。不过学习过程中还是建议自己焊接一下,焊接之前一定要搞清楚电路连接,网上搜一下就能找到很多电路原理图,但是不一定全都会用到,所以建议准备一个面包板,有了它,焊接电路之前可以先测试一下,如果面包板上测试成功,后面的焊接就成功了,如果失败了就再找一个就行了。只要过了第一关,后面的路就好走了。 万事开头难。

方法二:如果身边有刚接触单片机,动手能力强的人,就让他帮忙做一个简单的单片机最小电路,哪怕是控制一个LED的电路。对他们来说,做一个单片机的最小系统板很容易,但对初学者来说,难度就大得多。只要破掉这层窗户纸,一切都会变得简单。因为只有理解了硬件,才能熟练地使用它。

只有知道了怎么给单片机下载程序,你才会知道为什么要写单片机程序。这个动力从何而来?就来自于你心里有一个好的想法。单片机编程就是跟单片机对话,如果你不知道对方是谁,他有没有在听,你还会有激情去对话吗?当然如果没有这个人,也是一样。在网上多找几张最小电路原理图,焊到面包板上。如果你还不知道这些,建议你买一块测试板,以后单片机学习实验、项目测试的时候都会用到。

有了单片机实验板,就要多多实践,最好有一台自己的电脑,下载几个影片,连接实验板和电脑,安装必要的软件,下载参考程序,修改参考程序。从最简单的红绿灯实验开始,当你发现自己可以控制红绿灯,了解交通的软硬设计时,说明你已经入门了,你会发现单片机是多么的迷人,这不是学习知识,而是提升自己的价值,用途如此广泛的交通设计,没问题。你还觉得自己什么都没学到,还觉得自己什么都不懂吗?计算机编程、电子技术等专业知识都是要用到的,当你写的程序按照你的意愿实现的时候,你比做其他任何事情都要开心,那种学习的成就感和充实感是很难得的。然后让数码管亮起来,显示你需要的数字。经过这两部分,你就不能自拔了,你已经开始考虑这辈子要从事哪一种职业了。

就这样学吧。你在写程序的时候肯定会遇到很多问题,这时候你可以去找书看。其中有你以前学过的编程书,也有数字电子和模拟电子方面的书。你会发现以前学过的知识还是有用的。

遇到不懂的地方,就回头去翻以前学过的书本查,这就是“温故而知新,方能为人师”的道理。知识要运用到实际生活中去,解决实际问题。用单片机设计一个简单的家电定时器、红外遥控器等,才能发挥它的作用。仔细想想,大学这么多年,摸索了这么久,犹豫徘徊,天天上课,你在课堂上学到什么了?为了期末考试60分忙活吗?侥幸考了90分,高兴极了,在别人面前吹嘘自己专业知识学得有多好。殊不知大学考试不像高中考试,拿了奖学金又有什么关系?可是等下学期回来上学,想想就把学过的知识全忘了,你到底学到了什么?

为什么我们推荐学习单片机呢?因为单片机是工科生学的,是一门集计算机编程、电子技术、多种控制语言于一体的学科,更准确的说法是学单片机是学一门大学科,而不是学单片机。

学单片机编程到底学汇编语言还是学C语言,是困扰很多人的问题,可能主要是学校的教学方式和一些教材的教育导向造成的,大一就介绍C语言编程,但还没等学生知道C语言有什么实际用途,就马上介绍其他语言。即使上专门的单片机课程,课程内容也很像技术文档,说明很多,但完整的不多,学完之后还是不知道为什么要学编程。

很多同学大一都会选C语言课,我也选过,但那时候只会乘加几个,算阶乘,用C语言解一下小学数学题,每周上两次电脑,不停地在书本上打字。下课后,根本不知道自己掌握了什么,掌握了有什么用,学了有什么用?如果面试的时候,老板问,你学过编程吗,你脑子里立刻冒出的是“C语言,VC,VB,很多,什么C语言是基础的、面向工程的,什么VC是高级的面向对象”,可老板又问,能不能把学过的C语言运用到实践中去,比如用C语言设计一个定时闹钟。这下我傻眼了,学校里根本没学过。

单片机编程可以用C语言或者汇编语言,不过我推荐用C语言,编程简单,模块化管理,移植性强,适合写大型程序。如果已经有C语言基础,学起来会比较容易。如果没有基础,也可以边学单片机边学C。

虽然很多人开始学单片机都是用汇编语言,但是用汇编语言写一些小程序还是简单的,如果要实现一些算法,那汇编语言就不简单了。虽然C语言编译后的代码量明显比汇编语言长,执行效率也没有汇编语言高,这是因为在以前,由于芯片工艺和单片机主频的限制,很多单片机的内部存储器小得可怜,主频也小得可怜。但是现在不同了,芯片的内部存储器根本不在意这点差异。

那么我们是不是应该停止学习汇编语言呢?不,我们必须要学。一方面,刚开始学习单片机的时候,应该学习汇编语言,因为汇编语言语法简单。另一方面,如果想成为高级单片机程序设计人员,必须掌握汇编语言。很多高级单片机,比如ARM,都是以汇编语言作为引导代码的。而且,很多新发布的单片机都是先有汇编语言编译器,然后才有C语言编译器。

所以对于单片机的学习,应该先从汇编语言入手,掌握C语言,再掌握汇编语言。最后,对于单片机的学习,入门是第一步,入门之后要注意市场,要注意企业,企业需要什么样的人才。我觉得有了基本的了解之后,在面试之前,了解一下企业需要的单片机类型,就会很快入门,毕竟学习也是一样的。

祝那些还在犹豫或者之前接触过单片机的初学者能够早日入门。

单片机学习:从入门到实践,掌握核心技术,创造智能控制实物

单片机

了解树莓:山莓的形态特征与生长习性

2024-5-29 4:02:55

单片机

农村山上的野果树莓,不仅是美味水果,还是中药材覆盆子

2024-5-29 5:03:01

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索