对于一个单片机初学者而言 到底应该先学哪种语言?单片机初学解惑
时间:2017-10-11 10:57 来源:未知 作者:admin 点击:次
对于一个单片机的初学者而言,到底应该先学哪种语言?详细读完了这篇文章聪明的你会做出选择。首先我们先对这两种语言做一下比较。 汇编语言的优点; 1,有助于掌握单片机的基本原理 2,每条指令的执行周期固定 3,代码生成率高 4,汇编语言编写程序稳定 5,对硬件直接操作 汇编语言的缺点; 1,低级语言,可移植性差 2,运算困难 3,编程效率低(开发周期长),出错难排查 C语言优点 1,高级语言 2,适合结构话的程序设计 3,可移植性强 4,可团队合作开发 5,编程效率高 6,适合算法运算 C语言缺点 1,代码生成率低 2,稳定性差 看了两种语言的优点与缺点,对两种语言初步有了一个认识。打个比喻来说汇编语言就像你想使用一台电脑,但是你必须要懂得计算机原理才可以用。C语言就好比你不知道计算机的原理,但是你可以使用。一般大多数人都使用C语言编程,可是想成为单片机的高手汇编语言还是很有必要懂的。 单片机初学解惑 一.到底以什么单片机入门 在群里不断有人问,该学51还是AVR还是PIC?同一系列的用什么配置的好?我特别强调的是,大家搞清楚现在我们考虑的是入门学什么单片机?不是说你以后就只用这个单片机。入门我们选资料最全,最有代表性的,最有可能掌握的,非51莫属。我在群里这样说过,在前面博客也提过,有人对此有怀疑。 对于不同系列的单片机有什么不同?(51和AVR属于不同一系列) 咱就具体到点亮一个发光管。点亮一个发光管的方法是:给一个IO口输出一个使发光管点亮的电平,不管什么单片机都是这个思想;不同的就是我们用不同的软件生成程序,我们加载不一样的头文件,配置的寄存器名字不一样而已,依然用C编程。就像我们学会了用电脑听音乐,你会在乎用什么电脑,用什么操作系统,用什么播放软件吗?只要你学会了听音乐的步骤你就用什么都能听,只是熟悉一下环境而已。 我们现在要学的就是编程思想,有了思想你什么单片机都能学会。 对于同一个系列的单片机有什么不同? 同一系列的单片机不一样的地方,无非是支持的晶振频率在变高,ROM,RAM容量在变大,读写速度在变快,高度集成化而已。就像电脑一样,不管你电脑怎么变,它无非是速度在提高,硬盘容量在变大,内存在变高,读写速度在提高,外围接口更丰富或高度集成,你操作起来不还是一样的。不会说你换个电脑你就不会用了,只是不同的需求,用不同的配置,仅此而已。 一句话:相信我,就听我的,入门就用51。 二.该不该买开发板 有人认为该买,理由是很快能上手,下载线什么的都有;有人认为不该买,省了不少钱,自己还可以动手,增加实践能力。这两个观点我觉得都对,最主要的是看你自己的情况。 想买板,说没钱的,我觉得是扯蛋。 一点硬件基础都没有的,我建议你买开发板,群里面有个兄弟自己焊,一个下载线一个星期都没解决,这也太打击积极性了。更别说后面得编程,到时你出问题了,你真不知道是硬件有问题还是软件不对,我估计你就做不下去了,初学者一定要保证自己的硬件没问题,学起来才会快;软件学的差不多了,你再搞硬件。初学时成就感非常重要,别因为个硬件把自己搞蒙了。 本来是想“搞”硬件的,到最后发现你被硬件“搞”。 一句话:相信我,就听我的,你需要属于你的开发板。 三.用什么教科书 为什么要提出这个问题呢?前两天群里面有人说到这个问题,我发现初学者的心态很有意思,像无头苍蝇似的,一听到什么好,就想马上看看,好像别人有了,自己没有好像吃了大亏似的,捡了芝麻,丢了西瓜的事就别再干了。 我发现大家现在都倾向这两本书: “手把手教你学单片机” 北京航空航天大学出版社出版,作者周兴华。 “新概念51单片机C语言教程”电子工业出版社出版,作者郭天祥。 我的建议是上面的你有一本就可以了,两本都很好,没必要两本都看,外加一本: “C语言程序设计” 清华大学出版社出版,作者谭浩强。 强烈建议买书,不要只看PDF文档。 (责任编辑:admin) |