很多想入门的朋友可能还在纠结是选择Arduino还是选择单片机来入门。我以一个从业者来聊聊我的观点。
其实Arduino是基于avr单片机开发的平台,而51单片机只是一块芯片。Arduino和51都可以作为入门级学习套件。
Arduino为了尽可能的照顾初学者甚至是电子开发的爱好者,Arduino定制了很多底层的设计,Arduino相比51学习起来肯定会方便和容易,同样的开发一个小产品,51可能要几天。Arduino可能几个小时就搞定了。
用Arduino来开发产品很多库都是现成的,开发起来直接调用就可以了,所有的外设也是现成的,可以直接使用。开发者可以不需要清楚了解硬件原理,不需要配置寄存器,甚至连芯片手册都可以不用看。
Arduino 的理念就是开源,软硬件完全开放,技术上不做任何保留。针对周边I/O设备的Arduino 编程,很多常用的I/O 设备都已经带有库文件或者样例程序,在此基础上进行简单的修改,即可编写出比较复杂的程序,完成功能多样化的作品。
Arduino 由于它的开放性,也就意味着我们可以从Arduino 网上得到大量的共享资源,从而能够加快我们的创作作品的速度及效率。
Arduino最开始确实是为了嵌入式开发的学习而出现的,但发展到今天,Arduino已经更多变成电子爱好者用来开发自己喜爱的小作品,弄一些稀奇古怪的小玩意。
用单片机来开发产品首先需要我们看芯片手册,要知道硬件原理,知道数电模电的知识,知道如何配置寄存器,代码没有现成的库调用要自己从零开始写,还有可能自己需要手工制作电路板。
初学者看到这里可能会产品疑问,既然Arduino这么方便学习Arduino就可以了,Arduino依赖平台不适合大批量生产,单片机更适合做大批量的商用产品,因为它的体积小,成本也更低。要学技术还是选择51比较实在,因为太多现成的东西用多了就变味了。学习底层的东西基础会比较牢固。
我们可以设想一下.两个人去求职时,一个工程师会Arduino,另一个工程师会51单片机,可能会51单片机入职的概率会比较大。因为电子爱好者也会Arduino,单会Arduino就会显得没什么内功,大多数都是调用现成的来使用。老板为了更加稳妥一般都会要51单片机的工程师。