LED点灯实验
- 将数据线一端连接主机 USB 接口,另一端连接好Arduino板
- 面包板正极连接板上的2号数字引脚Pin2,负极花色连接板上的GND,通过程序定义输出引脚2,并实验LED闪灭。
//led正极接2 负极接GND
int ledPin=2;
void setup()
{
pinMode(ledPin,OUTPUT);
}
void loop() //重复执行函数
{
digitalWrite(ledPin,HIGH);
delay(500);
digitalWrite(ledPin,LOW);
delay(500);
}
- 流水灯源代码
- //利用循环语句设计的流水灯 //定义引脚2,3,4,5为输出模式,分别接4个LED灯的正板,LED负极通过面包板接GND
void setup()
{ for(int i=2;i<6;i++)
pinMode(i,OUTPUT); //配置引脚为输出模式
}
void loop()
{
for(int i=2;i<6;i++)
{
digitalWrite(i,HIGH); //点亮
delay(1000); //休眠1000毫秒
digitalWrite(i,LOW); //关闭
}
}
温湿度传感器数据采集实验
float temp;
int tempPin = 0;//接模拟0或A0端
void setup() {
Serial.begin(9600);
}
void loop() {
temp = analogRead(tempPin); // 从模拟A0端采集电压数据存到变量temp
//temp = temp * 0.48828125;// DS18B20 TO-92 温度传感器的参数:电压转换成温度
temp = temp * 0.031728125;//DH11温度传感器:电压转变成湿度的参数
Serial.print("TEMPERATURE = ");
Serial.print(temp); // display temperature value
Serial.print("*C");
Serial.println();
delay(1000); // update sensor reading each one second
}
声控灯的设计实验
- 实材料:声音传感器,面包板+线,LED灯1个, Arduino
- //声控LED开关灯的设计:采用Risym声音传感器模块MK152
//Out输出信号1,0到主板接口2 、VCC GND默认接
//另外LED+接VCC, LED负极接out
//默认无声环境输出1,LED不亮,调节传感器灵敏度达到一说话亮灯的效果
int sensorVoice = 2;
void setup()
{
pinMode(sensorVoice, INPUT);
Serial.begin(9600);
}
void loop()
{
int temp = digitalRead(sensorVoice);
Serial.println(temp);
delay(100);
}
红外避障传感器实验
- 材料清单:红外对管(红外避障模块),面包板+线,Arduino板
- VCC 通过红线外接单片机3.3V-5V电压 GND 黑线外接单片机GND OUT 外接小板数字接口D2输出接口(0 和 1)LED +极接VCC, LED负极接out。 传感器正极接 板上5V,同时连接到LED正极; 传感器负极接板上的GND; 传感器Out 接板上引脚2,输出信号1,0,同时接LED的负极。
- Out默认输出1,LED不亮,有障碍物时输出0,有电势差,灯亮。
通过串口监视器来测和调节传感器的灵敏度
int sensor = 2;
void setup()
{ pinMode(sensor, INPUT);//从传感器的Out引脚输出信号1,0
Serial.begin(9600);
}
void loop()
{
int temp = digitalRead(sensor); //读取传感器的Out引脚输出的信号1,0
Serial.println(temp);//串口显示
delay(1000);
}
超声波测距离实验
- 超声波传感器,面包板+线,Arduino板Nano mini
- Trig 触发控制信号输入,Echo回响信号输出。写程序给Trig发送一个低高低的短时间脉冲,触发测距;pulseIn函数会等待引脚变为HIGH,开始计算时间,再等待变为LOW并停止计时。
- 声速是:340m/1s 换算成 34000cm/ 1000000μs => 34 /1000。因为发送到接收,实际是相同距离走了2回,所以要除以2。
- Vcc 和 Gnd 接 5v 电源和负极。
Trig :接Arduino引脚5 用来发出控制信号,。
Echo:接Arduino引脚4 用来测试返回测距信息
const int TrigPin = 5;
const int EchoPin = 4;
void setup()
{
Serial.begin(9600);
pinMode(TrigPin, OUTPUT);
pinMode(EchoPin, INPUT);
}
void loop()
{
digitalWrite(TrigPin, LOW);
delayMicroseconds(2);
digitalWrite(TrigPin, HIGH);
delayMicroseconds(10);
digitalWrite(TrigPin, LOW); //记时
float distance = pulseIn(EchoPin, HIGH); //pulseIn在引脚变high开始计时,变low停止计时
distance= distance/58.0;
Serial.println(distance);
delay(1000);
}