<?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 ADC on MC9S08 : 8bits; Hight speed; single conversion in 8-bit Microcontrollers</title>
    <link>https://community.nxp.com/t5/8-bit-Microcontrollers/ADC-on-MC9S08-8bits-Hight-speed-single-conversion/m-p/194667#M15470</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi all i'll try to do this way. Could you confirm that this work?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;First, i made an init:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;static void adc_init(void)&amp;nbsp;&amp;nbsp; {#ifndef FAKEDEV&amp;nbsp;&amp;nbsp; APCTL1 = 0x0F ;&amp;nbsp; // Desable buffers I/O&amp;nbsp; for pins:&amp;nbsp;&amp;nbsp; APCTL2 = 0x8F ;&amp;nbsp; // ADP 0-&amp;gt;3;8-&amp;gt;11;15;16-&amp;gt;19; et 21-&amp;gt;23&amp;nbsp;&amp;nbsp; APCTL3 = 0xEF ;&amp;nbsp; // Pin PORT A;B and C&amp;nbsp;&amp;nbsp; ADCSC2 = 0x00 ;&amp;nbsp; //raz &amp;amp; config reg SC2 . Start convertion by write on ADCSC1;&amp;nbsp;&amp;nbsp; ADCCV&amp;nbsp; = 0x00 ;&amp;nbsp;&amp;nbsp; //No save of compared value&amp;nbsp;&amp;nbsp; ADCCFG = 0x00 ;&amp;nbsp; //Full power (hight speed)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //Clock divide by 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //Standard sampling time (3.5 adc clocks)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //8 bits operations&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //Bus clk selected&amp;nbsp;&amp;nbsp; ADCSC1 = 0x1F ;&amp;nbsp; //Clear Flag conversion Complet (COCO)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //NO Interrupt&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //Single conversion Mode&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //ADC DISABLE =&amp;gt; ADCH = 11111;#endif&amp;nbsp;&amp;nbsp; }&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;during my program, i call a simple function with channel parameter "voie"&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;static U8 adc_lecture(U8 voie)&amp;nbsp;&amp;nbsp; {&amp;nbsp;&amp;nbsp; U8 value = 0 ; //U8 is define as unsigned char#ifndef FAKEDEV&amp;nbsp;&amp;nbsp; ADCSC1 = voie ;&amp;nbsp;&amp;nbsp; while (! ADCSC1_COCO)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp;&amp;nbsp; value = ADCRL;&amp;nbsp;&amp;nbsp; ADCSC1 = 0x1F ;#endif&amp;nbsp;&amp;nbsp; return value ;&amp;nbsp;&amp;nbsp; }&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Do you think it's a good way?&lt;/P&gt;&lt;P&gt;ty in advance...&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 29 Oct 2020 09:49:36 GMT</pubDate>
    <dc:creator>Iko</dc:creator>
    <dc:date>2020-10-29T09:49:36Z</dc:date>
    <item>
      <title>ADC on MC9S08 : 8bits; Hight speed; single conversion</title>
      <link>https://community.nxp.com/t5/8-bit-Microcontrollers/ADC-on-MC9S08-8bits-Hight-speed-single-conversion/m-p/194667#M15470</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi all i'll try to do this way. Could you confirm that this work?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;First, i made an init:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;static void adc_init(void)&amp;nbsp;&amp;nbsp; {#ifndef FAKEDEV&amp;nbsp;&amp;nbsp; APCTL1 = 0x0F ;&amp;nbsp; // Desable buffers I/O&amp;nbsp; for pins:&amp;nbsp;&amp;nbsp; APCTL2 = 0x8F ;&amp;nbsp; // ADP 0-&amp;gt;3;8-&amp;gt;11;15;16-&amp;gt;19; et 21-&amp;gt;23&amp;nbsp;&amp;nbsp; APCTL3 = 0xEF ;&amp;nbsp; // Pin PORT A;B and C&amp;nbsp;&amp;nbsp; ADCSC2 = 0x00 ;&amp;nbsp; //raz &amp;amp; config reg SC2 . Start convertion by write on ADCSC1;&amp;nbsp;&amp;nbsp; ADCCV&amp;nbsp; = 0x00 ;&amp;nbsp;&amp;nbsp; //No save of compared value&amp;nbsp;&amp;nbsp; ADCCFG = 0x00 ;&amp;nbsp; //Full power (hight speed)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //Clock divide by 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //Standard sampling time (3.5 adc clocks)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //8 bits operations&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //Bus clk selected&amp;nbsp;&amp;nbsp; ADCSC1 = 0x1F ;&amp;nbsp; //Clear Flag conversion Complet (COCO)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //NO Interrupt&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //Single conversion Mode&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //ADC DISABLE =&amp;gt; ADCH = 11111;#endif&amp;nbsp;&amp;nbsp; }&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;during my program, i call a simple function with channel parameter "voie"&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;static U8 adc_lecture(U8 voie)&amp;nbsp;&amp;nbsp; {&amp;nbsp;&amp;nbsp; U8 value = 0 ; //U8 is define as unsigned char#ifndef FAKEDEV&amp;nbsp;&amp;nbsp; ADCSC1 = voie ;&amp;nbsp;&amp;nbsp; while (! ADCSC1_COCO)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp;&amp;nbsp; value = ADCRL;&amp;nbsp;&amp;nbsp; ADCSC1 = 0x1F ;#endif&amp;nbsp;&amp;nbsp; return value ;&amp;nbsp;&amp;nbsp; }&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Do you think it's a good way?&lt;/P&gt;&lt;P&gt;ty in advance...&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 29 Oct 2020 09:49:36 GMT</pubDate>
      <guid>https://community.nxp.com/t5/8-bit-Microcontrollers/ADC-on-MC9S08-8bits-Hight-speed-single-conversion/m-p/194667#M15470</guid>
      <dc:creator>Iko</dc:creator>
      <dc:date>2020-10-29T09:49:36Z</dc:date>
    </item>
    <item>
      <title>Re: ADC on MC9S08 : 8bits; Hight speed; single conversion</title>
      <link>https://community.nxp.com/t5/8-bit-Microcontrollers/ADC-on-MC9S08-8bits-Hight-speed-single-conversion/m-p/194668#M15471</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;It is unclear to me why your functions might be "static".&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;While it will do no harm, the writing of the value 0x1F to ADCSC1 after each conversion is probably unnecessary since the ADC&amp;nbsp;should automatically enter a lower power mode on completion of each conversion.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;For your wait loop, the following code would suffice -&lt;/P&gt;&lt;P&gt;&lt;FONT face="courier new,courier"&gt;while (!ADCSC1_COCO);&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Mac&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 23 Apr 2010 21:51:25 GMT</pubDate>
      <guid>https://community.nxp.com/t5/8-bit-Microcontrollers/ADC-on-MC9S08-8bits-Hight-speed-single-conversion/m-p/194668#M15471</guid>
      <dc:creator>bigmac</dc:creator>
      <dc:date>2010-04-23T21:51:25Z</dc:date>
    </item>
    <item>
      <title>Re: ADC on MC9S08 : 8bits; Hight speed; single conversion</title>
      <link>https://community.nxp.com/t5/8-bit-Microcontrollers/ADC-on-MC9S08-8bits-Hight-speed-single-conversion/m-p/194669#M15472</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi big mac ^^&lt;/P&gt;&lt;P&gt;Ty for this answer.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I hadn't see that it go to low power after each conversion....&lt;/P&gt;&lt;P&gt;In addition, you write "should" (scuse i'm french ^^).&lt;/P&gt;&lt;P&gt;To be sure that it stop, i prefer write 0x1F to disable ADC...&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;TY ^^&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 25 Apr 2010 04:23:44 GMT</pubDate>
      <guid>https://community.nxp.com/t5/8-bit-Microcontrollers/ADC-on-MC9S08-8bits-Hight-speed-single-conversion/m-p/194669#M15472</guid>
      <dc:creator>Iko</dc:creator>
      <dc:date>2010-04-25T04:23:44Z</dc:date>
    </item>
  </channel>
</rss>

