/* * FILE: TMP36.11GIU16 * PURPOSE: * PROBE: TMP36 * AUTHOR: Antonio Cannavale * COMFORT: */int val_ADC = 0;float temp = 0;void setup() { // Start setup Serial.begin(9600); // Start the serial connection with the computer delay(500); // Delay to let system boot while (!Serial) { ; // Wait for serial port to connect. Needed for native USB port only } delay(1000); // Wait before accessing sensor} // End setupvoid loop() { // Start loop val_ADC = analogRead(0); //Getting voltage from sensor at Analog PIN A0 temp = ((val_ADC * 0.00488) - 0.5)/0.01; // Convert voltage in Celsius Serial.print(val_ADC); // Print Serial.println(" mV"); Serial.print(temp); Serial.println (" C"); delay(120000);} // End loop
Arduino:1.6.5 (Windows 8.1), Scheda:"Arduino Uno"TMP36.11GIU16:23: error: stray '\' in programTMP36.11GIU16.ino: In function 'void loop()':TMP36.11GIU16:23: error: expected ')' before 'u2013'stray '\' in program Questo report potrebbe essere più riccodi informazioni con "Mostra un output dettagliato durante la compilazione" abilitato in "File > Impostazioni"
while (!Serial) { ; // Wait for serial port to connect. Needed for native USB port only
Inoltre quel pezzo nella setup:Code: [Select]while (!Serial) { ; // Wait for serial port to connect. Needed for native USB port onlyserve di solito solo per Arduino Leonardo. Quel pezzo ferma il programma in attesa che da serial monitor premi qualcosa. Secondo me... levalo.
L'errore indica la presenza alla riga 23 di un carattere "randagio", per l'esattezza un "\" che, peraltro, non vedo in nessuna parte del listato..Prova a riscriverla: alle volte, copiandola da un sito, possono essere presenti caratteri invisibili.
La formula è corretta, anche se io preferisco questa forma:temp = (val_ADC * 5.0 / 1023 - 0.5) / 0.01; // 5.0 = tensione ADC, 0.5 = tensione offset, 0.01 = 10mV/°C
Dove lo devo mettere, vicino al TMP36?
Se il TMP36 è saldato su PCB lo saldi vicino, se c'è un cavo che collega TMP36 al PCB allora il condensatore va saldato sui pin del TMP36.
PS: Occhio che con alimentazione da USB avrai una lettura ADC poco affidabile, molto meglio alimentare arduino da jack o da VIN fornendo a questo 5.0Vdc
Alimento arduino solo con USB perche non dispongo di un lcd. Posso utilizzare anche l'alimentazione a jack pur collegando arduino a USB?
// al posto di ? scrivi il numero del pin// const byte button = ?;// const byte led0 = ?; // booleane led0State = false;// ovviamente nella funzione setup() (qui mancante) devi configurare i pin con pinMode() ecc.void loop() { // questa è la condizione if (digitalRead(button) == HIGH) { // qui l'azione legata alla condizione led0State ^= 1; // (1 xor 1 = 0), (0 xor 1 = 1) digitalWrite(led0, led0State); } else { digitalWrite(led0, LOW); } }
Chiedevi questo o altro?