Arduino简介
Arduino是一个开源的电子平台,提供灵活且易用的硬件及软件,开发非常简单。它还提供一个简单的Arduino开发环境,使用类似于C/Java的开发语言,可以快速的开发出一个可交互的小玩具。Arduino可以轻松的控制如电机,超声波测距模块,SD卡,蓝牙等,使得你的小玩具更加的有趣。
实验目的:
快速进入Arduino世界,进行一个最简单的实验,了解Arduino的主循环及初始化操作。
实验器材
- 一个可以工作的LED
- 一块Arduino Duemianove板
- Arduino自带的USB线
- Arduino的开发环境
实验内容:
使用Arduino点亮一个LED,并使其按照一定的周期闪烁。LED是一个很简单的元器件,我们仅需要知道它具有单向导通性,可以发光(如果接线正确的话),应该注意的是它的长脚为正极,短脚为负极。
图 二极管LED
Arduino Duemianove开发板与2009年设计并面世,具有14个数字I/O端口,6个模拟输入端口,提供USB接口,可以与PC直接连接(安装好该板子的驱动即可)。当然还有其他的参数,这里不作讨论。如下图所示,最上边的一排即为数字I/O端口。右下角为模拟输入端口。数字端口0和1兼做串口的RX和TX口,可以与PC直接通信。
图 Arduino Duemilanove
在这个实验中,我们使用数字I/O的13号端口作为LED的输入,从图中可以看到,13号口紧挨着GND(地线),很方便将LED的两个脚插入,而不用其他的外接线。事实上,我的这块板子上已经自带了一个LED贴片,就是图中标注为L的那个贴片。所以这个实验里可以看到,外接的LED和板子自带的LED会同步的闪烁。
图 运行结果
如上图所示,将LED的长脚插入13号口,短脚插入GND。如同所有的其他软件一样,我们需要初始化及主入口(如C语言中的main函数)。Arduino提供了两个函数,分别为:
1: void setup()
2: {
3: //setup i/o port here
4: }
setup完成初始化工作,如设置某个端口为输入或者输出等。
1: void loop()
2: {
3: //main loop
4: }
当setup结束后,控制进入loop,然后就不停的在loop中工作了,我们在loop中,点亮LED,等待1秒,然后灭掉LED,再等待1秒,如此循环。
代码如下:
1: /*
2: Blink
3: Turns on an LED on for one second, then off for one second, repeatedly.
4:
5: This example code is in the public domain.
6: */
7:
8: void setup() {
9: // initialize the digital pin as an output.
10: // Pin 13 has an LED connected on most Arduino boards:
11: pinMode(13, OUTPUT);
12: }
13:
14: void loop() {
15: digitalWrite(13, HIGH); // set the LED on
16: delay(1000); // wait for a second
17: digitalWrite(13, LOW); // set the LED off
18: delay(1000); // wait for a second
19: }
20:
好了,第一个简单实验到此结束,随后我将尝试测试超声波测距模块。