Arduino开发之GP2Y0A21 Distance Sensor
来源:互联网 发布:一加5 知乎 编辑:程序博客网 时间:2024/06/03 08:00
环境搭建:
1. Arduino UNO R3开发板,
2. Arduino IDE。
我这里使用的是1.8.3。可以在https://www.arduino.cc/en/Main/Software下载并安装。
安装好之后,桌面会有如下图标。
示例开发:
1.连接设备。
本例中我们以GP2Y0A21 Distance Sensor并结合DFR0021-R为例,基于Arduino Uno R3和Arduino IDE开发。
DFR0021-R的引脚和Arduino Uno开发板的连接方式如下,
DFR0021-R
GP2Y0A21
Arduino Uno R3
VCC
VCC
3.3V
GND
GND
GND
信号引脚
信号引脚
DFR0021接数字引脚8,GP2Y0A21
接模拟引脚A0
2. 编码。
连接好之后,用数据线连接Arduino开发板和电脑。同时打开Arduino IDE。输入下述代码。
#define inPin A0
#define ledPin 8
#define IR_RANGE 250
void setup ()
{
Serial.begin (9600);
pinMode(ledPin, OUTPUT); // declare LED as output
pinMode(inPin, INPUT); // declare distance sensor as input
}
void loop ()
{
Serial.print("Reading the distance value...\n");
uint16_t value = analogRead (inPin);
Serial.print(value, DEC);
Serial.println(" \n");
uint16_t range = read_gp2y0a21 (value);
Serial.print("The distance value range is ...\n");
Serial.print(range);
Serial.println(" mm \n");
if (range > IR_RANGE) // check if the range is larger than defined range
{
digitalWrite(ledPin, HIGH); // turn LED ON
Serial.print("LED is On...\n");
}
else
{
digitalWrite(ledPin, LOW); // turn LED OFF
Serial.print("LED is Off...\n");
}
Serial.println ();
delay (1000);
}
//return distance (mm)
uint16_t read_gp2y0a21 (uint16_t value)
{
if (value < 20)
value = 20;
return ((67870.0 / (value - 3.0)) - 40.0);
}
然后保存文件。
选择Arduino Uno开发板。
编译上传大到开发板。
3.运行。
选择COM口信息,
然后选择端口监视工具,查看程序运行信息。
串口监视信息,
备注:上面的数据就是当前Distance Sensor的值和Red LED 的当前状态(ON表示开,OFF表示关)。此例中,当测到的值大于2.5厘米时,LED灯就会亮。
整体运行界面:
实际效果图:
阅读全文
0 0
- Arduino开发之GP2Y0A21 Distance Sensor
- Arduino开发之Light Sensor
- Arduino开发之Infrared Motion Sensor
- Arduino开发之Analog Sound Sensor
- Arduino开发之Analog Linear Temperature Sensor
- Arduino implement pressure sensor
- 37 sensor kit. Arduino
- Arduino开发之Blink LED
- Arduino: Ultrasonic Sensor & Motor Car
- PIR Motion Sensor with Arduino
- Android开发教程之感应检测Sensor
- 高通平台手机开发之Sensor
- 高通平台手机开发之Sensor
- Arduino开发之Digital Push Button(Red)
- ROS中使用arduino连接ultrasonic sensor
- Android Light Sensor与Temperature Sensor开发
- android sensor开发说明
- Android之Sensor 简介
- ViewPager自动轮播图
- NGUI下拉列表PopList
- Spring资源抽象接口Resource
- a
- 美团云上运行tensorflow问题记录
- Arduino开发之GP2Y0A21 Distance Sensor
- 【系统移植】uboot详细分析
- Java中的final关键字详解
- Tensorflow中padding的两种类型SAME和VALID
- LeetCode | 742. Closest Leaf in a Binary Tree12_16
- js代码-post
- 【2017年浙江中医药大学大学生程序设计竞赛】B一生之敌 【二分+精度】
- TunesKit Audible AA AAX Converter(有声读物转换工具)官方注册版V1.2.10.21下载 | TunesKit Audible Converter
- 机器学习算法篇--卷积神经网络基础(Convolutional Neural Network)