我开始尝试学习一些C ++和嵌入式编程,但是我的TM35传感器遇到一些实际问题。
值得注意的是,我的卧室不在摄氏50度(最高20摄氏度)之内。
传感器已连接到A0串行端口,5v并应接地,并且我已经检查了传感器的正确连接方式,传感器的中脚指向a0,并且平坦的一面朝向您,左针将进入5v,右脚接地。
下面是代码,它不是我的代码,因为我正在学习即时代码,而现在只是在与其他人的代码一起玩。
const byte tempPin = A0;
float calibration = 0.1039;
float temp; // Celcius
float volts;
void setup() {
Serial.begin(9600);
analogReference(INTERNAL1V1); // use internal 1.1volt Aref
// change INTERNAL to INTERNAL1V1 for a Mega
}
void loop() {
temp = analogRead(tempPin) * calibration; // get temp
volts = analogRead(tempPin);
Serial.print("Volts: ");
Serial.print(volts);
Serial.print(", Temperature: ");
Serial.print(temp, 1); // one decimal place resolution is all you get
Serial.println("*C");
delay(1000); // use a non-blocking delay when combined with other code
}
我也尝试过此代码,但结果相同。
float temp;
void setup() {
// put your setup code here, to run once:
Serial.begin(9600);
}
void loop() {
// put your main code here, to run repeatedly:
temp = analogRead(A0);
temp = temp * 0.48828125;
Serial.print("Temperature: ");Serial.print(temp);Serial.print("*C");
Serial.println();
delay(1000);
}