arduino和单片机的区别是什么
1.Arduino用的是AVR MCU,内部结构和51 MCU不一样(寄存器数量和名称不一样),写软件的编程工具也不一样。
2.Arduino编程将一些输入输出方法编译成子程序(库函数),使得应用更加方便。
3.Arduino在软件开发中更多的是考虑功能的实现,而MCU的开发也需要考虑相应的外围电路和底层软件。
4.用Arduino做项目,几乎不需要考虑硬件部分的设计。可以选择Arduino的控制板、扩展板等。根据需要组成自己需要的硬件系统。但是单片机的开发必须设计硬件,制作PCB。
5.学习Arduino单片机,不需要知道其内部硬件结构和寄存器设置,只需要知道其端口功能即可;可以不懂硬件知识,只要简单的C语言,就可以用Arduino单片机写程序。使用MCU时,需要了解MCU内部硬件结构和寄存器设置,使用汇编语言或C语言编写底层硬件功能。
6.Arduino的理念是开源,软硬件完全开放,没有技术上的保留。对于外围I/O设备的Arduino编程,很多常用的I/O设备都已经有了库文件或者样本程序。在此基础上,可以进行简单的修改,编写更复杂的程序,完成功能多样化的作品。单片机的软件开发需要软件工程师编写从底层到应用层的程序。没有那么多现成的库函数可以用。
7.由于Arduino是开源的,这意味着从Arduino相关的网站、博客和论坛中获得大量的共享资源。借助共享信息,通过资源整合,可以加快创作作品的速度和效率。相比其他开发板,Arduino及其周边产品价格相对低廉,质量更胜一筹,学习或创作成本较低。重要的一点是,不需要编程设备,直接用USB线就可以烧代码。