<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: K60 temperature reading_wierd behaviour in Kinetis Microcontrollers</title>
    <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/K60-temperature-reading-wierd-behaviour/m-p/457644#M27285</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I think your 'data' needs to be 25.0 minus the rest you show (except NOT a /10??)&amp;nbsp; -- the calculation you show does give you the DIFFERENCE to the calibrated results at 25C.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I am also a little confused as to where you got your /32768 divisor in ADC calculation -- seems to me I would expect a 16-bit 'full scale' span, so each LSB (from 3.3V) is 3300/65536mV.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;See also:&lt;/P&gt;&lt;P&gt;&lt;A href="https://community.nxp.com/message/350605"&gt;Re: K70 Temperature reading - Slopes&lt;/A&gt; &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 05 Nov 2015 16:30:58 GMT</pubDate>
    <dc:creator>egoodii</dc:creator>
    <dc:date>2015-11-05T16:30:58Z</dc:date>
    <item>
      <title>K60 temperature reading_wierd behaviour</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/K60-temperature-reading-wierd-behaviour/m-p/457643#M27284</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello everybody,&lt;/P&gt;&lt;P&gt;I am trying to read the temperature of the CPU core,but i am getting some weird readings.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Here's the code:&lt;/P&gt;&lt;P&gt;float K60_temp()&lt;/P&gt;&lt;P&gt;{&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; float data = 0.0;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; float V_temp = 0;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; float V_temp_25 = 0;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; float slope_m = 0;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; temp_uc_adc3_StartSingleMeasurement(core_temp);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; while (!temp_uc_adc3_GetMeasurementCompleteStatus(core_temp)) {}; /* Wait for conversion completeness */&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; temp_uc_adc3_GetMeasuredValues(core_temp, (LDD_TData *) (&amp;amp;cpu_temp_adc_count));&amp;nbsp; /* Read measured values */&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; V_temp = 0.100708*cpu_temp_adc_count;//(3300/32768)*cpu_temp_adc_count;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; V_temp_25 = 716.00;//mV&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; slope_m = 1.62;//or 1/m = 0.61728mV&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; data = (float)((float)(V_temp - V_temp_25)*0.61728)/10;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; return data;&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;When i increase the core temp(using a hot air gun),the temperature decreases!!&lt;/P&gt;&lt;P&gt;Isn't it supposed to happen the other way around?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Kindly help,&lt;/P&gt;&lt;P&gt;Arun&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 05 Nov 2015 11:28:35 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/K60-temperature-reading-wierd-behaviour/m-p/457643#M27284</guid>
      <dc:creator>arunkumar1989</dc:creator>
      <dc:date>2015-11-05T11:28:35Z</dc:date>
    </item>
    <item>
      <title>Re: K60 temperature reading_wierd behaviour</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/K60-temperature-reading-wierd-behaviour/m-p/457644#M27285</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I think your 'data' needs to be 25.0 minus the rest you show (except NOT a /10??)&amp;nbsp; -- the calculation you show does give you the DIFFERENCE to the calibrated results at 25C.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I am also a little confused as to where you got your /32768 divisor in ADC calculation -- seems to me I would expect a 16-bit 'full scale' span, so each LSB (from 3.3V) is 3300/65536mV.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;See also:&lt;/P&gt;&lt;P&gt;&lt;A href="https://community.nxp.com/message/350605"&gt;Re: K70 Temperature reading - Slopes&lt;/A&gt; &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 05 Nov 2015 16:30:58 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/K60-temperature-reading-wierd-behaviour/m-p/457644#M27285</guid>
      <dc:creator>egoodii</dc:creator>
      <dc:date>2015-11-05T16:30:58Z</dc:date>
    </item>
    <item>
      <title>Re: K60 temperature reading_wierd behaviour</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/K60-temperature-reading-wierd-behaviour/m-p/457645#M27286</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks for the reply Earl,i did the calculation thinking the adc is a 15 bit adc(2^15 = 32768),i corrected it now,the mentioned link helped a lot.&lt;/P&gt;&lt;P&gt;It is showing correct readings now.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Here's the function:&lt;/P&gt;&lt;P&gt;float uc_temp()&lt;/P&gt;&lt;P&gt;{&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; float V_temp = 0;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; float V_temp_25 = 0.719;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; float slope_m = 0.00162;&amp;nbsp;&amp;nbsp;&amp;nbsp; //1/m = 617.283&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; temp_uc_adc3_StartSingleMeasurement(core_temp);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; while (!temp_uc_adc3_GetMeasurementCompleteStatus(core_temp)) {}; /* Wait for conversion completeness */&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; temp_uc_adc3_GetMeasuredValues(core_temp, (LDD_TData *) (&amp;amp;cpu_temp_adc_count));&amp;nbsp; /* Read measured values */&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //convert count to volts&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; V_temp = (3.3/65536) * cpu_temp_adc_count;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //temp at 25c in volts&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //V_temp_25 = 0.719;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //slope in volts&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //slope_m = 0.00175;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //return 25 - ((V_temp - V_temp_25)/slope_m);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; return 25 - ((V_temp - V_temp_25)*617.28F);&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 06 Nov 2015 03:11:44 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/K60-temperature-reading-wierd-behaviour/m-p/457645#M27286</guid>
      <dc:creator>arunkumar1989</dc:creator>
      <dc:date>2015-11-06T03:11:44Z</dc:date>
    </item>
  </channel>
</rss>

