我想让我的新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。
答案 0 :(得分:0)
所以,这是一个thermister 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);
}
答案 1 :(得分:0)
请注意,如果为VMA320提供3.3VDC(从VCC而非5V),则以上代码仅提供准确的温度。
还要添加“温度=(温度* 9.0)/ 5.0 + 32.0;”高于“返回温度”;如果要转换为°F