Arduino笔记实验(初级阶段)—火焰传感器+有源蜂鸣器实验

Arduino笔记实验(初级阶段)—火焰传感器+有源蜂鸣器实验


文章目录

  • Arduino笔记实验(初级阶段)—火焰传感器+有源蜂鸣器实验
  • 前言
  • 一、电路图
  • 二、火焰传感器(4引脚)-有源蜂鸣器
    • 代码
    • 实验效果展示
  • 三、火焰传感器
    • 火焰传感器模块示意图
    • 火焰传感器模块电路图
  • 实验总结


前言

自学笔记,没有历史知识铺垫(省略百度部分),博主基于C++代码编程,函数可以参考官网,或者下载Arduino IDE(工具),查看菜单:帮助->参考,系列性的记录核心的实用笔记,本章主要记录Arduino 火焰传感器+有源蜂鸣器实验


IDE工具:Arduino IDE

组件:

  1. Arduino UNO R3 *1
  2. 面包版 *1
  3. 杜邦线若干
  4. 火焰传感器(可准备2/3/4不同引脚的做实验) *1
  5. 1K电阻(下拉电阻场景) *1
  6. 有源蜂鸣器 *1

一、电路图

四引脚火焰传感器电路图
Arduino笔记实验(初级阶段)—火焰传感器+有源蜂鸣器实验_第1张图片

三引脚火焰传感器电路图
Arduino笔记实验(初级阶段)—火焰传感器+有源蜂鸣器实验_第2张图片

两引脚火焰传感器电路图
Arduino笔记实验(初级阶段)—火焰传感器+有源蜂鸣器实验_第3张图片

二、火焰传感器(4引脚)-有源蜂鸣器

代码

//火焰传感器A0引脚 A0
const byte pinA = 0;
//火焰传感器D0引脚 D3
const byte pinD3 = 3;
//控制有源蜂鸣器引脚 D9
const byte pinD9 = 9;
void setup() {
  Serial.begin(9600);
  //打开D3引脚为写入模式
  pinMode(pinD3, INPUT);
  //打开D9引脚为读取模式
  pinMode(pinD9, OUTPUT);
}

void loop() {

  int pinD3Status = digitalRead(pinD3);
  int pinAStatus = analogRead(pinA);
  //观察火焰传感器自带的高低电平输出值
  Serial.println(pinD3Status);
  //观察火焰传感器自带的模拟值输出值
  Serial.println(pinAStatus);

  if (pinAStatus < 30) {
    //激活有源蜂鸣器
    digitalWrite(pinD9, HIGH);
    delay(1000);
  } else {
    //关闭有源蜂鸣器
    digitalWrite(pinD9, LOW);
  }
  delay(100);
}

实验效果展示

Arduino笔记实验(初级阶段)—火焰传感器+有源蜂鸣器实验_第4张图片

条件 现象
无物体靠近 电平=0 模拟值高
有物体靠近 电平=1 模拟值较低.传感器中的led点亮
前方60度左右出现火焰 电平=1 模拟值非常低.传感器中的led点亮

三、火焰传感器

火焰传感器详细资料与测试

火焰传感器模块示意图

Arduino笔记实验(初级阶段)—火焰传感器+有源蜂鸣器实验_第5张图片

火焰传感器模块电路图

Arduino笔记实验(初级阶段)—火焰传感器+有源蜂鸣器实验_第6张图片

实验总结

本章主要以光控声的实验,了解到了火焰传感器的作用,传感器中自带的D0数据无法精确的判断是物体靠近或者是火焰出现(传感器中的电位器应该是可以调节敏感度的,我这里调试了一下发现模拟值并没有太大变化,有点奇怪,也可能是我这块传感器有问题),我们可以使用A0模拟值自行判断,甚至再串联电位器进行精读调整

你可能感兴趣的:(Arduino,单片机,嵌入式硬件)