Hi Mike, I have an old code snippet related to your first suggestion (oversampling). It was from Basic Micro forum but now I don't see it anymor= e on the web. I don't know if this code is valid or not, however I attach it if anyone interested. Also the guy who has written this says that a pre-requirement is at least 1 LSB of noise on ADC reading. In this example the resolution is declared as increased from 10 to 16bit, but real resolution may be lower. a good Appnote for ADC oversampling:=20 www.atmel.com/dyn/resources/prod-documents/doc8003.pdf regards, Marco ------------------------------------------------------------- ....... ........ ADCON1 =3D 10001110 ;right justified ADmain ;main loop for A/D clrf OutBuff ;make 0 clrf OutBuff1 clrwdt movlw 0x40 ;load cnt with 64(dec) movwf cnt st decf cnt ;cnt =3D cnt - 1 bsf ADCON0,GO ;start A/D l3 btfsc ADCON0,GO ;A/D done ? goto l3 bsf STATUS,RP0 ;bank 1 movfw ADRESL ;get A/D low byte bcf STATUS,RP0 ;bank 0 addwf OutBuff1 ;add to low byte btfsc STATUS,C ;if carry incf OutBuff ;inc high byte movfw ADRESH ;get high A/D addwf OutBuff ;add to high byte movf cnt btfss STATUS,Z ;is count =3D 0 goto st ;no loop again -------------------------------------------------------- ----- Original Message -----=20 From: "Michael Rigby-Jones" To: "Microcontroller discussion list - Public." Sent: Wednesday, February 08, 2012 12:12 PM Subject: RE: [EE] increasing sensitivity of a thermistor > -----Original Message----- > From: piclist-bounces@mit.edu [mailto:piclist-bounces@mit.edu] On Behalf > Of alan smith > Sent: 07 February 2012 20:37 > To: Microcontroller discussion list - Public. > Subject: [EE] increasing sensitivity of a thermistor > > hi group..me again > > I want to bounce something off the members. > > > So I have a board that I designed with a 10K > thermistor, but its feeding a 3.3V micro (and that is fixed...cant change > this > part). They have come back and asked for > a better resolution. > > Now a thermistor, it simply generates a voltage > as a divider with a source impedance of course. As the temperature > changes, the voltage that > is > generated across it changes, and the resolution > of what you can measure is going to be dependent on the source voltage as > well > as the ADC resolution. > > So the ONLY way to get better resolution is to > be able to increase the source voltage from 3.3V to 5V or use a higher > resolution ADC. Now for either case, the > micro thats reading this is 3.3V, so using 5V is out of the question. > > Sorta thinking....using a PIC running at 5V to > read the thermistor, and then either using a PWM output (with RC filter) > to regenerate > a voltage of controlled steps over the temperature range they want to > measure > (pretty sure its 0 to 100F) for the ADC in their part to measure. > > Any other possible clever ideas? If you have (or can introduce) at least 0.5LSB's worth of noise into the=20 thermistor circuit you can simply oversample to gain increased resolution=20 e.g. sample 4 times to gain one extra bit, 16 times to gain 2 extra bits=20 etc. You could use several different fixed resistors as part of the potential=20 divider, connected to port pins (if available!). This way you can have=20 switched ranges by either tri-stating pins or setting them as outputs. Thi= s=20 may complicate linearisation however. There is a Microchip app note somewhere for measuring resistance by chargin= g=20 a cap through the resistor and timing the voltage rise. A fixed resistor=20 can be switched in as a reference to remove the capacitance change over=20 temperature (i.e. a dual slope ADC). With a 16 bit timer you may be able= =20 to achieve better resolution than a 10 bit ADC. 16 bit Delta-Sigma ADC's are fairly cheap and can be had in small packages= =20 with an I2C or SPI bus e.g. Microchip MCP3425 ($1.57). These tend to have= =20 differential inputs so use a Wheatstone bridge with the thermistor in one=20 arm. Cheers Mike =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D This e-mail is intended for the person it is addressed to only. The information contained in it may be confidential and/or protected by law. If you are not the intended recipient of this message, you must not make any use of this information, or copy or show it to any person. Please contact us immediately to tell us that you have received this e-mail, and return the original to us. Any use, forwarding, printing or copying of this message is strictly prohibited. No part of this message can be considered a request for goods or services. =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --=20 http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist --=20 http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist .