Я начинаю пытаться изучать C ++ и встраивать программирование, но у меня есть некоторые реальные проблемы с моим датчиком TM35.
Стоит отметить, что моя спальня не в 50 градусах по Цельсию, ее середина 20-х годов на самом высоком уровне.
Датчик подключен к последовательному порту A0, 5 В и заземлению, как и должно быть, и я проверил, что все сделано правильно, средняя ножка датчика идет к a0, а плоской стороной обращена к левому штырьку. собирается на 5 В и правый контакт на землю.
Ниже приведен код, это не мой код, так как я сейчас учусь, я просто играю с кодом других людей.
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);
}