火焰传感器利用特殊的红外线接收管通过捕捉火焰中的红外线波长来检测火焰,将火焰温度转换为高低变化的电平信号,并输入单片机进行分析处理。

模块电路

模拟输出|试验原理

将传感器的模拟输出与开发板的模拟I/O接口连接,控制传感器感知火焰时输出信号电压上升,电压上升到一定值时经过CPU处理,开发板输出驱动蜂鸣器信号,发出蜂鸣器。

模拟输出|硬件连接

火焰传感器: 1个

蜂鸣器: 1个

导线数

模拟输出|程序代码

int flams=A5; //火焰传感器接口定义为模拟5接口

int Beep=8; //蜂鸣器接口定义为数字8接口

定义int val=0 //数值变量val

void loop () )

{

pinmode(beep,OUTPUT ); //将蜂鸣器定义为输出接口

pinmode(flams,INPUT ); //将火焰传感器定义为输入接口

Serial.Begin(9600; //波特率设置为9600 Baud

}

void loop () )

{

val=模拟读取(帧); //读取火焰传感器的模拟值

serial.println(val; //读取模拟值并将其打印

if(val=600 ) /模拟值超过600时蜂鸣器会响起

{

数字写入beep high;

}

else

{

数字写入(beep,LOW );

}

}

数字输出|试验原理

将传感器数字输出与开发板的模拟I/O接口连接,当传感器感知到火焰时,输出电平从低电平变为高电平,经过CPU的处理,开发板输出驱动LED的信号,位于开发板13脚的LED发光管

数字输出|硬件连接

火焰传感器: 1个

导线数

数字输出|程序代码

int Led=13; 定义//led接口

int buttonpin=3; //定义火焰传感器接口

int val;

Void设置() )

{

pinmode(led,OUTPUT );//将led定义为输出接口

拼音模式(button pin,INPUT ); //将火焰传感器定义为输入接口

}

void loop () )

{

val=数字读取(button pin ); //读取数字引脚3的值并分配给val

if(val==high ) )。

数字写入(led,HIGH ); //火焰传感器检测到有信号时,LED点亮

else

数字写入(led,LOW );

}