uwefed:
nei dati del TMP36 c'é scritto:
"Output Load Current IL da 0 a 50 ?A."
Presumo non avendo un DUE (ma piú di 2 UNO ) che il circuito sample and hold sia simile di quello del Atmega percui ogni misura carica un condensatore interno e percui per brevi tempi chiede molto di piú di 50µA.
In realtà il sistema di sample hold del SAM3X è decisamente migliore di quello degli AVR, sul data sheet nella sezione delle caratteristiche elettriche del ADC c'è la tabella 46.35 (pag. 1419, versione documento 11057B–ATARM–28-May-12) che riporta l'impedenza d'uscita massima della sorgente in funzione della frequenza di clock del ADC sia per il modo a 10bit che per quello a 12bit.
Dalla citata tabella si desume che alla massima frequenza di campionamento l'impedenza deve essere 10k a 12 bit e 14k a 10 bit, valori decisamente buoni visto che il reale campionamento è a 1 MHz, basta scendere a un ADC clock di 10 MHz (500 ksps) per rientrare nei ~20 kohm di impedenza d'uscita dei TMP36.
Adesso toccherebbe verificare come viene usato l'ADC da Arduino DUE, ovvero come viene inizializzato e con che clock ADC lavora.
edit: un rapido controllo al reference del IDE 1.5x suggerisce che il sample rate è sempre 10ksps come sulla UNO, il che escluderebbe qualunque problema legato all'impedenza d'uscita del TMP36, c'è in più il comando AnalogResolution per cambiare la risoluzione della lettura e sfruttare tutti i 12bit.
Più tardi provo a dare un'occhiata direttamente al codice che inizializza l'ADC così scopriamo quale sia la reale velocità di sample.