<?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: Kinetis DSPI on PE in Processor Expert Software</title>
    <link>https://community.nxp.com/t5/Processor-Expert-Software/Kinetis-DSPI-on-PE/m-p/218763#M1011</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;How can I send binary data instead of characters?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 03 Nov 2017 19:21:57 GMT</pubDate>
    <dc:creator>matheuskotaki</dc:creator>
    <dc:date>2017-11-03T19:21:57Z</dc:date>
    <item>
      <title>Kinetis DSPI on PE</title>
      <link>https://community.nxp.com/t5/Processor-Expert-Software/Kinetis-DSPI-on-PE/m-p/218761#M1009</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;H6 style="font-weight: normal; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; background-color: #ffffff;"&gt;Hello,&lt;/H6&gt;&lt;P&gt;&lt;SPAN style="color: #222222; font-family: arial, sans-serif; font-size: 13px; background-color: #ffffff;"&gt;I am writing to know exactly how the DSPI bean works on &lt;/SPAN&gt;&lt;SPAN style="color: #222222; font-family: arial, sans-serif; font-size: 13px; background-color: #ffffff;"&gt;the &lt;/SPAN&gt;&lt;SPAN style="color: #222222; font-family: arial, sans-serif; font-size: 13px; background-color: #ffffff;"&gt;PE &lt;/SPAN&gt;&lt;SPAN style="color: #222222; font-family: arial, sans-serif; font-size: 13px; background-color: #ffffff;"&gt;for the kinetis family (k53 and K60 to be precise). I have&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #222222; font-family: arial, sans-serif; font-size: 13px; background-color: #ffffff;"&gt;followed a tutorial from &lt;/SPAN&gt;&lt;SPAN class="il" style="background-color: #ffffcc; color: #222222; font-family: arial, sans-serif; font-size: 13px;"&gt;freescale&lt;/SPAN&gt;&lt;SPAN style="color: #222222; font-family: arial, sans-serif; font-size: 13px; background-color: #ffffff;"&gt; (&lt;A href="http://www.freescale.com/infocenter/index.jsp?topic=%2FAN4450%2F2392295.html" title="http://www.freescale.com/infocenter/index.jsp?topic=%2FAN4450%2F2392295.html"&gt;Freescale Technical Information Center&lt;/A&gt;) and got the TX working &lt;/SPAN&gt;&lt;SPAN style="color: #222222; font-family: arial, sans-serif; font-size: 13px; background-color: #ffffff;"&gt;properly; but I still don't get how TX and RX are set &lt;/SPAN&gt;&lt;SPAN style="color: #222222; font-family: arial, sans-serif; font-size: 13px; background-color: #ffffff;"&gt;independently &lt;/SPAN&gt;&lt;SPAN style="color: #222222; font-family: arial, sans-serif; font-size: 13px; background-color: #ffffff;"&gt;if the protocol is achieved by shifting the registers &lt;/SPAN&gt;&lt;SPAN style="color: #222222; font-family: arial, sans-serif; font-size: 13px; background-color: #ffffff;"&gt;involved &lt;/SPAN&gt;&lt;SPAN style="color: #222222; font-family: arial, sans-serif; font-size: 13px; background-color: #ffffff;"&gt;in the &lt;/SPAN&gt;&lt;SPAN style="color: #222222; font-family: arial, sans-serif; font-size: 13px; background-color: #ffffff;"&gt;communication. I did activate the events related to SPI&amp;nbsp; SM1_ReceiveBlock&lt;/SPAN&gt;&lt;SPAN style="color: #222222; font-family: arial, sans-serif; font-size: 13px; background-color: #ffffff;"&gt; and SM1_SendBlock, but dont know how to &lt;/SPAN&gt;&lt;SPAN style="color: #222222; font-family: arial, sans-serif; font-size: 13px; background-color: #ffffff;"&gt;syncronize both if I have to receive data while it's &lt;/SPAN&gt;&lt;SPAN style="color: #222222; font-family: arial, sans-serif; font-size: 13px; background-color: #ffffff;"&gt;transmiting.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;I have also tried this on other code: &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; #define READ_SPI_FLASH_DATA()&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; (unsigned char)SPI2_POPR&lt;/P&gt;&lt;P&gt; #define WAIT_SPI_RECEPTION_END()&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; while (!(SPI2_SR &amp;amp; SPI_SR_RFDF)) {}&lt;/P&gt;&lt;P&gt; #define CLEAR_RECEPTION_FLAG()&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; SPI2_SR |= SPI_SR_RFDF&lt;/P&gt;&lt;P&gt; #define WRITE_SPI_CMD0_LAST(byte)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SPI2_PUSHR = (byte | SPI_PUSHR_EOQ&amp;nbsp; | ulChipSelectLine | SPI_PUSHR_CTAS_CTAR0) // write final byte to output FIFO - this will negate the CS line when complete&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;WRITE_SPI_CMD0(0xff);&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;nbsp;&amp;nbsp; // write dummy&lt;/P&gt;&lt;P&gt; while( SPI_SR_EOQF != (SPI2_SR &amp;amp; SPI_SR_EOQF));&lt;/P&gt;&lt;P&gt; SPI2_SR = SPI2_SR | SPI_SR_EOQF | SPI_SR_TCF ;&lt;/P&gt;&lt;P&gt; SPI2_MCR |= 0xC01; // halt = 1 &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="mce_paste_marker"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt; WAIT_SPI_RECEPTION_END();&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;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // wait until at least one byte is in the receive FIFO&lt;/P&gt;&lt;P&gt; (void)READ_SPI_FLASH_DATA();&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;nbsp;&amp;nbsp;&amp;nbsp; // discard&lt;/P&gt;&lt;P&gt; CLEAR_RECEPTION_FLAG();&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;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // clear the receive flag&lt;/P&gt;&lt;P&gt;&lt;SPAN class="mce_paste_marker"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="mce_paste_marker"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #222222; font-family: arial, sans-serif; font-size: 13px; background-color: #ffffff;"&gt;Please advise me what to do and how to read the RX &lt;/SPAN&gt;&lt;SPAN style="color: #222222; font-family: arial, sans-serif; font-size: 13px; background-color: #ffffff;"&gt;buffer when transfering data bytes&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="mce_paste_marker"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 29 Dec 2012 05:11:17 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Processor-Expert-Software/Kinetis-DSPI-on-PE/m-p/218761#M1009</guid>
      <dc:creator>japex92</dc:creator>
      <dc:date>2012-12-29T05:11:17Z</dc:date>
    </item>
    <item>
      <title>Re: Kinetis DSPI on PE</title>
      <link>https://community.nxp.com/t5/Processor-Expert-Software/Kinetis-DSPI-on-PE/m-p/218762#M1010</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;Transmitting and receiving is synchronous, as there is only one clock. However, there might be some sync issues beacuse of hardware FIFO. If you'd like to keep synchronized reading and writing, I recommend to do both reading and writing for the whole communication, wait for end of reading and just discard chars that you don't need.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You can find some sample code at the 'Typical usage' pages in the help of&amp;nbsp; Processor Expert SPIMaster_LDD component. Use the 'Help on component' pop-up menu command of the component in your project or in the Components Library and select 'Typical usage' on the left of the page.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Generally, the basic code without using interrupts looks like this:&lt;/P&gt;&lt;P&gt;&amp;nbsp; ...&lt;/P&gt;&lt;P&gt;&amp;nbsp; MySPIPtr = SM1_Init(NULL);&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; /* Initialization of SM1 component */&lt;/P&gt;&lt;P&gt;&amp;nbsp; Error = SM1_ReceiveBlock(MySPIPtr, InpData, BLOCK_SIZE); /* Request data block reception */&lt;/P&gt;&lt;P&gt;&amp;nbsp; Error = SM1_SendBlock(MySPIPtr, OutData, BLOCK_SIZE);&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Start transmission/reception */&lt;/P&gt;&lt;P&gt;&amp;nbsp; while (!SM1_GetBlockReceivedStatus(MySPIPtr)) {&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Wait until data block is transmitted/received */&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; SM1_Main(MySPIPtr);&lt;/P&gt;&lt;P&gt;&amp;nbsp; }&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;Petr Hradsky&lt;/P&gt;&lt;P&gt;Processor Expert Support and Servicepacks Team&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="mce_paste_marker"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 02 Jan 2013 15:42:11 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Processor-Expert-Software/Kinetis-DSPI-on-PE/m-p/218762#M1010</guid>
      <dc:creator>Petr_H</dc:creator>
      <dc:date>2013-01-02T15:42:11Z</dc:date>
    </item>
    <item>
      <title>Re: Kinetis DSPI on PE</title>
      <link>https://community.nxp.com/t5/Processor-Expert-Software/Kinetis-DSPI-on-PE/m-p/218763#M1011</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;How can I send binary data instead of characters?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 03 Nov 2017 19:21:57 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Processor-Expert-Software/Kinetis-DSPI-on-PE/m-p/218763#M1011</guid>
      <dc:creator>matheuskotaki</dc:creator>
      <dc:date>2017-11-03T19:21:57Z</dc:date>
    </item>
  </channel>
</rss>

