<?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: SPI Configuration Problem in LPC 1777 in LPC Microcontrollers</title>
    <link>https://community.nxp.com/t5/LPC-Microcontrollers/SPI-Configuration-Problem-in-LPC-1777/m-p/517180#M2053</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by capiman on Thu Nov 28 04:46:23 MST 2013&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;Hi Anandana,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;congratulation! It was a pleasure for me to help you!&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Can you perhaps share your working version, so others can find this version, when they are looking into this thread?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Many thanks!&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Best regards,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Martin&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 15 Jun 2016 17:27:35 GMT</pubDate>
    <dc:creator>lpcware</dc:creator>
    <dc:date>2016-06-15T17:27:35Z</dc:date>
    <item>
      <title>SPI Configuration Problem in LPC 1777</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/SPI-Configuration-Problem-in-LPC-1777/m-p/517171#M2044</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by anandana on Thu Nov 28 00:13:23 MST 2013&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;Hi,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I am trying to configure SPI in LPC1777 as per chapter 17. But after configuring that I am getting Hard fault error. Here I have attached my pieace of code. Please suggest how i can proceed..&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;#define LPC_APB0_BASE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (0x40000000UL)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;#define LPC_SPI_BASE(LPC_APB0_BASE+0x20000)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;#define LPC_SPI((LPC_SPI_TypeDef*)LPC_SPI_BASE )&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;LPC_SC-&amp;gt;PCONP=&amp;nbsp; 0x0508939E; 8th bit high to enable SPI&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;LPC_IOCON-&amp;gt;P0_15&amp;nbsp; |= 3;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; LPC_IOCON-&amp;gt;P0_18&amp;nbsp; |= 3;&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;typedef struct&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; __IO uint32_t SPCR;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; __I&amp;nbsp; uint32_t SPSR;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; __IO uint32_t SPDR;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; __IO uint32_t SPCCR;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; __IO uint32_t SPTCR;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; uint32_t RESERVED0[2];&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; __IO uint32_t SPINT;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;} LPC_SPI_TypeDef;&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;LPC_SPI-&amp;gt;SPCR = 0x00000820;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //1010&amp;nbsp; 0100&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;LPC_SPI-&amp;gt;SPCCR = 0x00000008;&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;When it reaches the above instucion it goes to Hard fault error.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Please somebody help me if there is any error..&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 17:27:29 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/SPI-Configuration-Problem-in-LPC-1777/m-p/517171#M2044</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T17:27:29Z</dc:date>
    </item>
    <item>
      <title>Re: SPI Configuration Problem in LPC 1777</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/SPI-Configuration-Problem-in-LPC-1777/m-p/517172#M2045</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by capiman on Thu Nov 28 00:21:20 MST 2013&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;Hello Anandana,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;there is a user manual for LPC1777, which is different from user manual for LPC17xx.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Especially the chapter for SPI is not contained in UM of LPC1777.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;You can use SSP instead. SSP is located on different addresses&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;and perhaps (please check yourself) has different registers and/or different bits inside the registers.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Best regards,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Martin&lt;/SPAN&gt;&lt;BR /&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 17:27:30 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/SPI-Configuration-Problem-in-LPC-1777/m-p/517172#M2045</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T17:27:30Z</dc:date>
    </item>
    <item>
      <title>Re: SPI Configuration Problem in LPC 1777</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/SPI-Configuration-Problem-in-LPC-1777/m-p/517173#M2046</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by anandana on Thu Nov 28 02:25:38 MST 2013&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;Hi Martin,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Thank U for ur response. U r right, Actually I was using UM LPC17xx. Now I configured SSP0 in SPI mode. But still it is not working.. Here i am giving the configuration details. Please check and tell if anything is wrong.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;(LPC_SC-&amp;gt;PCONP) =&amp;nbsp; 0x0528929E; //21st bit is high to enable SSP0&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt; LPC_IOCON-&amp;gt;P0_15&amp;nbsp; |= 2;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;LPC_IOCON-&amp;gt;P0_16&amp;nbsp; |= 2;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;LPC_IOCON-&amp;gt;P0_18&amp;nbsp; |= 2;&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;void SSP_ConfigStructInit(SSP_CFG_Type *SSP_InitStruct)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;SSP_InitStruct-&amp;gt;CPHA = SSP_CPHA_FIRST;&amp;nbsp;&amp;nbsp;&amp;nbsp; //0&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;SSP_InitStruct-&amp;gt;CPOL = SSP_CPOL_HI;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //0&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;SSP_InitStruct-&amp;gt;ClockRate = 1000000;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //1 Mhz&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;SSP_InitStruct-&amp;gt;Databit = SSP_DATABIT_8;&amp;nbsp;&amp;nbsp;&amp;nbsp; //8 8bit data length &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;SSP_InitStruct-&amp;gt;Mode = SSP_MASTER_MODE;&amp;nbsp;&amp;nbsp;&amp;nbsp; //0 Master Mode&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;SSP_InitStruct-&amp;gt;FrameFormat = SSP_FRAME_SPI;&amp;nbsp; //Motorola SPI Mode&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;void SSP_Init(LPC_SSP_TypeDef *SSPx, SSP_CFG_Type *SSP_ConfigStruct)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;uint32_t tmp;&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;/* Configure SSP, interrupt is disable, LoopBack mode is disable,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; * SSP is disable, Slave output is disable as default&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; */&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;tmp = ((SSP_ConfigStruct-&amp;gt;CPHA) | (SSP_ConfigStruct-&amp;gt;CPOL) \&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;| (SSP_ConfigStruct-&amp;gt;FrameFormat) | (SSP_ConfigStruct-&amp;gt;Databit))&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;amp; SSP_CR0_BITMASK;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;// write back to SSP control register&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;SSPx-&amp;gt;CR0 = tmp;&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;tmp = SSP_ConfigStruct-&amp;gt;Mode &amp;amp; SSP_CR1_BITMASK;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;// Write back to CR1&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;SSPx-&amp;gt;CR1 = tmp;&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;// Set clock rate for SSP peripheral&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;setSSPclock(SSPx, SSP_ConfigStruct-&amp;gt;ClockRate);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;static void setSSPclock (LPC_SSP_TypeDef *SSPx, uint32_t target_clock)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; uint32_t prescale, cr0_div, cmp_clk, ssp_clk;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;//&amp;nbsp;&amp;nbsp;&amp;nbsp; ssp_clk = PeripheralClock;&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;/* Find closest divider to get at or under the target frequency.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; Use smallest prescale possible and rely on the divider to get&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; the closest target frequency */&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;cr0_div = 0;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;cmp_clk = 0xFFFFFFFF;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;prescale = 2;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;while (cmp_clk &amp;gt; target_clock)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;cmp_clk = ssp_clk / ((cr0_div + 1) * prescale);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;if (cmp_clk &amp;gt; target_clock)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;cr0_div++;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;if (cr0_div &amp;gt; 0xFF)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;cr0_div = 0;&amp;nbsp;&amp;nbsp; prescale += 2;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Write computed prescaler and divider back to register */&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; SSPx-&amp;gt;CR0 &amp;amp;= ~(SSP_CR0_SCR(0xFF)) &amp;amp; SSP_CR0_BITMASK;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; SSPx-&amp;gt;CR0 |= (SSP_CR0_SCR(cr0_div)) &amp;amp; SSP_CR0_BITMASK;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; SSPx-&amp;gt;CPSR = prescale &amp;amp; SSP_CPSR_BITMASK;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;void SPI0Send(unsigned char TxDat)&amp;nbsp; //write command&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;LPC_SSP0-&amp;gt;DR = 0xAA;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;for(;LPC_SSP0-&amp;gt;SR==0x10;);&amp;nbsp;&amp;nbsp; Checking for Busy stae..&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;My code hangs in above mentioned for loop.. Busy bit not cleared in SR register..&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Please check and tell me&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Regards&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Anandan&lt;/SPAN&gt;&lt;BR /&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 17:27:31 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/SPI-Configuration-Problem-in-LPC-1777/m-p/517173#M2046</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T17:27:31Z</dc:date>
    </item>
    <item>
      <title>Re: SPI Configuration Problem in LPC 1777</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/SPI-Configuration-Problem-in-LPC-1777/m-p/517174#M2047</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by anandana on Thu Nov 28 02:26:13 MST 2013&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;Hi Martin,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Thank U for ur response. U r right, Actually I was using UM LPC17xx. Now I configured SSP0 in SPI mode. But still it is not working.. Here i am giving the configuration details. Please check and tell if anything is wrong.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;(LPC_SC-&amp;gt;PCONP) =&amp;nbsp; 0x0528929E; //21st bit is high to enable SSP0&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt; LPC_IOCON-&amp;gt;P0_15&amp;nbsp; |= 2;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;LPC_IOCON-&amp;gt;P0_16&amp;nbsp; |= 2;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;LPC_IOCON-&amp;gt;P0_18&amp;nbsp; |= 2;&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;void SSP_ConfigStructInit(SSP_CFG_Type *SSP_InitStruct)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;SSP_InitStruct-&amp;gt;CPHA = SSP_CPHA_FIRST;&amp;nbsp;&amp;nbsp;&amp;nbsp; //0&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;SSP_InitStruct-&amp;gt;CPOL = SSP_CPOL_HI;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //0&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;SSP_InitStruct-&amp;gt;ClockRate = 1000000;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //1 Mhz&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;SSP_InitStruct-&amp;gt;Databit = SSP_DATABIT_8;&amp;nbsp;&amp;nbsp;&amp;nbsp; //8 8bit data length &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;SSP_InitStruct-&amp;gt;Mode = SSP_MASTER_MODE;&amp;nbsp;&amp;nbsp;&amp;nbsp; //0 Master Mode&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;SSP_InitStruct-&amp;gt;FrameFormat = SSP_FRAME_SPI;&amp;nbsp; //Motorola SPI Mode&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;void SSP_Init(LPC_SSP_TypeDef *SSPx, SSP_CFG_Type *SSP_ConfigStruct)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;uint32_t tmp;&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;/* Configure SSP, interrupt is disable, LoopBack mode is disable,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; * SSP is disable, Slave output is disable as default&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; */&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;tmp = ((SSP_ConfigStruct-&amp;gt;CPHA) | (SSP_ConfigStruct-&amp;gt;CPOL) \&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;| (SSP_ConfigStruct-&amp;gt;FrameFormat) | (SSP_ConfigStruct-&amp;gt;Databit))&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;amp; SSP_CR0_BITMASK;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;// write back to SSP control register&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;SSPx-&amp;gt;CR0 = tmp;&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;tmp = SSP_ConfigStruct-&amp;gt;Mode &amp;amp; SSP_CR1_BITMASK;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;// Write back to CR1&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;SSPx-&amp;gt;CR1 = tmp;&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;// Set clock rate for SSP peripheral&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;setSSPclock(SSPx, SSP_ConfigStruct-&amp;gt;ClockRate);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;static void setSSPclock (LPC_SSP_TypeDef *SSPx, uint32_t target_clock)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; uint32_t prescale, cr0_div, cmp_clk, ssp_clk;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;//&amp;nbsp;&amp;nbsp;&amp;nbsp; ssp_clk = PeripheralClock;&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;/* Find closest divider to get at or under the target frequency.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; Use smallest prescale possible and rely on the divider to get&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; the closest target frequency */&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;cr0_div = 0;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;cmp_clk = 0xFFFFFFFF;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;prescale = 2;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;while (cmp_clk &amp;gt; target_clock)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;cmp_clk = ssp_clk / ((cr0_div + 1) * prescale);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;if (cmp_clk &amp;gt; target_clock)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;cr0_div++;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;if (cr0_div &amp;gt; 0xFF)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;cr0_div = 0;&amp;nbsp;&amp;nbsp; prescale += 2;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Write computed prescaler and divider back to register */&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; SSPx-&amp;gt;CR0 &amp;amp;= ~(SSP_CR0_SCR(0xFF)) &amp;amp; SSP_CR0_BITMASK;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; SSPx-&amp;gt;CR0 |= (SSP_CR0_SCR(cr0_div)) &amp;amp; SSP_CR0_BITMASK;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; SSPx-&amp;gt;CPSR = prescale &amp;amp; SSP_CPSR_BITMASK;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;void SPI0Send(unsigned char TxDat)&amp;nbsp; //write command&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;LPC_SSP0-&amp;gt;DR = 0xAA;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;for(;LPC_SSP0-&amp;gt;SR==0x10;);&amp;nbsp;&amp;nbsp; Checking for Busy stae..&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;My code struck in above mentioned for loop.. Busy bit not cleared in SR register..&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Please check and tell me&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Regards&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Anandan&lt;/SPAN&gt;&lt;BR /&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 17:27:32 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/SPI-Configuration-Problem-in-LPC-1777/m-p/517174#M2047</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T17:27:32Z</dc:date>
    </item>
    <item>
      <title>Re: SPI Configuration Problem in LPC 1777</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/SPI-Configuration-Problem-in-LPC-1777/m-p/517175#M2048</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by capiman on Thu Nov 28 02:38:22 MST 2013&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;Only some quick hints:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;- Have you perhaps forgotten P0_17?&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;- I usually control SSEL (as GPIO) by myself&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;- This does not work:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;for(;LPC_SSP0-&amp;gt;SR==0x10;); Checking for Busy stae..&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;You are not only getting one bit (0x10), bot usually also other bits.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;You must "and" the bits out, e.g.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;for(;(LPC_SSP0-&amp;gt;SR &amp;amp; 0x10) == 0x10;); Checking for Busy stae..&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I usually write&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;for(;(LPC_SSP0-&amp;gt;SR &amp;amp; 0x10) != 0;); Checking for Busy stae..&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;or even&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;while((LPC_SSP0-&amp;gt;SR &amp;amp; 0x10) != 0); Checking for Busy stae..&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Note: I have not checked if bit number and polarity is something valid.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;- This could be dangerous:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;LPC_IOCON-&amp;gt;P0_15 |= 2;&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Why not set it? E.g. when (some of the) bits were already set (e.g. previous configuration was value 1, then you get 3 instead of 2):&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;LPC_IOCON-&amp;gt;P0_15 = 2;&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;BTW: What is not working? Do you see the clock? Do you see outgoing data? Do you get incoming data?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 17:27:32 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/SPI-Configuration-Problem-in-LPC-1777/m-p/517175#M2048</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T17:27:32Z</dc:date>
    </item>
    <item>
      <title>Re: SPI Configuration Problem in LPC 1777</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/SPI-Configuration-Problem-in-LPC-1777/m-p/517176#M2049</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by capiman on Thu Nov 28 02:43:46 MST 2013&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;Please also check the real values and bits you write to CR0 and CR1&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 17:27:33 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/SPI-Configuration-Problem-in-LPC-1777/m-p/517176#M2049</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T17:27:33Z</dc:date>
    </item>
    <item>
      <title>Re: SPI Configuration Problem in LPC 1777</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/SPI-Configuration-Problem-in-LPC-1777/m-p/517177#M2050</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by anandana on Thu Nov 28 03:43:28 MST 2013&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;Hi,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I am configuring master to Slave communication only and I have changed the code as per ur suggestion.&amp;nbsp; No data and no clock signal is coming.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Regards&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Anandan A &lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 17:27:33 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/SPI-Configuration-Problem-in-LPC-1777/m-p/517177#M2050</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T17:27:33Z</dc:date>
    </item>
    <item>
      <title>Re: SPI Configuration Problem in LPC 1777</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/SPI-Configuration-Problem-in-LPC-1777/m-p/517178#M2051</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by capiman on Thu Nov 28 03:52:02 MST 2013&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;Can you post what values your SSP registers (especially configuration registers) contain?&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 17:27:34 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/SPI-Configuration-Problem-in-LPC-1777/m-p/517178#M2051</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T17:27:34Z</dc:date>
    </item>
    <item>
      <title>Re: SPI Configuration Problem in LPC 1777</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/SPI-Configuration-Problem-in-LPC-1777/m-p/517179#M2052</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by anandana on Thu Nov 28 04:42:33 MST 2013&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;Hi Martin,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Thanks for ur inputs. Actually I made a mistake in CR1. Now I enabled SSE bit in CR1 register. Now it is working fine.. Thank u very much for immediate responses..&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Regards&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Anandan A &lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 17:27:35 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/SPI-Configuration-Problem-in-LPC-1777/m-p/517179#M2052</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T17:27:35Z</dc:date>
    </item>
    <item>
      <title>Re: SPI Configuration Problem in LPC 1777</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/SPI-Configuration-Problem-in-LPC-1777/m-p/517180#M2053</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by capiman on Thu Nov 28 04:46:23 MST 2013&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;Hi Anandana,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;congratulation! It was a pleasure for me to help you!&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Can you perhaps share your working version, so others can find this version, when they are looking into this thread?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Many thanks!&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Best regards,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Martin&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 17:27:35 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/SPI-Configuration-Problem-in-LPC-1777/m-p/517180#M2053</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T17:27:35Z</dc:date>
    </item>
    <item>
      <title>Re: SPI Configuration Problem in LPC 1777</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/SPI-Configuration-Problem-in-LPC-1777/m-p/517181#M2054</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by wmues on Thu Nov 28 14:13:16 MST 2013&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;Hmmm...&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;TABLE border="1"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD bgcolor="#cacaca"&gt; &lt;PRE&gt;while((LPC_SSP0-&amp;gt;SR &amp;amp; 0x10) != 0); Checking for Busy stae..&lt;/PRE&gt; &lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;In C, every value != 0 is true. So you write&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;TABLE border="1"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD bgcolor="#cacaca"&gt; &lt;PRE&gt;while(LPC_SSP0-&amp;gt;SR &amp;amp; 0x10)&lt;/PRE&gt; &lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;More elegance, less characters, less errors.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Programming is art.&lt;/SPAN&gt;&lt;BR /&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 17:27:36 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/SPI-Configuration-Problem-in-LPC-1777/m-p/517181#M2054</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T17:27:36Z</dc:date>
    </item>
    <item>
      <title>Re: SPI Configuration Problem in LPC 1777</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/SPI-Configuration-Problem-in-LPC-1777/m-p/517182#M2055</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by Pacman on Thu Nov 28 17:17:54 MST 2013&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;I have a strong advice about hex-values&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;Please use the #defines from the library header files.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;You don't need to compile any library .c files in order to use the header files.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;But hex-values are completely unreadable; especially when you ask other people for help, the hex values have to be decoded first, then checked.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;So 0x10 and (1 &amp;lt;&amp;lt; 4) should really be replaced by the #define that you find in the header files.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;When you're returning to your source code after a one month break, you will surely wonder what the hex values mean.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Perhaps the comment helps you, but if there is a bug somewhere, and you really want to find the bug, it will be much quicker to just rewrite everything from scratch.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;-And in addition to what &lt;/SPAN&gt;&lt;A href="http://http://www.lpcware.com/users/wmues" rel="nofollow noopener noreferrer" target="_blank"&gt;wmues&lt;/A&gt;&lt;SPAN&gt; writes below...&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;It's a fairly good idea to put constants on the left hand side of '==', as sometimes you will experience that you might not hit the '=' twice...&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;TABLE border="1"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD bgcolor="#cacaca"&gt; &lt;PRE&gt;while(a = 10)
{
...
}&lt;/PRE&gt; &lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;The above will build just fine and code will seem to run as you intended it to.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;For a while maybe.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Perhaps you wanted to write ==, perhaps you wanted to write &amp;gt;= or &amp;lt;=, maybe even !=.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;If you start putting constants on the left side of the '=', you'll get a compile-error, when you try to build this:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;TABLE border="1"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD bgcolor="#cacaca"&gt; &lt;PRE&gt;while(10 = a)
{
...
}&lt;/PRE&gt; &lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;...so that will help you catch those kind of errors immediately.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 17:27:37 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/SPI-Configuration-Problem-in-LPC-1777/m-p/517182#M2055</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T17:27:37Z</dc:date>
    </item>
    <item>
      <title>Re: SPI Configuration Problem in LPC 1777</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/SPI-Configuration-Problem-in-LPC-1777/m-p/517183#M2056</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by anandana on Fri Nov 29 07:48:22 MST 2013&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;Hi,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thank U, definitely I will use ur suggestions. &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I have one dount... In LPC2468IRC,&amp;nbsp; IRC stands for what?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;This is the way I configured SPI in 1777 for master mode. &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;void SPI0Enable(void)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_SSP0-&amp;gt;CR0=0x00000007;&amp;nbsp; //8bit and master mode&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_SSP0-&amp;gt;CR1=0x00000002;&amp;nbsp;&amp;nbsp; // SSE High&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_SSP0-&amp;gt;CPSR=0x00000008;&amp;nbsp; //Clock&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;void SPI0Send(unsigned char TxDat)&amp;nbsp; //write command&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_SSP0-&amp;gt;DR = TxDat;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&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 Bit Data;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for(;(LPC_SSP0-&amp;gt;SR&amp;amp;0x10)==0x10;);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //Wait loop for Busy&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Regards&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Anandan A&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 17:27:37 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/SPI-Configuration-Problem-in-LPC-1777/m-p/517183#M2056</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T17:27:37Z</dc:date>
    </item>
  </channel>
</rss>

