Arduino 温度传感器倒计时
Arduino temperature sensor counting back
我正在尝试让我的新 velleman vma320 与我的 arduino 一起工作。
它根本不起作用,温度下降它的加热。我已经尝试了一切。有人可以帮我吗?这是我的代码...
int SensorPin = A0;
void setup() {
Serial.begin(9600);
}
void loop() {
//reading
int sensorvalue = analogRead(SensorPin);
Serial.print("value: ");
Serial.print(sensorvalue);
//voltage
float voltage = sensorvalue * 5.0;
voltage /= 1024.0;
Serial.print(", volts: ");
Serial.print(voltage);
//temperature
float temperature = (voltage - 0.5) * 100 ;
Serial.print(" degrees C");
Serial.println(temperature);
}
是不是我做错了什么?还是只是传感器?我用两个传感器试了一下。
如果你能帮助我,那就太棒了。
提前致谢,
Jens Van den Eede.
所以,这是热敏电阻 velleman vma320 的工作代码。根据它的接线方式,电压会随着温度升高而下降,而且它不是线性的。
#include <math.h>
double Thermistor(int RawADC) {
double Temp;
Temp =log(10000.0/(1024.0/RawADC-1)); // for pull-up configuration
Temp = 1 / (0.001129148 + (0.000234125 + (0.0000000876741 * Temp * Temp ))* Temp );
Temp = Temp - 273.15; // Convert Kelvin to Celcius
return Temp;
}
void setup() {
Serial.begin(9600);
}
void loop() {
Serial.println(int(Thermistor(analogRead(A0))));
delay(1000);
}
请注意,如果您为 VMA320 提供 3.3VDC(来自 VCC,而非 5V),则以上代码仅提供准确的温度。
如果您希望转换为 °F
,请在 "return Temp;" 上方添加 "Temp = (Temp * 9.0)/ 5.0 + 32.0;"
我正在尝试让我的新 velleman vma320 与我的 arduino 一起工作。 它根本不起作用,温度下降它的加热。我已经尝试了一切。有人可以帮我吗?这是我的代码...
int SensorPin = A0;
void setup() {
Serial.begin(9600);
}
void loop() {
//reading
int sensorvalue = analogRead(SensorPin);
Serial.print("value: ");
Serial.print(sensorvalue);
//voltage
float voltage = sensorvalue * 5.0;
voltage /= 1024.0;
Serial.print(", volts: ");
Serial.print(voltage);
//temperature
float temperature = (voltage - 0.5) * 100 ;
Serial.print(" degrees C");
Serial.println(temperature);
}
是不是我做错了什么?还是只是传感器?我用两个传感器试了一下。
如果你能帮助我,那就太棒了。
提前致谢, Jens Van den Eede.
所以,这是热敏电阻 velleman vma320 的工作代码。根据它的接线方式,电压会随着温度升高而下降,而且它不是线性的。
#include <math.h>
double Thermistor(int RawADC) {
double Temp;
Temp =log(10000.0/(1024.0/RawADC-1)); // for pull-up configuration
Temp = 1 / (0.001129148 + (0.000234125 + (0.0000000876741 * Temp * Temp ))* Temp );
Temp = Temp - 273.15; // Convert Kelvin to Celcius
return Temp;
}
void setup() {
Serial.begin(9600);
}
void loop() {
Serial.println(int(Thermistor(analogRead(A0))));
delay(1000);
}
请注意,如果您为 VMA320 提供 3.3VDC(来自 VCC,而非 5V),则以上代码仅提供准确的温度。
如果您希望转换为 °F
,请在 "return Temp;" 上方添加 "Temp = (Temp * 9.0)/ 5.0 + 32.0;"