Arduino介绍

栏目: 软件资讯 · 发布时间: 7年前

内容简介:Arduino介绍

Arduino 并不仅仅是一块小小的开发板,而是一个基于灵活、易于使用的硬件和软件的开源电子开发平台,它即包含了硬件——各个型号的开发板、扩展板,也提供了开发所需的软件——开发环境和许许多多开发者创造的代码。这是特意为艺术家、设计师、业余爱好者和感兴趣的人创建的交互式对象和环境。由于提供了各种传感器的函数包,所以就算没有电子信息基础的爱好者,也可以使用Arduino快速开发出嵌入式作品。

官网连接: http://www.arduino.org/

Arduino介绍

由来

Arduino的核心开发团队成员包括:马西莫·班齐(Massimo Banzi)、大卫·奎提耶斯(David Cuartielles)、汤姆·伊果(Tom Igor)、赞布罗塔·马提诺(Gianluca Martino)、大卫·梅利斯(David Mellis)和尼可拉斯·兰比提(Nicholas Zambetti)。

据说马西莫·班齐之前是意大利Ivrea一家高科技设计学校的老师。他的学生们经常抱怨找不到便宜好用的微控制器。2005年冬天,马西莫·班齐跟大卫·奎提耶斯讨论了这个问题。大卫·奎提耶斯是一个西班牙籍芯片工程师,当时在这所学校做访问学者。两人决定设计自己的电路板,并引入了马西莫·班齐的学生大卫·梅利斯为电路板设计编程语言。两天以后,大卫·梅利斯就写出了程式码。又过了三天,电路板就完工了。这块电路板被命名为 Arduino 。几乎任何人,即使不懂电脑编程,也能用Arduino做出很酷的东西,比如对传感器作出回应,闪烁灯光,还能控制马达。随后马西莫·班齐、大卫·奎提耶斯和大卫·梅利斯把设计图放到了网上。保持设计的 开放源码 理念,因为版权法可以监管开源软件,却很难用在硬件上,他们决定采用共享创意许可。共享创意是为保护开放版权行为而出现的类似GPL的一种许可(license)。在共享创意许可下,任何人都被允许生产 印刷电路板 的复制品,还能重新设计,甚至销售原设计的复制品。你不需要付版税,甚至不用取得Arduino团队的许可。然而,如果你重新发布了引用设计,你必须说明原始Arduino团队的贡献。如果你调整或改动了电路板,你的最新设计必须使用相同或类似的共享创意许可,以保证新版本的Arduino电路板也会一样的自由和开放。唯一被保留的只有Arduino这个名字。它被注册成了商标。如果有人想用这个名字卖电路板,那他们可能必须付一点商标费用给Arduino的核心开发团队成员。

Arduino介绍
arduino创始团队,资料来源:https://blog.arduino.cc/2008/03/26/arduino-summit/

硬件版本

Arduino硬件是一款开放源代码的单片机,采用了Atmel AVR单片机,但最近也有使用STM32芯片Intel® Curie芯片的Arduino产品。Arduino具有数字/模拟I/O(输入输出)端口,使用类似 C语言 作为开发语言。

原始的Arduino硬件是从一间意大利公司Smart Projects制造。有些Arduino硬件则是被官方授权由美国公司 SparkFun Electronics Adafruit Industries 设计。

目前,Arduino有包括Arduino Uno、Arduino Leonardo、Arduino Mega、Arduino Nano、Arduino Yun在内的多种开发板,可以根据自己需要开发项目的具体情况选择合适的开发板;Arduino 各开发板之间所使用处理器、ROM大小、I/O口数量之间的对比可以查看Arduino 官方给出的 对照表 .

Arduino介绍
Arduino产品

特色

  • 基于知识共享开放源代码的电路图设计。
  • 免费下载,也可依需求自己修改,但需遵照姓名标示。
  • 依相同方式分享,如果修改版本并且发布时,需采用与Arduino相同或类似的授权条款。
  • Arduino可使用ICSP线上烧入器,将Bootloader烧入新的IC芯片。
  • 可依据Arduino官方网站,取得硬件的设计档,加以调整电路板及元件,以符合自己实际设计的需求。
  • 可简单地与传感器、各式各样的电子元件连接,如红外线、超音波、热敏电阻、光敏电阻、伺服马达等。
  • 使用低价格的微处理控制器(Atmel AVR)(ATMEGA 8,168,328等)。
  • 具有USB接口,不需外接电源。另外有提供直流(DC)电源输入。

开发软件

Arduino 有自己的开发IDE:Arduino Software IDE,可以在Windows、Mac os、 Linux 上开发,使用的语言为与C语言和C++语言类似的编程语言。使用Arduino Software IDE编写的程序成为sketch。sketch包含两个函数,它们在编译后合成为一个main函数:

  • setup() :在程式执行开始时会执行一次,用于初始化设定。
  • loop() :直到Arduino硬件关闭前一直会重复执行的函数。

Arduino介绍

Arduino介绍

Arduino Uno上板载LED灯闪烁的范例程序Blink如下。

// 在setup()里面的代码在接通电源或者重启时会执行一次
void setup() {
  // 初始化LED数字引脚为输出状态
  pinMode(LED_BUILTIN, OUTPUT);
}

// loop()里面的代码会不断执行。
void loop() {
  digitalWrite(LED_BUILTIN, HIGH);   // 打开LED (HIGH代表高电平)
  delay(1000);                       // 等待1S
  digitalWrite(LED_BUILTIN, LOW);    // 通过将LED引脚的电平拉低从而关闭LED
  delay(1000);                       // 等待1S
}

以上所述就是小编给大家介绍的《Arduino介绍》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

TensorFlow实战

TensorFlow实战

黄文坚、唐源 / 电子工业出版社 / 2017-2-1 / 79

Google近日发布了TensorFlow 1.0候选版,这个稳定版将是深度学习框架发展中的里程碑的一步。自TensorFlow于2015年底正式开源,距今已有一年多,这期间TensorFlow不断给人以惊喜,推出了分布式版本,服务框架TensorFlow Serving,可视化工具TensorFlow,上层封装TF.Learn,其他语言(Go、Java、Rust、Haskell)的绑定、Wind......一起来看看 《TensorFlow实战》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

在线进制转换器
在线进制转换器

各进制数互转换器

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具