单片机小白学步(0) 序

我是在上大学时开始接触单片机的,当时走了很多弯路,花了很多时间,才终于比较全面的理解和掌握了单片机。回想起来,从对很多东西毫无概念,到有所认识,直到最终能理解并完全掌握,确实经历了很多。也正是因为这样一些经历,我比较理解初学者的迷茫,后来帮过很多初学者,带动他们去学习单片机等电子设计知识。和初学者的交流中,一方面,我巩固了基础知识,加深了对一些东西的理解,另一方面,我了解了初学者的各种疑惑,遇到的各种问题,以及不知道如何学习的尴尬境地。很多想学习单片机的人,或许仅仅因为第一步操作就花了很长时间,却没能成功(程序不能下载进单片机),于是放弃了学习,这实在太可惜了。

而现在,却很少能有一些书籍或教程可以很好的指导初学者学习。市面上很多书籍教程,有的是站在已经深入了解单片机的角度,开篇就去讲解单片机的内部结构,寄存器,汇编指令等等,而初学者往往很难明白这些晦涩难懂的专业词汇,更不用说学习单片机了。另外一些资料,则是完全从动手实践的角度去讲,却忽视了理论方面的介绍,很多东西你只能按照别人说的去操作,却完全不知道为什么,更谈不上去理解,而如果遇到了问题,更不知道如何去解决。

根据我自己的学习经验,以及和很多学习者交流得到的经验,希望通过这个系列的博文,从比较常见、比较简单的51单片机说起,给初学者进行较为详细的介绍。包括对初学者可能遇到的各种问题,给出一些较为详细的解决方法。并在后面逐步推广到其他单片机。同时,提供一些学习思想、学习方法的介绍。

希望能让读者以学习51单片机为契机,真正理解和掌握使用任意一款单片机乃至其他处理器,去解决实际问题的思想。也希望更多志同道合的人能在此找到自己想要的东西。

内容安排

由于单片机涉及的东西比较多,很多知识之间还有一定的相互依赖关系,为了使整个结构尽可能合理,开始编写前,对内容先后顺序进行了多次调整。目前计划整个系列文章大致分为四部分:单片机的学习过程,学习思想和方法,单片机原理,扩展介绍。单片机的学习过程是整个内容的核心,从最初对单片机的基本认识,一直到整个单片机系统的设计。

有些知识会相互依赖,比如一开始入门会讲给单片机烧写程序,只简要介绍下单片机的内部构造和一些基本概念,如果想理解的更透彻,则需要参考后面单片机原理的介绍;而原理中有些知识,又得在学习完单片机编程之后才能更好的理解。

另外,一些知识只做简单介绍,而不做深入探究,如果读者很感兴趣,可以去网上找一些相关资料或相关学科的书籍进一步了解。

关于更新

原本在大二时,就有计划写这一系列博客,但是因为各种原因,包括自身水平不足,很多知识还没有掌握,另外一直没有很充足的时间,所以一直推迟了下来。现在一转眼就快毕业了,感觉不能再拖了,以后工作了恐怕更没时间了。由于本人目前还是在读学生,学校也还有一些事(尤其是最近还得找工作很头疼),所以很难保证定期更新。计划是在毕业前,也就是大约在明年六月份之前,完成整个系列博文,也欢迎大家监督我的进度。

阅读前应具备的条件和知识

首先在条件方面,首先要有一台的计算机,配置没有什么特殊要求,装有Windows系统;然后最好有从网上或电子市场购买电子器件的条件(如果没有这个条件,就只能通过软件仿真的形式去学习,不是很推荐这种方式)。

在知识方面,本系列博文我会尽力写的简单易懂,对基本知识的要求并不高。

基本的数学计算基础(初中水平即可),简单的英文基础(初中及以上英文水平,会查字典),简单的电路基础(初中物理电学水平),计算机基本操作技能,一定的C语言基础,动手搭建简单电路的能力(尤其是焊接能力)。

如果你对其中的一些并不了解,或者不知道自己掌握的东西是否够用,没关系,你仍然可以一边阅读,一边在看不太明白的时候,通过网络、图书馆等去学习你所需要的知识。

其他

由于本人水平有限,很多东西可能不是十分严谨,也难免会有一些纰漏和错误之处,恳请大家批评指正(在评论中直接回复即可),谢谢!

2017.4.15最新补充

由于种种原因,《单片机小白学步》系列教程最终还是没能坚持写完。本人现在已经工作了,目前做的Android开发,工作比较忙,单片机相关的学习也已经很久没接触了。有兴趣学习本系列教程的,可以看我个人博客已经写完的20多篇,感谢支持。

《单片机入门指南系列》可点此阅读:

http://www.paincker.com/category/hacker/mcu-primer