[原创]Arduino简单实验
返回上一层
诀窍:想要学好Arduino的话,需要多动手、勤练习。
在这篇里,我们要用面包板、LED、按钮等和Arduino Uno板子来做几个简单的小实验。
希望,你看完之后,有一种好简单的感觉。
实验一:再次点亮LED
实验器件:
Arduino Uno板子 一块
LED灯 一个

这个LED在5V内是不会烧的,别的我就不知道了

请注意:LED的内阻很小,必须使用220欧姆电阻限制电路中的电流,否则直接连接电路,瞬间就会烧毁LED
由于我的大部分电阻(手上有几种不全)、万用表、其他模块等在家里,没有在身边,所以我就尽量不用了。你们有的话一定要用啊!

小提示:LED有一只脚要长一点,这个脚是正极,当然是插入12口的位置(在程序里,我设置的ledpin),当然,你也可以改成别的。如果你不知道的话,多试几次也会明白的。很早以前,我就是这样试出来的,现在也忘不了当时的情景。
以前,我没有用欧姆定率计算,我的LED不知道烧了多少个。(在这里,我要悄悄地告诉你,用万用表测量很方便的,我又买来了一个万用表。玩硬件不买东西怎么能行,在后面高级的教程里,我们还要自己用电烙铁来焊一些模块。)
代码:

int ledpin = 12; //定义数字接口12
void setup()
{
Serial.begin(9600);//设置波特率为9600,这里要跟软件设置相一致。当接入特定设备(如:蓝牙)时,我们也要跟其他设备的波特率达到一致。
pinMode(ledpin, OUTPUT); //设置数字12 口为输出接口,Arduino 上我们用到的I/O 口都要进行类似这样的定义。
}
void loop()
{
digitalWrite(ledpin, HIGH); //点亮数字12 口LED。
delay(1000);
digitalWrite(ledpin, LOW); //熄灭数字12 口LED
delay(1000);
}

实验二:用按钮来点亮LED
实验器件:
Arduino Uno板子 一块
杜邦线代替(按钮) 一根

在这里我用杜邦线来代替按钮,其实是一样的。我这样做的目的是要简单一点。

const int buttonPin = 2; // 2口作为按钮的接口
const int ledPin = 13; // 13口,LED
int buttonState = 0; // 按钮状态标志用的变量,初始化为0
void setup() {
pinMode(ledPin, OUTPUT);//LED为输出
pinMode(buttonPin, INPUT);//按钮是输入
}
void loop()
{
buttonState = digitalRead(buttonPin);//读取按钮的状态
if (buttonState == HIGH)
{
digitalWrite(ledPin, HIGH);//开灯
}
else
{
digitalWrite(ledPin, LOW);//关灯
}
}


实验三:光控LED
实验器件:
Arduino Uno板子 一块
杜邦线 三根
面包板 一块
光敏电阻 一个
电阻1k 一个




int a =300; //此处需是环境基础亮度变量
int LED=13;//定义数字接口13
void setup ()
{
Serial.begin(9600);
pinMode(LED,OUTPUT);
}
void loop()
{
int n = analogRead(A1);//读取模拟口A0数值
delay(1000);//方便我看
Serial.println(n);//串口显示
if (n>= a )
{
digitalWrite(LED,HIGH);//亮灯
}
else
{
digitalWrite(LED,LOW);
}
}

实验四:舵机控制
实验器件:
Arduino Uno板子 一块
杜邦线 三根
舵机 一个


舵机左边的棕色线是电源负极,接GND
舵机中间的红色线是电源正极,电压是5V
舵机右边的黄色线是信号线,接PWM

#include <Servo.h>
Servo myservo; // 定义舵机对象,最多八个
int pos = 0; // 定义舵机转动位置
void setup()
{
myservo.attach(9); // 设置舵机控制针脚
}
void loop()
{
// 0到180旋转舵机,每次延时15毫秒
for (pos = 0; pos < 180; pos += 1)
{
myservo.write(pos);
delay(15);
}
// 180到0旋转舵机,每次延时15毫秒
for (pos = 180; pos >= 1; pos -= 1)
{
myservo.write(pos);
delay(15);
}
}

实验五:SOS求救
实验器件:
Arduino Uno板子 一块
SOS的摩尔斯代码是:...---... 就是“三短三长三短”的组合。
只要符合这种规律,别人一般会知道,这是需要求救的信号。
最简单的方法,就是用手电筒来实现,在这里我就不讲了。
现在我们把这个功能写到Arduino里,为了方便演示,我就用板子上自带的LED。
注释我就不写了,应该看得懂的。

程序源码:
int nLED =13;
void setup()
{
pinMode(nLED,OUTPUT);
}
void Flash(int n)
{
digitalWrite(nLED,HIGH);
delay(n);
digitalWrite(nLED,LOW);
delay(n);
}
void Sos()
{
Flash(200);Flash(200);Flash(200); //S ...
delay(300);
Flash(600);Flash(600);Flash(600); //O━━━
delay(300);
Flash(200);Flash(200);Flash(200); //S ...
delay(2000);//等一会
}
void loop()
{
Sos();
}
参考资料:
Arduino Uno介绍 http://kb.open.eefocus.com/index.php?title=Arduino_Uno
--------------------------------------本篇完-----------------------------------------
