要求很简单,单片机是否入门只有三点:
1 、独立掌握 Keil+Proteus 两大软件的使用方法并设计出仿真版的交通灯。
2 、独立在面包板上搭接单片机最小电路,并通过下载器将控制一个 LED 闪烁的 HEX 文件下载进去看到效果。
3 、清楚自己单片机学的动力所在,并为自己的学习做一个规划。
但是在写程序的时候你肯定会遇到很多问题,而这时你再去翻书找,这其中你会找你之前学过的编程的书,还有数电模电的书,你会发现原来之前学的知识还是有用的。 遇到不懂再去找以前学过的书本查阅,这才是 “温故而知新,可以为师矣”的大道理啊。 知识必须用于现实生活中,解决实际问题,用单片机设计个简易的家电定时器、红外遥控器什么,这样才能发挥它的作用,好好想想,上了这么多年大学,探索了那么久,犹豫徘徊,天天上课,在课堂上学到了什么?、
是不是为了期末 60 分的考试而忙碌,侥幸靠了 90 分,很高兴啊,在别人面前吹自己专业知识如何如何学习的好, 殊不知,大学考试不像高中考试啊,拿到奖学金又怎么样。 下学期开学回来一想,所学的知识已经忘得一干二净。学到什么了?为什么要推荐学习单片机,因为单片机是工科生学的,集合计算机编程电子技术及多门控制语言为一体的学科,与其说是在学习单片机,不如说是在学习一个大学科。
五、学习单片机是汇编编程还是 C 语言编程
关于用汇编和 C 语言编程的问题。
这个问题困恼很多人,但是我觉得学习汇编语言和 C 语言就像一个人进入社会要学习方言和普通话一样。都要掌握,孰重孰轻自己把握。可能主要是学校教学和部分教材引导, 大一开了 C 语言编程,没等学生知道到底 C 语言有什么实际用途,马上其他的语言一下子过来了。即使开设了专门单片机课程,但是课程的内容与技术文档很相识,程序虽然很多,但完整的不多,所以学完了也不知道,到底为什么要学习编程。
很多同学大一就开设了 C 语言的课, 我也上过,但是那时就是天天几乘几,几加几啊,求个阶乘啊,用 C 语言去解决小学数学问题,每周两次上机,对着书本不停的敲打,完全在练习打字速度。下课了也不知道自己到底掌握了什么,掌握了这个有什么用途。学完了有什么用?
如果在面试的时候,老板问,你学过编程吗,你脑子里马上是什么“ C 语言 ,VC 什么 VB 。很多,什么 C 语言是基础是面向工程的,什么 VC 是高级面向对象的
”,但是老板又问,你能将你所学习的 C 语言应用到实际开发中,比如设计一个定时报警器的 C 语言。这下傻了,老师没教过啊。
单片机编程用 C 语言或汇编语言都可以,但是我建议用 C 语言比较好,模块化管理编程方便,移植性强,适合编写大程序。如果原来有 C 语言的基础那学起来会更好,如果没有,也可以边学单片机边学 C 语言。虽然很多人是从汇编语言开始接触单片机的,但是写小程序汇编语言还是简单的,如果要实现一些算法,那汇编语言就不简单了。虽说 C 语言编译以后代码量明显比汇编长,而且执行效率也没有汇编语言高,但是在以前单片机开发中芯片工艺的限制,及单片机主频的限制,很多单片机内部存储器小的可伶,主频也小得可伶。但是现在不一样了,芯片内部的存储器根不不在乎这点差别。主频也越来越高。
那汇编语言是不是不学了呢?不是的,一定要学习,有两方面首先入门单片机的时候要用汇编语言,它的语法简单。第二如果你要做单片机的程序的高级设计师,那汇编语言是非掌握不可的,很多像高级单片机 ARM 都是汇编语言作为引导代码的,还有就是很多新出品的单片机起先也是先有汇编语言编译器之后才有 C 语言编译器。所以,我觉得对于单片机学习汇编语言入门, C 语言精通,汇编语言再精通。
有句话很有道理“单片机 C 语言高手绝对是汇编语言高手,但是汇编语言高手不一定是 C 语言高手”
最后,对于单片机的学习,入门为先,入门了以后就要去关注市场,关注企业,企业需要什么样的人才,我想有了基础以后在面试之前了解下企业所需要的单片机类型,很快就上手了,毕竟学习是相同的。