<?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 LPC1833 Strange ADC behavier in LPC Microcontrollers</title>
    <link>https://community.nxp.com/t5/LPC-Microcontrollers/LPC1833-Strange-ADC-behavier/m-p/528037#M9514</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by hamu on Fri Nov 15 01:13:35 MST 2013&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;Hello,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I want to convert all 8 ADC channels but the behavier is not as expected.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Example (V_ref = 2.5V):&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Reading channel 5 with the CMSIS funcions&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;lt;code&amp;gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;ADC_ChannelCmd (LPC_ADC0, 5, 1);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;ADC_StartCmd(LPC_ADC0, 1);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;while(!ADC_ChannelGetStatus(LPC_ADC0, 5, 1));&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Value1 = ADC_ChannelGetData(LPC_ADC0, 5);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;ADC_ChannelCmd (LPC_ADC0, 5, 0);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;lt;/code&amp;gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;The result is always 0x3FF althought the value on the pin is 0,398V. With burst mode the conversion delivers the same result.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;If I convert more than one channel in burst mode the conversion results depends on the number of activated channels. If I convert only channel 5 I get 0x3FF but when I convert channel 0 and channel 5 the conversion value for channel 5 is 0x190 (with same voltages on the pins).&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Has anyone a working sample for the ADC??&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Thomas&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 15 Jun 2016 18:15:49 GMT</pubDate>
    <dc:creator>lpcware</dc:creator>
    <dc:date>2016-06-15T18:15:49Z</dc:date>
    <item>
      <title>LPC1833 Strange ADC behavier</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/LPC1833-Strange-ADC-behavier/m-p/528037#M9514</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by hamu on Fri Nov 15 01:13:35 MST 2013&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;Hello,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I want to convert all 8 ADC channels but the behavier is not as expected.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Example (V_ref = 2.5V):&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Reading channel 5 with the CMSIS funcions&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;lt;code&amp;gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;ADC_ChannelCmd (LPC_ADC0, 5, 1);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;ADC_StartCmd(LPC_ADC0, 1);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;while(!ADC_ChannelGetStatus(LPC_ADC0, 5, 1));&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Value1 = ADC_ChannelGetData(LPC_ADC0, 5);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;ADC_ChannelCmd (LPC_ADC0, 5, 0);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;lt;/code&amp;gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;The result is always 0x3FF althought the value on the pin is 0,398V. With burst mode the conversion delivers the same result.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;If I convert more than one channel in burst mode the conversion results depends on the number of activated channels. If I convert only channel 5 I get 0x3FF but when I convert channel 0 and channel 5 the conversion value for channel 5 is 0x190 (with same voltages on the pins).&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Has anyone a working sample for the ADC??&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Thomas&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 18:15:49 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/LPC1833-Strange-ADC-behavier/m-p/528037#M9514</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T18:15:49Z</dc:date>
    </item>
    <item>
      <title>Re: LPC1833 Strange ADC behavier</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/LPC1833-Strange-ADC-behavier/m-p/528038#M9515</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by Pacman on Fri Nov 15 13:36:08 MST 2013&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;I don't think those library functions are CMSIS; they're written by NXP.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Are you sure your ADC is actually measuring anything at all ?&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;If the result from your read operation is always the same number, I'd say that your ADC is not reading anything.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;If the results vary slightly even for the same voltage, it's probably working.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;But let's look at the code...&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;When using the library functions, please use the definitions that belong to them as parameters.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;For instance:&lt;/SPAN&gt;&lt;BR /&gt;&lt;TABLE border="1"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD bgcolor="#cacaca"&gt; &lt;PRE&gt;ADC_ChannelCmd (LPC_ADC0, 5, 1);
ADC_StartCmd(LPC_ADC0, 1);
while(!ADC_ChannelGetStatus(LPC_ADC0, 5, 1));
Value1 = ADC_ChannelGetData(LPC_ADC0, 5);
ADC_ChannelCmd (LPC_ADC0, 5, 0);
&lt;/PRE&gt; &lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;TABLE border="1"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD bgcolor="#cacaca"&gt; &lt;PRE&gt;ADC_Init(LPC_ADC0,400000);
ADC_ChannelCmd(LPC_ADC0, 5, ENABLE);
ADC_StartCmd(LPC_ADC0, ADC_START_NOW);
while(!ADC_ChannelGetStatus(LPC_ADC0, 5, ADC_DATA_DONE));
Value1 = ADC_ChannelGetData(LPC_ADC0, 5);
ADC_ChannelCmd (LPC_ADC0, 5, ADC_START_CONTINUOUS);
&lt;/PRE&gt; &lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;...See anything missing or anything that you don't think should be there ?&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;It's a good idea to put a comment on the right of each line, which says what you intend the line to do.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Also, do you switch your pin configurations to use the ADC ?&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;If not, they'll never measure anything useful.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Please also wrap your code-snippets in the [color=#030][[/color][color=#030]code][/color] / [color=#030][[/color][color=#030]/code][/color] tags.&lt;/SPAN&gt;&lt;BR /&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 18:15:50 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/LPC1833-Strange-ADC-behavier/m-p/528038#M9515</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T18:15:50Z</dc:date>
    </item>
  </channel>
</rss>

