<?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: KL17 Bit SPMF in the SPIx_S field in Kinetis Microcontrollers</title>
    <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/KL17-Bit-SPMF-in-the-SPIx-S-field/m-p/488297#M30089</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;As the reference manual shows to clear SPMF bit in SPI0_S register need read SPMF when it is set and then write a 1 to it.&lt;/P&gt;&lt;P&gt;Please refer below SPI interrupt code for KL25 product SPI module validation:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;if ((SPI0_S &amp;amp; SPI0_S_SPMF_MASK)&amp;amp;&amp;amp;(SPI0_C2 &amp;amp; SPI0_C2_SPMIE_MASK))&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //SPI match interrupt&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&amp;nbsp;&amp;nbsp; &lt;/TD&gt;&lt;TD&gt; SPI0_S |= SPI0_S_SPMF_MASK;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/TD&gt;&lt;TD&gt;printf("SPI0 match interrupt\n");&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&amp;nbsp;&amp;nbsp; &lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt; &lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;Wish it helps.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Have a great day,&lt;BR /&gt;Ma Hui&lt;BR /&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>Fri, 18 Mar 2016 08:16:15 GMT</pubDate>
    <dc:creator>Hui_Ma</dc:creator>
    <dc:date>2016-03-18T08:16:15Z</dc:date>
    <item>
      <title>KL17 Bit SPMF in the SPIx_S field</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/KL17-Bit-SPMF-in-the-SPIx-S-field/m-p/488296#M30088</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;On behalf of my customer:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;At the SPI in the KL17 my customer has found a discrepancy, versus the KL25. I is the Bit SPMF in the SPIx_S field.&lt;/P&gt;&lt;P&gt;-          KL17P64M48SF2RM manual page 502&lt;/P&gt;&lt;P&gt;-          KL25P80M48SF0RM manual page 666&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In both reference manuals is the statement: "To clear the flag, read SPMF when it is set and then write a 1 to it."&lt;/P&gt;&lt;P&gt;In the file MKL17Z4.h is "S" only defined for reading:&lt;/P&gt;&lt;P&gt;/** SPI - Register Layout Typedef */&lt;/P&gt;&lt;P&gt;typedef struct {&lt;/P&gt;&lt;P&gt;  __I  uint8_t S;                                  /**&amp;lt; SPI Status Register, offset: 0x0 */&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;At the KL25 file for read and write:&lt;/P&gt;&lt;P&gt;/** SPI - Register Layout Typedef */&lt;/P&gt;&lt;P&gt;typedef struct {&lt;/P&gt;&lt;P&gt;  __IO uint8_t C1;                                 /**&amp;lt; SPI control register 1, offset: 0x0 */&lt;/P&gt;&lt;P&gt;  __IO uint8_t C2;                                 /**&amp;lt; SPI control register 2, offset: 0x1 */&lt;/P&gt;&lt;P&gt;  __IO uint8_t BR;                                 /**&amp;lt; SPI baud rate register, offset: 0x2 */&lt;/P&gt;&lt;P&gt;  __IO uint8_t S;                                  /**&amp;lt; SPI status register, offset: 0x3 */&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If one does a correction in the KL17 file to__IO, then compiling works, but the file isn't original any longer... :smileysad:&lt;/P&gt;&lt;P&gt;If one keeps the S-Register as only read, one gets during the compilation an error: "assignment of read-only member 'S'      SPI0-&amp;gt;S |= 0x40;"&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;My customer thinks the .h-File is wrong and the reference manual is correct.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In both reference manuals is written under SPI status register (SPIx_S): "This register contains read-only status bits. Writes have no meaning or effect."&lt;/P&gt;&lt;P&gt;But in the flowcharts is the statement: READ SPMF WHILE SET TO CLEAR FLAG, THEN WRITE A 1 TO IT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Marno Friebe&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Senior Field Application Engineer&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;EBV Elektronik GmbH &amp;amp; Co. KG&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Marno.Friebe@ebv.com&amp;lt;mailto:Marno.Friebe@ebv.com&amp;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;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Bernstrasse 394&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CH-8953 Dietikon&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;P&gt;Office:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;+41 44 745 61 08&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Cell:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;+41 79 218 39 16&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Fax:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;+41 44 745 61 00&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;https://www.facebook.com/ebvelektronik&amp;gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Facebook&amp;lt;https://www.facebook.com/ebvelektronik&amp;gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;https://plus.google.com/+ebvelektronik&amp;gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Google&lt;EM&gt;&amp;lt;https://plus.google.com/&lt;/EM&gt;ebvelektronik&amp;gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;https://twitter.com/EBVElektronik&amp;gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Twitter&amp;lt;https://twitter.com/EBVElektronik&amp;gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;https://www.linkedin.com/company/ebv-elektronik&amp;gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;LinkedIn&amp;lt;https://www.linkedin.com/company/ebv-elektronik&amp;gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;https://www.youtube.com/user/EBVElektronik&amp;gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;YouTube&amp;lt;https://www.youtube.com/user/EBVElektronik&amp;gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;http://www.ebv.com/&amp;gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.ebv.com&amp;lt;http://www.ebv.com/&amp;gt;" target="test_blank"&gt;http://www.ebv.com&amp;lt;http://www.ebv.com/&amp;gt;&lt;/A&gt;;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Headquarter:&lt;/P&gt;&lt;P&gt;EBV Elektronik GmbH &amp;amp; Co. KG, Im Technologiepark 2 - 8, D- 85586 Poing, Local Court Munich, HRA 77165&lt;/P&gt;&lt;P&gt;General partner: EBV Management GmbH, Local Court Munich, HRB 132857, WEEE-Reg.-Nr. DE 75920610&lt;/P&gt;&lt;P&gt;Managing Directors: Slobodan Puljarevic, Christian Meier, Patrick Zammit&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;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 17 Mar 2016 19:57:44 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/KL17-Bit-SPMF-in-the-SPIx-S-field/m-p/488296#M30088</guid>
      <dc:creator>fireman</dc:creator>
      <dc:date>2016-03-17T19:57:44Z</dc:date>
    </item>
    <item>
      <title>Re: KL17 Bit SPMF in the SPIx_S field</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/KL17-Bit-SPMF-in-the-SPIx-S-field/m-p/488297#M30089</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;As the reference manual shows to clear SPMF bit in SPI0_S register need read SPMF when it is set and then write a 1 to it.&lt;/P&gt;&lt;P&gt;Please refer below SPI interrupt code for KL25 product SPI module validation:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;if ((SPI0_S &amp;amp; SPI0_S_SPMF_MASK)&amp;amp;&amp;amp;(SPI0_C2 &amp;amp; SPI0_C2_SPMIE_MASK))&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //SPI match interrupt&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&amp;nbsp;&amp;nbsp; &lt;/TD&gt;&lt;TD&gt; SPI0_S |= SPI0_S_SPMF_MASK;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/TD&gt;&lt;TD&gt;printf("SPI0 match interrupt\n");&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&amp;nbsp;&amp;nbsp; &lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt; &lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;Wish it helps.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Have a great day,&lt;BR /&gt;Ma Hui&lt;BR /&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>Fri, 18 Mar 2016 08:16:15 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/KL17-Bit-SPMF-in-the-SPIx-S-field/m-p/488297#M30089</guid>
      <dc:creator>Hui_Ma</dc:creator>
      <dc:date>2016-03-18T08:16:15Z</dc:date>
    </item>
    <item>
      <title>Re: KL17 Bit SPMF in the SPIx_S field</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/KL17-Bit-SPMF-in-the-SPIx-S-field/m-p/488298#M30090</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello Hui Ma,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;thanks for your answer! My customer programmed the SPI's similar to your solution.&lt;/P&gt;&lt;P&gt;But that isn't the main point. The manuals and the provided MKL17Z4.h - files do not match!&lt;/P&gt;&lt;P&gt;Where can this documentation and SW discrepancy be addressed to avoid the same pitfalls at other customers?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards,&lt;/P&gt;&lt;P&gt;Marno&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 10 Jun 2016 09:51:30 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/KL17-Bit-SPMF-in-the-SPIx-S-field/m-p/488298#M30090</guid>
      <dc:creator>fireman</dc:creator>
      <dc:date>2016-06-10T09:51:30Z</dc:date>
    </item>
    <item>
      <title>Re: KL17 Bit SPMF in the SPIx_S field</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/KL17-Bit-SPMF-in-the-SPIx-S-field/m-p/488299#M30091</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;I checked the updated KSDK V2.0 MKL17Z4.h with below SPI register type definition:&lt;/P&gt;&lt;P&gt;/** SPI - Register Layout Typedef */&lt;/P&gt;&lt;P&gt;typedef struct {&lt;/P&gt;&lt;P&gt;&amp;nbsp; __IO uint8_t S;&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;&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;lt; SPI Status Register, offset: 0x0 */&lt;/P&gt;&lt;P&gt;&amp;nbsp; __IO uint8_t BR;&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;&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;lt; SPI Baud Rate Register, offset: 0x1 */ &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The updated &amp;lt;MKL17Z4.h&amp;gt; file has fixed the issue.&lt;/P&gt;&lt;P&gt;Please check attached file for the detailed info.&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;Wish it helps.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Have a great day,&lt;BR /&gt;Ma Hui&lt;BR /&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>Sun, 12 Jun 2016 01:47:34 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/KL17-Bit-SPMF-in-the-SPIx-S-field/m-p/488299#M30091</guid>
      <dc:creator>Hui_Ma</dc:creator>
      <dc:date>2016-06-12T01:47:34Z</dc:date>
    </item>
  </channel>
</rss>

