当温度达到我们设定的限值时,报警器就会响起。此功能可用于厨房温度检测报警、室内温度报警等需要检测温度的场合。
这里需要解释一个知识点——传感器。这是一种能够感知周围环境并将感知信号转换为电信号的感应元件。感应元件将电信号传输给控制器。就像我们感知周围环境时,我们感知周围环境,然后将信息传输给大脑。
四、软件代码
//项目7:制作温度报警器 float sinVal; int toneVal; unsigned long tepTimer ; void setup(){ pinMode(10, OUTPUT); // 蜂鸣器引脚设置 Serial.begin(9600); //设置波特率为9600 bps } void loop(){ int val; //用于存储LM35读到的值 double data; ///用于存储已转换的温度值 val=analogRead(0); //LM35连接到模拟口,并模拟口读值 data = (double) val * (5/10.24); // 获得电压值,用公式取代温度 if(data>25){ // 若温度大于27,蜂鸣器响 for(int x=0; x<180; x ){ //将sin函数角度转化为弧度 sinVal = (sin(x*(3.1412/180))); //用sin函数值产生声音的频率 toneVal = 2000 (int(sinVal*1000)); //给引脚10一个 tone(10, toneVal); delay(2); } } else { // 若温度小于27,关闭蜂鸣器 noTone(10); ///关闭蜂鸣器 } if(millis() - tepTimer > 500){ // 每500ms,串口输出一次温度值 tepTimer = millis(); Serial.print("temperature: "); // 串口输出温度 Serial.print(data); // 串口输出温度值 Serial.println("C"); // 串口输出温度单位 } }