Arduino简介

来源:互联网 发布:弱电箱网络模块 编辑:程序博客网 时间:2024/05/22 01:59

arduino

Arduino是一个能够让你的计算机更好地感知和控制外世界的物理计算(physical computing)平台,它基于一个源码开放的微控制器电路板,并提供了相应的集成开发环境来进行软件的开发。

Arduino能够被用来进行交互式对象(interactive object) 的开发,例如从一组开关或者传感器中获得用户输入,或是控制一组灯光、马达或其他物理输出设备。用Arduino开发的项目即能够单独运行,也能够同运行在计算机上的其他软件(如Flash、Processing或Max/MSP)进行通信,从而共同完成相应的任务。

Arduino具有自己的编程语言,它是基于Processing的多媒体编程环境Wiring(另一个非常类似的物理计算平台)的一种实现。

目前已经有相当多的微控器或是基于微控制器的平台被用到了物理计算当中,比如Parallax公司的Basic Stamp,Netmedia公司的BX-24,Phidgets,以及MIT的Handyboard等等。所有这些工具的功能比较接近,共同特点都是为用户封装了一个很容易使用的工具包,从而隐藏了直接操作微控制器的大多数技术细节。Arduino同这系统相比,还有一些额外的优点:

  • 便宜 - Arduino同其它微控制器平台相比价格是非常低的, 最便宜的Arduino模块可以手工进行组装,事先组装好的Arduino模块一般不会超过50美金。
  • 跨平台 - 开发Arduino项目使用的软件能够运行在Windows,Macintosh OSX和Linux操作系统下,但大多数其他微控制器系统则只能运行在Windows下。
  • 简单清晰的编程环境 - Arduino所采用的编程环境对初学者来讲非常容易掌握,但同时又为高级用户保留了足够的弹性。
  • 开放的软件 - Arduino使用的软件是以开放源代码的方式发布的,有经验的程序员能够很好地对它进行扩展。Arduino语言基于的是AVR-C语言,并能够通过C++库的形式进行扩展。对于那些想了解技术细节的人来讲,可以将Arduino编写的程序转换成AVR-C,要是愿意的话也可以在Arduino程序中直接嵌入AVR-C代码。
  • 开放的硬件 - Arduino硬件模块采用的是Atmel公司的ATMEGA8和ATMEGA168微控制器,并计划采用Creative Commons协议进行发布,因此一个有经验的电路设备者完全能够根据自己的需要来制造、扩展或者修改该模块。