<?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: Having trouble getting UART0 working on FRDM-KL25z in Kinetis Microcontrollers</title>
    <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/Having-trouble-getting-UART0-working-on-FRDM-KL25z/m-p/309171#M13237</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I have the same problem with him, I try the example code, it's work fine, but when i try create myself project and copy all code from the UART_ex1 example project, it does not work!&lt;BR /&gt;Can you solve this problem?&lt;BR /&gt;Thanks for advance! :smileyhappy:&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 17 Dec 2014 10:54:50 GMT</pubDate>
    <dc:creator>hungpham</dc:creator>
    <dc:date>2014-12-17T10:54:50Z</dc:date>
    <item>
      <title>Having trouble getting UART0 working on FRDM-KL25z</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/Having-trouble-getting-UART0-working-on-FRDM-KL25z/m-p/309167#M13233</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I've having difficulty getting my UART driver to work on the KL25Z&lt;BR /&gt;I followed this document from freescale: &lt;A href="http://cache.freescale.com/files/32bit/doc/quick_ref_guide/KLQRUG.pdf" rel="nofollow noopener noreferrer" title="http://cache.freescale.com/files/32bit/doc/quick_ref_guide/KLQRUG.pdf" target="_blank"&gt;http://cache.freescale.com/files/32bit/doc/quick_ref_guide/KLQRUG.pdf&lt;/A&gt;&lt;BR /&gt;This doesn't seem to work.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;My main method handles what would normally be in a "getchar" and "putchar" method.&lt;BR /&gt;I just want it to repeat what I send it.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;My code is as follows:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;This is the main.c file&lt;/P&gt;&lt;PRE __default_attr="c++" __jive_macro_name="code" class="jive_text_macro jive_macro_code _jivemacro_uid_13990754500727205" jivemacro_uid="_13990754500727205" modifiedtitle="true"&gt;
&lt;P&gt;#include "UART.h"&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;int main(void){&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; uart0_Init();&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; while(1){&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; while(!(UART0-&amp;gt;D1 &amp;amp; UART_S1_RDRF_MASK));&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; c = UART0-&amp;gt;D;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; while(!(UART0-&amp;gt;S1 &amp;amp; UART_S1_TDRE_MASK) &amp;amp;&amp;amp; !(UART0-&amp;gt;S1_TC_MASK));&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; UART0-&amp;gt;D = c;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;
&lt;P&gt;}&lt;/P&gt;
&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;And this is the UART.h file:&lt;/P&gt;&lt;PRE __default_attr="c++" __jive_macro_name="code" class="jive_text_macro _jivemacro_uid_1399075573509394 jive_macro_code" jivemacro_uid="_1399075573509394" modifiedtitle="true"&gt;
&lt;P&gt;#include &amp;lt;MKL25Z4.h&amp;gt;&lt;/P&gt;
&lt;P&gt;#include &amp;lt;stdio.h&amp;gt;&lt;/P&gt;
&lt;P&gt;#include "delay.h"&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;#define POLLING_MODE 1&lt;/P&gt;
&lt;P&gt;#define UART_MODE POLLING_MODE&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;void uart0_Init(void){&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SIM-&amp;gt;SOPT2 |= SIM_SOPT2_UART0SRC(1);&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SIM-&amp;gt;SOPT2 |= SIM_SOPT2_PLLFLLSEL_MASK;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SIM-&amp;gt;SCGC4 |= SIM_SCGC4_UART0_MASK;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SIM-&amp;gt;SCGC5 |= SIM_SCGC5_PORTA_MASK;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PORTA-&amp;gt;PCR[2] = PORT_PCR_ISF_MASK | PORT_PCR_MUX(0x2);&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PORTA-&amp;gt;PCR[1] = PORT_PCR_ISF_MASK | PORT_PCR_MUX(0x2);&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; UART0-&amp;gt;C2 &amp;amp;= ~(UART0_C2_TE_MASK | UART0_C2_RE_MASK);&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; UART0-&amp;gt;BDH = 0x00;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; UART0-&amp;gt;PDL = 0x1A;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; UART0-&amp;gt;c4 = 0x0F;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; UART0-&amp;gt;C1 = 0x00;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; UART0-&amp;gt;C3 = 0x00;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; UART0-&amp;gt;MA1 = 0x00;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; UART0-&amp;gt;MA2 = 0x00;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; UART0-&amp;gt;S1 = 0x1F;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; UART0-&amp;gt;S2 = 0xC0;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; UART0-&amp;gt;C2 |= UART0_C2_TE_MASK | UART0_C2_RE_MASK;&lt;/P&gt;
&lt;P&gt;}&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 03 May 2014 00:14:16 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/Having-trouble-getting-UART0-working-on-FRDM-KL25z/m-p/309167#M13233</guid>
      <dc:creator>funkyguy4000</dc:creator>
      <dc:date>2014-05-03T00:14:16Z</dc:date>
    </item>
    <item>
      <title>Re: Having trouble getting UART0 working on FRDM-KL25z</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/Having-trouble-getting-UART0-working-on-FRDM-KL25z/m-p/309168#M13234</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Shannon,&lt;/P&gt;&lt;P&gt;Thank you very much for your focus on Freescale Kinetis product. I'm glad to provide service for you.&lt;/P&gt;&lt;P&gt;I'd like to suggest you refer to LQRUG_uart_ex1 and LQRUG_uart_ex2 in FRDM-KL25 sample code whose link as follow.&lt;/P&gt;&lt;P&gt;Hope my support help.&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.freescale.com/files/32bit/software/KL25_SC.exe" title="http://www.freescale.com/files/32bit/software/KL25_SC.exe"&gt;http://www.freescale.com/files/32bit/software/KL25_SC.exe&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;Have a great day,&lt;BR /&gt;Ping&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-----------------------------------------------------------------------------------------------------------------------&lt;BR /&gt;Note: If this post answers your question, please click the Correct Answer button. Thank you!&lt;BR /&gt;-----------------------------------------------------------------------------------------------------------------------&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 05 May 2014 02:34:50 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/Having-trouble-getting-UART0-working-on-FRDM-KL25z/m-p/309168#M13234</guid>
      <dc:creator>jeremyzhou</dc:creator>
      <dc:date>2014-05-05T02:34:50Z</dc:date>
    </item>
    <item>
      <title>Re: Having trouble getting UART0 working on FRDM-KL25z</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/Having-trouble-getting-UART0-working-on-FRDM-KL25z/m-p/309169#M13235</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Shannon,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Have you enabled the UART clock source in your application? The LQRUG_uart_ex1 selects the FLLCLK as the input clock source for Uart0.&lt;/P&gt;&lt;P&gt;SIM-&amp;gt;SOPT2 |= SIM_SOPT2_UART0SRC(&lt;SPAN class="number"&gt;1&lt;/SPAN&gt;);&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;gt; selects the clock source for Uart0 to be either the FLLCLK or PLLCLK/2 depending on SIM_SOPT2[PLLFLLSEL] status&lt;/P&gt;&lt;P&gt;SIM-&amp;gt;SOPT2 &amp;amp;= ~SIM_SOPT2_PLLFLLSEL_MASK;&amp;nbsp; --&amp;gt; selects FLLCLK (this bit is set in the KLQRUG snippet which I believe is a typo)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Have you configured the FLLCLK in your application? If so, what frequency?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The oversampling ratio and (OSR) and baud rate divisors (BDL and BDH) in the application are used to produce a baud rate of 115200 from the 48 MHz FLL clock frequency. If you are using a clock frequency other than 48 MHz, you will need to adjust the OSR and Baud divisors to meet your desired baud rate. Baud rate = module frequency / ((OSR +1)*baud&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Is your terminal application configured for 115200?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Bryan&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 27 May 2014 23:59:09 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/Having-trouble-getting-UART0-working-on-FRDM-KL25z/m-p/309169#M13235</guid>
      <dc:creator>bryancole-b4682</dc:creator>
      <dc:date>2014-05-27T23:59:09Z</dc:date>
    </item>
    <item>
      <title>Re: Having trouble getting UART0 working on FRDM-KL25z</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/Having-trouble-getting-UART0-working-on-FRDM-KL25z/m-p/309170#M13236</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You can get UART code for &lt;STRONG&gt;KL&lt;/STRONG&gt; and K parts (interrupt and DMA driven) from the uTasker project (supports up to 6 UARTs in parallel and operational on all Freescale demo and eval boards - incl. &lt;STRONG&gt;FRDM-KL25Z&lt;/STRONG&gt;).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The UART interface is described in &lt;A href="http://www.utasker.com/docs/uTasker/uTaskerUART.PDF" title="http://www.utasker.com/docs/uTasker/uTaskerUART.PDF"&gt;http://www.utasker.com/docs/uTasker/uTaskerUART.PDF&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The uTasker &lt;STRONG&gt;Kinetis simulator&lt;/STRONG&gt; will emulate the Kinetis UARTs by connecting them to the PC's COM ports (or virtual COM ports) so that the interrupt and DMA behaviour can be observed or analysed (and incorrect driver code be identified) and complete applications using UART communication be developed, tested and debugged.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Mark&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.utasker.com/kinetis.html" title="http://www.utasker.com/kinetis.html"&gt;http://www.utasker.com/kinetis.html&lt;/A&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 28 May 2014 02:54:23 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/Having-trouble-getting-UART0-working-on-FRDM-KL25z/m-p/309170#M13236</guid>
      <dc:creator>mjbcswitzerland</dc:creator>
      <dc:date>2014-05-28T02:54:23Z</dc:date>
    </item>
    <item>
      <title>Re: Having trouble getting UART0 working on FRDM-KL25z</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/Having-trouble-getting-UART0-working-on-FRDM-KL25z/m-p/309171#M13237</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I have the same problem with him, I try the example code, it's work fine, but when i try create myself project and copy all code from the UART_ex1 example project, it does not work!&lt;BR /&gt;Can you solve this problem?&lt;BR /&gt;Thanks for advance! :smileyhappy:&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 17 Dec 2014 10:54:50 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/Having-trouble-getting-UART0-working-on-FRDM-KL25z/m-p/309171#M13237</guid>
      <dc:creator>hungpham</dc:creator>
      <dc:date>2014-12-17T10:54:50Z</dc:date>
    </item>
    <item>
      <title>Re: Having trouble getting UART0 working on FRDM-KL25z</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/Having-trouble-getting-UART0-working-on-FRDM-KL25z/m-p/309172#M13238</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I figured out the issues and I have uploaded my code up to Github.&lt;BR /&gt;The project was created using Keil uVision 4 so beware&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="https://github.com/funkyguy4000/ARM-Programs/tree/master/Bare%20Metal/FRDM-KL25%20UART0" title="https://github.com/funkyguy4000/ARM-Programs/tree/master/Bare%20Metal/FRDM-KL25%20UART0"&gt;ARM-Programs/Bare Metal/FRDM-KL25 UART0 at master · funkyguy4000/ARM-Programs · GitHub&lt;/A&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 29 Dec 2014 19:48:18 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/Having-trouble-getting-UART0-working-on-FRDM-KL25z/m-p/309172#M13238</guid>
      <dc:creator>funkyguy4000</dc:creator>
      <dc:date>2014-12-29T19:48:18Z</dc:date>
    </item>
  </channel>
</rss>

