I code it

Code and Life

Arduino的第一个实验

Arduino简介

Arduino是一个开源的电子平台,提供灵活且易用的硬件及软件,开发非常简单。它还提供一个简单的Arduino开发环境,使用类似于C/Java的开发语言,可以快速的开发出一个可交互的小玩具。Arduino可以轻松的控制如电机,超声波测距模块,SD卡,蓝牙等,使得你的小玩具更加的有趣。

实验目的:

快速进入Arduino世界,进行一个最简单的实验,了解Arduino的主循环及初始化操作。

实验器材

  1. 一个可以工作的LED
  2. 一块Arduino Duemianove板
  3. Arduino自带的USB线
  4. 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:  

好了,第一个简单实验到此结束,随后我将尝试测试超声波测距模块。

Comments