学习套件收到了...新人报到!
2014-12-013.3万
AI 快速预览详细
学习套件收到后,新手可以立即开始探索STEM教育项目。套件包含多种原件,适合编程启蒙和儿童科学实验,无需复杂前置技能,轻松上手。
|
学习套件收到了...新人报到!感觉不错,好多原件....谢谢,新人多多关照! |
|
学习套件收到了...新人报到!感觉不错,好多原件....谢谢,新人多多关照! |
创作许可协议
本项目采用 None(不开放任何权利,保留所有权利) 进行许可。
创作许可协议
本项目采用 None(不开放任何权利,保留所有权利) 进行许可。
????? //关闭LED 求教这里关闭LED 怎么写?
这边有很多教程哦 https://mc.dfrobot.com.cn/portal.php?mod=list&catid=5
int toneVal;
int ledVal;
unsigned long tepTimer ;
void setup(){
pinMode(8, OUTPUT); // 蜂鸣器引脚设置
pinMode(9, 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>18){ // 如果温度大于18,蜂鸣器响
for(int x=0; x<180; x++){
//将sin函数角度转化为弧度
sinVal = (sin(x*(3.1412/180))); //用sin函数值产生声音的频率
toneVal = 2000+(int(sinVal*1000)); //给引脚8一个
tone(8, toneVal);
ledVal=int(sinVal*200);
analogWrite(9, ledVal);
delay(20);
}
} else { // 如果温度小于18,关闭蜂鸣器&LED
noTone(8); //关闭蜂鸣器
noTone(9); //关闭LED 求教这里关闭LED 怎么写?
}
if(millis() - tepTimer > 500){ // 每500ms,串口输出一次温度值
tepTimer = millis();
Serial.print("temperature: "); // 串口输出“温度”
Serial.print(data); // 串口输出温度值
Serial.println("C"); // 串口输出温度单位
}
}
呵呵
分享一下