<?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>CodeWarrior for MCU中的主题 Re: Problems using SPI component SynchroMaster</title>
    <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/Problems-using-SPI-component-SynchroMaster/m-p/331626#M11087</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Alice,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks for your reply. The problem is that &lt;SPAN style="color: #000000; font-family: Consolas, 'Courier New', Courier, mono, serif; font-size: 12px;"&gt;ana_RecvChar() &lt;/SPAN&gt;always outputs the 0xff byte, even though it should be returning different values.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 12 Nov 2014 09:29:09 GMT</pubDate>
    <dc:creator>andrewclegg</dc:creator>
    <dc:date>2014-11-12T09:29:09Z</dc:date>
    <item>
      <title>Problems using SPI component SynchroMaster</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/Problems-using-SPI-component-SynchroMaster/m-p/331624#M11085</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I am using the SynchroMaster processorexpert component to talk to a simple 4-wire SPI component attached to a TWR-K60F120m via the primary elevator. My settings are included at the bottom. I am using simple code to test (below): check buffers are empty, send the characters, wait for the transmit buffer to empty and the receive buffer to fill up, read out all the characters.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;My problem seems to be that I always get back 0xff bytes no matter what should be coming back. I know that the SPI slave device works correctly as it has been tested on a different microcontroller. I am going to try to get my hands on a logic analyzer, but for now does anyone have any idea what might be causing this?&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE class="c++" name="code"&gt;int spi_readwrite(unsigned char *sendBuf, unsigned char *recvBuf, int size) { &amp;nbsp; if (size &amp;lt;= 0) { &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return -1; &amp;nbsp; } &amp;nbsp; int retval; &amp;nbsp; unsigned char discard;&amp;nbsp; &amp;nbsp; ana_Enable();&amp;nbsp; &amp;nbsp; if (ana_GetCharsInTxBuf() != 0) { &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf("spi_readwrite called with non-empty transmit buffer\n"); &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return -11; &amp;nbsp; }&amp;nbsp; &amp;nbsp; if (ana_GetCharsInRxBuf() != 0) { &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf("spi_readwrite called with non-empty receive buffer\n"); &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return -12; &amp;nbsp; }&amp;nbsp; &amp;nbsp; // Send first &amp;nbsp; for (int i=0; i&amp;lt;size; i++) { &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Send character &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; retval = ana_SendChar(sendBuf[i]); &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; switch (retval) { &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; case ERR_OK: &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break; // move on to the next character &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; case ERR_SPEED: &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf("sendChar(%d): ERR_SPEED\n", i); &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return -2; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; case ERR_DISABLED: &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf("sendChar(%d): ERR_DISABLED\n", i); &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return -3; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; case ERR_TXFULL: &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf("sendChar(%d): ERR_TXFULL\n", i); &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return -4; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; default: &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf("sendChar(%d): Unknown response code %d\n", i, retval); &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return -5; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; } &amp;nbsp; }&amp;nbsp; &amp;nbsp; // Wait for transmit buffer to empty &amp;nbsp; int tx_bufsize; &amp;nbsp; while (1) { &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; tx_bufsize = ana_GetCharsInTxBuf(); &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (tx_bufsize == 0) { &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; } &amp;nbsp; }&amp;nbsp; &amp;nbsp; // Wait for receive buffer to fill up &amp;nbsp; int rx_bufsize; &amp;nbsp; while (1) { &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; rx_bufsize = ana_GetCharsInRxBuf(); &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (rx_bufsize == size) { &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; } &amp;nbsp; }&amp;nbsp; &amp;nbsp; // Receive &amp;nbsp; for (int i=0; i&amp;lt;size; i++) { &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (recvBuf == NULL) { &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; retval = ana_RecvChar(&amp;amp;discard); &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; } else { &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; retval = ana_RecvChar(&amp;amp;recvBuf[i]); &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; switch (retval) { &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; case ERR_OK: &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; case ERR_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; printf("recvChar(%d): ERR_SPEED\n", i); &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return -6; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; case ERR_RXEMPTY: &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf("recvChar(%d): ERR_RX_EMPTY\n", i); &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return -7; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; case ERR_OVERRUN: &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf("recvChar(%d): ERR_OVERRUN\n", i); &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return -8; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; case ERR_FAULT: &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf("recvChar(%d): ERR_FAULT\n", i); &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return -9; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; default: &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf("recvChar(%d): Unknown response code %d\n", i, retval); &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return -10; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; } &amp;nbsp; }&amp;nbsp; ana_Disable(); &amp;nbsp; return 0; } &lt;/PRE&gt;&lt;DIV style="display:none;"&gt; &lt;/DIV&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="lia-inline-image-display-wrapper" image-alt="16484_16484.png"&gt;&lt;IMG alt="16484_16484.png" src="https://community.nxp.com/t5/image/serverpage/image-id/120022iD345D5204BE321AA/image-size/large?v=v2&amp;amp;px=999" title="16484_16484.png" /&gt;&lt;/SPAN&gt;&lt;SPAN class="lia-inline-image-display-wrapper" image-alt="spi_settings.png"&gt;&lt;IMG alt="spi_settings.png" src="https://community.nxp.com/t5/image/serverpage/image-id/46888i6EA6C50E767B2B8E/image-size/large?v=v2&amp;amp;px=999" title="spi_settings.png" /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 02 Nov 2020 13:10:43 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/Problems-using-SPI-component-SynchroMaster/m-p/331624#M11085</guid>
      <dc:creator>andrewclegg</dc:creator>
      <dc:date>2020-11-02T13:10:43Z</dc:date>
    </item>
    <item>
      <title>Re: Problems using SPI component SynchroMaster</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/Problems-using-SPI-component-SynchroMaster/m-p/331625#M11086</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello Andrew,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.5pt; font-family: 'Helvetica','sans-serif'; color: #666666;"&gt;Thank you for your interest in Freescale's kinetis product, I would like to provide service for you !&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.5pt; font-family: 'Helvetica','sans-serif'; color: #666666;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.5pt; font-family: 'Helvetica','sans-serif'; color: #666666;"&gt;I don't quite understand your meaning , do you want to know the bytes you received ?&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.5pt; font-family: 'Helvetica','sans-serif'; color: #666666;"&gt;SPIx_TCR indicates the number of SPI transfers.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.5pt; font-family: 'Helvetica','sans-serif'; color: #666666;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.5pt; font-family: 'Helvetica','sans-serif'; color: #666666;"&gt;Hope it helps&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.5pt; font-family: 'Helvetica','sans-serif'; color: #666666;"&gt;Alice&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 12 Nov 2014 04:33:27 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/Problems-using-SPI-component-SynchroMaster/m-p/331625#M11086</guid>
      <dc:creator>Alice_Yang</dc:creator>
      <dc:date>2014-11-12T04:33:27Z</dc:date>
    </item>
    <item>
      <title>Re: Problems using SPI component SynchroMaster</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/Problems-using-SPI-component-SynchroMaster/m-p/331626#M11087</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Alice,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks for your reply. The problem is that &lt;SPAN style="color: #000000; font-family: Consolas, 'Courier New', Courier, mono, serif; font-size: 12px;"&gt;ana_RecvChar() &lt;/SPAN&gt;always outputs the 0xff byte, even though it should be returning different values.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 12 Nov 2014 09:29:09 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/Problems-using-SPI-component-SynchroMaster/m-p/331626#M11087</guid>
      <dc:creator>andrewclegg</dc:creator>
      <dc:date>2014-11-12T09:29:09Z</dc:date>
    </item>
    <item>
      <title>Re: Problems using SPI component SynchroMaster</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/Problems-using-SPI-component-SynchroMaster/m-p/331627#M11088</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Andrew,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Can you check the "BufferRead" , and the "SPI2_POPR " register&amp;nbsp; ?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Alice&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 12 Nov 2014 12:54:52 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/Problems-using-SPI-component-SynchroMaster/m-p/331627#M11088</guid>
      <dc:creator>Alice_Yang</dc:creator>
      <dc:date>2014-11-12T12:54:52Z</dc:date>
    </item>
    <item>
      <title>Re: Problems using SPI component SynchroMaster</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/Problems-using-SPI-component-SynchroMaster/m-p/331628#M11089</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Alice,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have now changed my code to use SendBlock/RecvBlock instead of SendChar/RecvChar.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I was able to get a logic analyzer trace of an SPI master-write transaction (top to bottom: Clock, MISO, MOSI, Chip Select). From this I can see that the MISO signal is always high and thus the 0xff value is 'correct'. However I think this is happening because the chip-select is toggling between bytes, whereas the slave device requires the chip-select to be held low for the duration of the transaction (usually 5, 8 or 11 bytes).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If I look at the SMasterLdd1 subcomponent, I can see that 'Chip select toggling' is set to 'no'. Do you know why the chip select appears to be toggling and is there a way I can hold it low for the duration of the multi-byte transfer?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="TEK00001.PNG.png"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/47231iEB86CAE48343AF65/image-size/large?v=v2&amp;amp;px=999" role="button" title="TEK00001.PNG.png" alt="TEK00001.PNG.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 13 Nov 2014 13:27:02 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/Problems-using-SPI-component-SynchroMaster/m-p/331628#M11089</guid>
      <dc:creator>andrewclegg</dc:creator>
      <dc:date>2014-11-13T13:27:02Z</dc:date>
    </item>
    <item>
      <title>Re: Problems using SPI component SynchroMaster</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/Problems-using-SPI-component-SynchroMaster/m-p/331629#M11090</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi again,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I disabled the chip select pin in the SynchroMaster, and instead controlled it myself manually using a BitIO component. This works, and I am now receiving data correctly. This confirms that the problem was that the chip select was being toggled, even through 'chip select toggling' was set to 'no' in SPIMaster_LDD. Is this a bug in processor expert or one of its components? I would prefer to use the component properly rather than using the BitIO workaround.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 13 Nov 2014 17:32:11 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/Problems-using-SPI-component-SynchroMaster/m-p/331629#M11090</guid>
      <dc:creator>andrewclegg</dc:creator>
      <dc:date>2014-11-13T17:32:11Z</dc:date>
    </item>
    <item>
      <title>Re: Problems using SPI component SynchroMaster</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/Problems-using-SPI-component-SynchroMaster/m-p/331630#M11091</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Andrew,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Which IDE do you use ? and which version of processor expert do you use ?&lt;/P&gt;&lt;P&gt;And if you can , send your project&amp;nbsp; would be the best.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best Regards!&lt;/P&gt;&lt;P&gt;Alice &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 15 Nov 2014 09:43:59 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/Problems-using-SPI-component-SynchroMaster/m-p/331630#M11091</guid>
      <dc:creator>Alice_Yang</dc:creator>
      <dc:date>2014-11-15T09:43:59Z</dc:date>
    </item>
    <item>
      <title>Re: Re: Problems using SPI component SynchroMaster</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/Problems-using-SPI-component-SynchroMaster/m-p/331631#M11092</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi, I am using CodeWarrior for MCU, Version: 10.6, Build Id:140329. I am using the Processor Expert that came bundled with it, version 10.6.1. My installation is up to date.&lt;/P&gt;&lt;P&gt;My Processor Expert file for the bsp_twrk60f120m project is &lt;A href="https://www.dropbox.com/s/ro092ys63lywhu2/ProcessorExpert.pe?dl=0"&gt;here&lt;/A&gt;.&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 15 Nov 2014 15:24:13 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/Problems-using-SPI-component-SynchroMaster/m-p/331631#M11092</guid>
      <dc:creator>andrewclegg</dc:creator>
      <dc:date>2014-11-15T15:24:13Z</dc:date>
    </item>
    <item>
      <title>Re: Problems using SPI component SynchroMaster</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/Problems-using-SPI-component-SynchroMaster/m-p/331632#M11093</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Andrew,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I checked your project configuration , and i haven't checked out problem ,&amp;nbsp; and I&amp;nbsp; create a very&amp;nbsp; simple&amp;nbsp; SPI sample , SPI0 send data to SPI1&amp;nbsp; on CW PE, and it work well .&lt;/P&gt;&lt;P&gt;so , i think that , whether the pin of PTD11 is&amp;nbsp; used in other place ?&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;Alice&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 17 Nov 2014 10:17:09 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/Problems-using-SPI-component-SynchroMaster/m-p/331632#M11093</guid>
      <dc:creator>Alice_Yang</dc:creator>
      <dc:date>2014-11-17T10:17:09Z</dc:date>
    </item>
    <item>
      <title>Re: Problems using SPI component SynchroMaster</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/Problems-using-SPI-component-SynchroMaster/m-p/331633#M11094</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Alice,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I realised the PE file I sent you is after I made my 'fix' (controlling PTD11 manually using BitIO). But I have checked and I am not using PTD11 for anything else.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I think it probably works on many devices, where the chip select can be toggled between each byte without any problem. But on my particular device the chip select must be held down for the entire multi-byte transaction, and the PE code doesn't seem to do this.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I haven't been able to confirm it (I am new to debugging with Codewarrior + microcontrollers in general) but it looks like the CONT bit in SPI2_PUSHR is not being set. This appears to be what tells the MCU to keep the chip select down for the duration of the transaction.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Andy&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 17 Nov 2014 12:31:27 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/Problems-using-SPI-component-SynchroMaster/m-p/331633#M11094</guid>
      <dc:creator>andrewclegg</dc:creator>
      <dc:date>2014-11-17T12:31:27Z</dc:date>
    </item>
  </channel>
</rss>

