<?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 problem in Classic/Legacy CodeWarrior</title>
    <link>https://community.nxp.com/t5/Classic-Legacy-CodeWarrior/SPI-problem/m-p/138517#M1116</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;The function looks ok, but you should use unsigned char or your own 8-bit integer type, since char may or may not be signed by default.&lt;BR /&gt;&lt;BR /&gt;const SPI_Status[]&lt;BR /&gt;&lt;BR /&gt;This will declare an array of 16-bit integers. You will fill it with the register values as they are out of reset. What you want is an array of pointers to 8-bit integers.&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;I would write a generic algorithm like this:&lt;BR /&gt;(this is for SCI, but it works in the same way for SPI, CAN, whatever)&lt;BR /&gt;&lt;BR /&gt;typedef volatile unsigned char* SCI_Type;&lt;BR /&gt;&lt;BR /&gt;#define SCI0 (&amp;amp;SCI0BDH)&lt;BR /&gt;#define SCI1 (&amp;amp;SCI1BDH)&lt;BR /&gt;&lt;BR /&gt;#define reg_SCIBDH(var) (*((SCI_Type)var + 0)) /* SCI Baud Rate Register High */&lt;BR /&gt;#define reg_SCIBDL(var) (*((SCI_Type)var + 1)) /* SCI Baud Rate Register Low */&lt;BR /&gt;#define reg_SCICR1(var) (*((SCI_Type)var + 2)) /* SCI Control Register1 */&lt;BR /&gt;#define reg_SCICR2(var) (*((SCI_Type)var + 3)) /* SCI Control Register 2 */&lt;BR /&gt;#define reg_SCISR1(var) (*((SCI_Type)var + 4)) /* SCI Status Register 1 */&lt;BR /&gt;#define reg_SCISR2(var) (*((SCI_Type)var + 5)) /* SCI Status Register 2 */&lt;BR /&gt;#define reg_SCIDRH(var) (*((SCI_Type)var + 6)) /* SCI Data Register High */&lt;BR /&gt;#define reg_SCIDRL(var) (*((SCI_Type)var + 7)) /* SCI Data Register Low */&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;main()&lt;BR /&gt;{&lt;BR /&gt;...&lt;BR /&gt;&lt;BR /&gt;reg_SCIBDL(SCI0) = something;&lt;BR /&gt;&lt;BR /&gt;myVariable = reg_SCIDRL(SCI0);&lt;BR /&gt;&lt;BR /&gt;}&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 30 Nov 2006 22:32:07 GMT</pubDate>
    <dc:creator>Lundin</dc:creator>
    <dc:date>2006-11-30T22:32:07Z</dc:date>
    <item>
      <title>SPI problem</title>
      <link>https://community.nxp.com/t5/Classic-Legacy-CodeWarrior/SPI-problem/m-p/138516#M1115</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt;&lt;DIV&gt;I are trying to get a generic SPI port routine to work.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;cPort is being passed with 0&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;This is what I wont to work but it wont. I have set the port up int the same way and it is fine. If I directly drive the port it works. The port pins do change state but the data is not on the device.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;uchar SPI_Proc (uchar cPort, uchar cValue)&lt;BR /&gt;{&lt;BR /&gt;&amp;nbsp;while (!(*(char*)SPI_STATUS[cPort] &amp;amp; SPI_TEF));&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Wait for SPTEF set&lt;BR /&gt;&amp;nbsp;*(char*)SPI_DATA[cPort] = cValue;&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;while (!((*(char*)SPI_STATUS[cPort]) &amp;amp; SPI_IF));&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Wait for SPIF set&lt;BR /&gt;&amp;nbsp;return *(char*)SPI_DATA[cPort];&lt;BR /&gt;}&lt;BR /&gt;&lt;/DIV&gt;&lt;DIV&gt;If I do this it works.&lt;/DIV&gt;&lt;DIV&gt;uchar SPI_Proc (uchar cPort, uchar cValue)&lt;BR /&gt;{&lt;BR /&gt;&amp;nbsp;while (!(SPI0SR &amp;amp; SPI_TEF));&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Wait for SPTEF set&lt;BR /&gt;&amp;nbsp;SPI0DR = cValue;&lt;BR /&gt;&amp;nbsp;while (!(SPI0SR &amp;amp; SPI_IF));&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Wait for SPIF set&lt;BR /&gt;&amp;nbsp;return SPI0DR;&lt;BR /&gt;}&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;SPI_Status and&amp;nbsp;SPI_DATA&amp;nbsp;is declearde as such&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;const SPI_STATUS[] =&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;{SPI0SR,&amp;nbsp;&amp;nbsp;&amp;nbsp; SPI0SR,&amp;nbsp;&amp;nbsp;&amp;nbsp; SPI1SR,&amp;nbsp;&amp;nbsp;&amp;nbsp; SPI1SR,&amp;nbsp;&amp;nbsp;&amp;nbsp; SPI2SR,&amp;nbsp;&amp;nbsp;&amp;nbsp; SPI2SR};&lt;BR /&gt;const SPI_DATA[] =&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;{SPI0DR,&amp;nbsp;&amp;nbsp;&amp;nbsp; SPI0DR,&amp;nbsp;&amp;nbsp;&amp;nbsp; SPI1DR,&amp;nbsp;&amp;nbsp;&amp;nbsp; SPI1DR,&amp;nbsp;&amp;nbsp;&amp;nbsp; SPI2DR,&amp;nbsp;&amp;nbsp;&amp;nbsp; SPI2DR};&lt;BR /&gt;&lt;BR /&gt;SPI_TEF = 0x20&lt;/DIV&gt;&lt;DIV&gt;SPI_IF = 0x80&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;other lines decleared the same taht work are&lt;/DIV&gt;&lt;DIV&gt;const SPICTRL1[] =&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; {SPI0CR1,&amp;nbsp;&amp;nbsp; SPI0CR1,&amp;nbsp;&amp;nbsp; SPI1CR1,&amp;nbsp;&amp;nbsp; SPI1CR1,&amp;nbsp;&amp;nbsp; SPI2CR1,&amp;nbsp;&amp;nbsp; SPI2CR1};&lt;BR /&gt;const SPICTRL2[] =&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;{SPI0CR2,&amp;nbsp;&amp;nbsp; SPI0CR2,&amp;nbsp;&amp;nbsp; SPI1CR2,&amp;nbsp;&amp;nbsp; SPI1CR2,&amp;nbsp;&amp;nbsp; SPI2CR2,&amp;nbsp;&amp;nbsp; SPI2CR2};&lt;BR /&gt;const SPIBAUD[] =&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;{SPI0BR,&amp;nbsp;&amp;nbsp;&amp;nbsp; SPI0BR,&amp;nbsp;&amp;nbsp;&amp;nbsp; SPI1BR,&amp;nbsp;&amp;nbsp;&amp;nbsp; SPI1BR,&amp;nbsp;&amp;nbsp;&amp;nbsp; SPI2BR,&amp;nbsp;&amp;nbsp;&amp;nbsp; SPI2BR};&lt;BR /&gt;&amp;nbsp;*(char*)SPICTRL1[cPort] = 0x50;&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;// Bit 7 - SPI Interrupts Disabled&lt;BR /&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;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;// Bit 6 - SPI port pins enable&lt;BR /&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;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;// Bit 5 - SPI transmit interrupt disable&lt;BR /&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;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;// Bit 4 - SPI in Master mode&lt;BR /&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;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;// Bit 3 - SPI Clock polarity (SCLK idels low)&lt;BR /&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;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;// Bit 2 - SPI Clock Phase (sclk issued halfway through start of transfer)&lt;BR /&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;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;// Bit 1 - SPI Slave sellect enable. (SS Disabled)&lt;BR /&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;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;// Bit 0 - SPI LSB first enabled. (MSB).&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;*(char*)SPIBAUD[cPort] = 0x00;&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; // 12 Mhz&lt;BR /&gt;&amp;nbsp;*(char*)SPICTRL2[cPort] = 0x00;&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; // Bit 4 - SPI MODFEN set.&lt;BR /&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;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;// Bit 3 - Bidir buffer enable bit (disabled)&lt;BR /&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;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;// Bit 2 - CPHA SPI Clock phas bit.&lt;BR /&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;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;// Bit 1 - SPI operates normmally in wait mode.&lt;BR /&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;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;// Bit 0 - SPI Configeration. (normal mode).&lt;BR /&gt;&lt;/DIV&gt;&lt;DIV&gt;Why not this 2.&lt;/DIV&gt;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 30 Nov 2006 09:54:01 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Classic-Legacy-CodeWarrior/SPI-problem/m-p/138516#M1115</guid>
      <dc:creator>NZ_Design</dc:creator>
      <dc:date>2006-11-30T09:54:01Z</dc:date>
    </item>
    <item>
      <title>Re: SPI problem</title>
      <link>https://community.nxp.com/t5/Classic-Legacy-CodeWarrior/SPI-problem/m-p/138517#M1116</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;The function looks ok, but you should use unsigned char or your own 8-bit integer type, since char may or may not be signed by default.&lt;BR /&gt;&lt;BR /&gt;const SPI_Status[]&lt;BR /&gt;&lt;BR /&gt;This will declare an array of 16-bit integers. You will fill it with the register values as they are out of reset. What you want is an array of pointers to 8-bit integers.&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;I would write a generic algorithm like this:&lt;BR /&gt;(this is for SCI, but it works in the same way for SPI, CAN, whatever)&lt;BR /&gt;&lt;BR /&gt;typedef volatile unsigned char* SCI_Type;&lt;BR /&gt;&lt;BR /&gt;#define SCI0 (&amp;amp;SCI0BDH)&lt;BR /&gt;#define SCI1 (&amp;amp;SCI1BDH)&lt;BR /&gt;&lt;BR /&gt;#define reg_SCIBDH(var) (*((SCI_Type)var + 0)) /* SCI Baud Rate Register High */&lt;BR /&gt;#define reg_SCIBDL(var) (*((SCI_Type)var + 1)) /* SCI Baud Rate Register Low */&lt;BR /&gt;#define reg_SCICR1(var) (*((SCI_Type)var + 2)) /* SCI Control Register1 */&lt;BR /&gt;#define reg_SCICR2(var) (*((SCI_Type)var + 3)) /* SCI Control Register 2 */&lt;BR /&gt;#define reg_SCISR1(var) (*((SCI_Type)var + 4)) /* SCI Status Register 1 */&lt;BR /&gt;#define reg_SCISR2(var) (*((SCI_Type)var + 5)) /* SCI Status Register 2 */&lt;BR /&gt;#define reg_SCIDRH(var) (*((SCI_Type)var + 6)) /* SCI Data Register High */&lt;BR /&gt;#define reg_SCIDRL(var) (*((SCI_Type)var + 7)) /* SCI Data Register Low */&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;main()&lt;BR /&gt;{&lt;BR /&gt;...&lt;BR /&gt;&lt;BR /&gt;reg_SCIBDL(SCI0) = something;&lt;BR /&gt;&lt;BR /&gt;myVariable = reg_SCIDRL(SCI0);&lt;BR /&gt;&lt;BR /&gt;}&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 30 Nov 2006 22:32:07 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Classic-Legacy-CodeWarrior/SPI-problem/m-p/138517#M1116</guid>
      <dc:creator>Lundin</dc:creator>
      <dc:date>2006-11-30T22:32:07Z</dc:date>
    </item>
  </channel>
</rss>

