极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

楼主: eagler8

一块扩展板完成Arduino的10类37项实验(代码+图形+仿真)

[复制链接]
 楼主| 发表于 2019-6-29 08:44:07 | 显示全部楼层
第一次做超声波模块的实验,也不太理解,实验的结果是这样的,没有探测输出

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-6-29 08:51:11 | 显示全部楼层
第10类 扩展实验
19 模拟超声波测距传感器(探测类数字D7\D8接口)


后来接到了两个数字端口,读取的是超声波模块输出的模拟量


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-6-29 09:01:44 | 显示全部楼层
  1. /*
  2. Eagler8系列实验程序列表
  3. 第10类 扩展实验
  4. 19 模拟超声波测距传感器(探测类数字D7\D8接口)
  5. 项目:利用SR04超声波传感器进行测距,并用串口显示测出的距离值
  6. 要点:初始化串口通信及连接SR04的引脚
  7.      检测引脚上输入的脉冲宽度,需要先设置为输入状态
  8.      产生一个10us的高脉冲去触发TrigPin
  9.      检测脉冲宽度,并计算出距离
  10. */

  11. const int TrigPin = 7;
  12. const int EchoPin = 8;
  13. float distance;

  14. void setup()
  15. {   
  16.         Serial.begin(9600);
  17.         pinMode(TrigPin, OUTPUT);
  18.         pinMode(EchoPin, INPUT);
  19.         Serial.println("Ultrasonic sensor:");
  20. }

  21. void loop()
  22. {
  23.         digitalWrite(TrigPin, LOW);
  24.         delayMicroseconds(2);
  25.         digitalWrite(TrigPin, HIGH);
  26.         delayMicroseconds(10);
  27.         digitalWrite(TrigPin, LOW);

  28.         distance = pulseIn(EchoPin, HIGH) / 58.00;
  29.         Serial.print(distance);
  30.         Serial.print("cm");
  31.         Serial.println();
  32.         delay(1000);
  33. }
复制代码
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-6-29 09:27:07 | 显示全部楼层

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-6-29 10:04:30 | 显示全部楼层

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-6-29 10:13:52 | 显示全部楼层
串口显示距离,当探测距离小于50cm时,D5端有源蜂鸣器响,D12端红灯亮,串口打印 "你好! 欢迎来参观!”

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-6-29 11:35:19 | 显示全部楼层

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-6-29 11:38:27 | 显示全部楼层

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-7-4 07:47:56 | 显示全部楼层
Eagler8系列实验程序列表
第10类 扩展实验
20、总线DS18B20温度传感器(数值类,接扩展板数字D7接口)
项目:利用DS18B20传感器进行监测,并用串口显示测出的数值
要点:初始化必需加载二个库(IDE-工具-管理库-搜索-下载)
OneWire.h
DallasTemperature.h

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-7-4 07:54:15 | 显示全部楼层
  1. /*
  2. Eagler8系列实验程序列表
  3. 第10类 扩展实验
  4. 20、总线DS18B20温度传感器(数值类,接扩展板数字D7接口)
  5. 项目:利用DS18B20传感器进行监测,并用串口显示测出的数值
  6. 要点:初始化必需加载二个库(IDE-工具-管理库-搜索-下载)
  7. OneWire.h
  8. DallasTemperature.h
  9. */

  10. #include <OneWire.h>
  11. #include <DallasTemperature.h>

  12. #define ONE_WIRE_BUS 7
  13. OneWire oneWire(ONE_WIRE_BUS);
  14. DallasTemperature sensors(&oneWire);

  15. void setup(void)
  16. {
  17.   Serial.begin(9600);
  18.   Serial.println("Dallas Temperature IC Control Library Demo");

  19.   sensors.begin();
  20. }

  21. void loop(void)
  22. {
  23.   Serial.print(" Requesting temperatures...");
  24.   sensors.requestTemperatures();
  25.   Serial.println("DONE");

  26.   Serial.print("Temperature for Device 1 is: ");
  27.   Serial.print(sensors.getTempCByIndex(0));  
  28.   
  29.   delay(500);
  30. }
复制代码
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-7-4 07:56:47 | 显示全部楼层

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-7-4 07:58:51 | 显示全部楼层

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-7-4 08:29:10 | 显示全部楼层

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-7-4 08:35:38 | 显示全部楼层
用手触摸DS18B20 温度传感器,则温度上升

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-7-4 09:09:34 | 显示全部楼层
只用一分钟就搞定的图形编程(比较适合像我这样的新人),现在气温是31C,我设置31.5C为声光报警的阙值,0.5C手摸一下DS18B20就过了,在设定的阙值之上会一直报警,这个简单的温控开关还是蛮精准的。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 需要先绑定手机号

Archiver|联系我们|极客工坊

GMT+8, 2024-3-28 20:47 , Processed in 0.052183 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表