<?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>Other NXP Products中的主题 MPC555 QSPI register</title>
    <link>https://community.nxp.com/t5/Other-NXP-Products/MPC555-QSPI-register/m-p/132982#M137</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;Hi,&lt;/DIV&gt;&lt;DIV&gt;I´m trying to set up a QSPI communication with the MPC555 (master)&amp;nbsp;and a Fujitsu Microcontroller (slave). I wrote an external c-function in which I set the registers (global reg, control reg, ...). In Simulink I created a method to read these registers an send it via CAN (just to control, if its set correctly). But every time I set just a single bit in the control register 2 or 3 I don´t receive an answer from the called functions. As if the communication was disabled or something... I already took care of the fact to write the registers in the&amp;nbsp;specified&amp;nbsp;order, but I can´t find a solution. Does anybody know, how to initialize the QSPI or is it supposed to be that way???&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;kind regards&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Christian&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Mon, 07 May 2007 21:15:32 GMT</pubDate>
    <dc:creator>csjessid</dc:creator>
    <dc:date>2007-05-07T21:15:32Z</dc:date>
    <item>
      <title>MPC555 QSPI register</title>
      <link>https://community.nxp.com/t5/Other-NXP-Products/MPC555-QSPI-register/m-p/132982#M137</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;Hi,&lt;/DIV&gt;&lt;DIV&gt;I´m trying to set up a QSPI communication with the MPC555 (master)&amp;nbsp;and a Fujitsu Microcontroller (slave). I wrote an external c-function in which I set the registers (global reg, control reg, ...). In Simulink I created a method to read these registers an send it via CAN (just to control, if its set correctly). But every time I set just a single bit in the control register 2 or 3 I don´t receive an answer from the called functions. As if the communication was disabled or something... I already took care of the fact to write the registers in the&amp;nbsp;specified&amp;nbsp;order, but I can´t find a solution. Does anybody know, how to initialize the QSPI or is it supposed to be that way???&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;kind regards&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Christian&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 07 May 2007 21:15:32 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Other-NXP-Products/MPC555-QSPI-register/m-p/132982#M137</guid>
      <dc:creator>csjessid</dc:creator>
      <dc:date>2007-05-07T21:15:32Z</dc:date>
    </item>
    <item>
      <title>Re: MPC555 QSPI register</title>
      <link>https://community.nxp.com/t5/Other-NXP-Products/MPC555-QSPI-register/m-p/132983#M138</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt;&lt;/DIV&gt;Anyone with any tips on good practices when debugging spi communication.&amp;nbsp; Could be a problem with my initialization or with my external eeprom device.&amp;nbsp; i have an oscilloscope but don't know how to use it as a protocol analyzer.&amp;nbsp; [hyperterminal?, cheap external equipment???]&amp;nbsp; want to know what others use.&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;First is my intialization which includes sci0 and spi.&lt;BR /&gt;Then i include my 2 functions which set commands and transfers data out the queue.&amp;nbsp; Do i have the right concept?&amp;nbsp; [more curious on how to use received buffer ram(read function).]&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;void setup_qsmcm()&lt;BR /&gt;{&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //Has 2 sci interfaces and has 1 qspi&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.QSMCR.B.STOP = 0;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.QSMCR.B.FRZ1 = 0;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.QSMCR.B.SUPV = 0;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; //keep registers access as global not restricted&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //Setup Interrupt Pins&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.QDSCI_IL.B.ILDSCI = 5; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // define SCIIRQ at level 5&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.SCC1R1.B.TIE = 0;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // disable transmit interrupt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.SCC1R1.B.TCIE = 0;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // disable transmit complete interrupt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.SCC1R1.B.RIE = 1;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // enable receiver interrupt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.SCC1R1.B.ILIE = 0;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // disable idle-line interrupt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //Before changing register values, allow the SCI to complete the current transfer,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //then disable the receiver and transmitter.&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.SCC1R0.B.SC1BR = 40000000/32/9600; &amp;nbsp;&amp;nbsp;&amp;nbsp; // Set 9600 Baud 40000000/32/9600; = 0b0000010000010;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //SCI Control Register&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.SCC1R1.B.LOOPS = 0;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.SCC1R1.B.WOMS = 0;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // normal CMOS output [only when configured as output txd]&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.SCC1R1.B.ILT = 0; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // idle-line; 0=short; 1=long&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.SCC1R1.B.PT = 0;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // 0 = even; 1 = odd&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.SCC1R1.B.PE = 0;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // parity disabled&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.SCC1R1.B.M = 0;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // mode select: 0 = 10 bit mode; 1 = 11 bit mode&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.SCC1R1.B.WAKE = 0;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // wakup by address mark; 0 = idle line detection; 1 = address mark (last bit set)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.SCC1R1.B.RWU = 0;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // normal receiver operation (received data recognized); 1 = wakeup mode enabled (ignore data until awakened)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.SCC1R1.B.SBK = 0;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // send break 0=normal; 1 = break frame(s)&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.SC1DR.R = 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; // intialize first char to transmit, aka, null&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.SCC2R0.B.SC2BR = 0;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // disable baud rate generator for sci2&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.SCC2R1.B.LOOPS = 0;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.SCC2R1.B.WOMS = 0;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.SCC2R1.B.ILT = 0;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.SCC2R1.B.PT = 0;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.SCC2R1.B.PE = 0;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.SCC2R1.B.M = 0;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.SCC2R1.B.WAKE = 0;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.SCC2R1.B.TIE = 0;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.SCC2R1.B.TCIE = 0;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.SCC2R1.B.RIE = 0;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.SCC2R1.B.ILIE = 0;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.SCC2R1.B.RWU = 0;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.SCC2R1.B.SBK = 0;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.SCC2R1.B.TE = 0;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.SCC2R1.B.RE = 0;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //desktop to controller communication&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.SCC1R1.B.TE = 1; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // Enable Transmitter&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.SCC1R1.B.RE = 1; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // Enable Reciever&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /*&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // when sci as a queue&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.SCRQ[0].B&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // 16 bits; 16 blocks&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.SCTQ[0].B&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // 16 bits; 16 blocks&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // above 2 sci initialized&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //-----------------------------------------------------------------------&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // below 1 qspi initialized&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.SPCR1.B.SPE = 0;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; //disable qspi&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // PORTQS Pin Assignment Register (Basically prepare to be setup as a QSPI)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.PQSPAR.B.QPAPCS3 = 1; &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 = Pin is assigned PCS3 function else GPIO pin&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.PQSPAR.B.QPAPCS2 = 1;&amp;nbsp;&amp;nbsp;&amp;nbsp; &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 = Pin is assigned PCS2 function else GPIO pin&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.PQSPAR.B.QPAPCS1 = 1; &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 = Pin is assigned PCS1 function else GPIO pin&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.PQSPAR.B.QPAPCS0 = 1; &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 = Pin is assigned PCS[0] function else GPIO pin&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.PQSPAR.B.QPAMOSI = 1; &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 = Pin is assigned MOSI function&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.PQSPAR.B.QPAMISO = 1; &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 = Pin is assigned MISO function&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //PORTQS Data Direction Register (DDRQS)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.DDRQS.B.QDDPCS3 = 1;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.DDRQS.B.QDDPCS2 = 1;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.DDRQS.B.QDDPCS1 = 1;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.DDRQS.B.QDDPCS0 = 1;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // pins serve as chip selecter; therefore enable all PCS pins as outputs.&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // currently only using QDDPCS0&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.DDRQS.B.QDDSCK&amp;nbsp; = 1; &amp;nbsp;&amp;nbsp;&amp;nbsp; &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 = Pin direction is output&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.DDRQS.B.QDDMOSI = 1; &amp;nbsp;&amp;nbsp;&amp;nbsp; &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 = Pin direction is output; master output slave input&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.DDRQS.B.QDDMISO = 0; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // 0 = Pin direction is input; master input slave ouput&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.SPCR0.B.MSTR = 1;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &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 = QSPI is the system master and can initiate transmission to external SPI devices.&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.SPCR0.B.WOMQ = 0;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // 0 = Pins designated for output by DDRQS operate in normal mode.&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.SPCR0.B.BITS = 0b1000;&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 bits per transfer&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.SPCR0.B.CPOL = 0;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // Clock polarity.&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.SPCR0.B.CPHA = 1;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // Clock phase.&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.SPCR0.B.SPBR = 0x03;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // 6.66mhz value between 2-255&amp;nbsp; fsys/(2*0x03) = 6.66E6&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.SPCR1.B.DSCKL = 0x2;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // 50 nano second delay (PCS to SCK Delay) 1 to 127&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.SPCR1.B.DTL = 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; // Length of delay after transfer. 1 to 255&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.SPCR2.B.WREN = 0;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // disable wrap around mode&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.SPCR2.B.WRTO = 0;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // Wrap to pointer address 0x0&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; // these settings disable spi after completion&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.SPCR2.B.ENDQP&amp;nbsp;&amp;nbsp;&amp;nbsp; = 0x0;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // Ending queue pointer. [application should only move endqp]&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.SPCR2.B.NEWQP&amp;nbsp;&amp;nbsp;&amp;nbsp; = 0x0;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // New queue pointer value.&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.SPCR3.B.LOOPQ = 0;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.SPCR3.B.HALT = 0;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // interrupt pins&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.SPCR2.B.SPIFIE = 0; // SPI finished interrupt enable.&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.SPCR3.B.HMIE = 0;&lt;BR /&gt;}&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;void eeprom_read(unsigned char address, unsigned char *data, unsigned char length)&lt;BR /&gt;{&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; int i = 0;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.SPCR2.B.ENDQP&amp;nbsp;&amp;nbsp;&amp;nbsp; = 0x1;&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; for(i=0; i&amp;lt;=3; i++)&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.COMDRAM[i].B.CONT&amp;nbsp; = 0;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.COMDRAM[i].B.BITSE = 1;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.COMDRAM[i].B.DT&amp;nbsp;&amp;nbsp;&amp;nbsp; = 1;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.COMDRAM[i].B.DSCK&amp;nbsp; = 1;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.COMDRAM[i].B.PCS3&amp;nbsp; = 0;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.COMDRAM[i].B.PCS2&amp;nbsp; = 0;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.COMDRAM[i].B.PCS1&amp;nbsp; = 0;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.COMDRAM[i].B.PCS0&amp;nbsp; = 1;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.TRANRAM[0].B = 0x03;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // Send Read OpCode&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.TRANRAM[1].B = 0x00;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // high address&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.TRANRAM[2].B = 0x10;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // low address&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.TRANRAM[3].B = 0x0;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // dummy data&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.SPCR1.B.SPE = 1;&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; while(QSMCM.SPSR.B.SPIF != 1);&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; *data = (unsigned char)QSMCM.RECRAM[3].B;&lt;BR /&gt;}&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;void eeprom_writechar(unsigned int address, char data )&lt;BR /&gt;{&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; int i = 0;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.SPCR2.B.ENDQP&amp;nbsp;&amp;nbsp;&amp;nbsp; = 0x3;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // Ending queue pointer; 0x0 - 0x1F = 0-31;&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; // Execution of 0 and 1 commands&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; for(i=0; i&amp;lt;=4; i++)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.COMDRAM[i].B.CONT&amp;nbsp; = 0; &amp;nbsp;&amp;nbsp;&amp;nbsp; // 0 = Control of chip selects returned to PORTQS after transfer is complete.&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.COMDRAM[i].B.BITSE = 1; &amp;nbsp;&amp;nbsp;&amp;nbsp; // 1 = Number of bits set in BITS field of SPCR0.&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.COMDRAM[i].B.DT&amp;nbsp;&amp;nbsp;&amp;nbsp; = 1; &amp;nbsp;&amp;nbsp;&amp;nbsp; // 1 = SPCR1 DTL[7:0] specifies delay after transfer PCS valid to SCK.&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.COMDRAM[i].B.DSCK&amp;nbsp; = 1; &amp;nbsp;&amp;nbsp;&amp;nbsp; // 1 = SPCR1 DSCKL[6:0] specifies delay from PCS valid to SCK.&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.COMDRAM[i].B.PCS3&amp;nbsp; = 0;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.COMDRAM[i].B.PCS2&amp;nbsp; = 0;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.COMDRAM[i].B.PCS1&amp;nbsp; = 0;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.COMDRAM[i].B.PCS0&amp;nbsp; = 1;&amp;nbsp;&amp;nbsp;&amp;nbsp; // select this spi device for serial receive &amp;amp; transfer&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // up to 32 commands;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.TRANRAM[0].B = 0x06;&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 Enable prior to Write&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.TRANRAM[1].B = 0x02;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // Send Write OpCode&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.TRANRAM[2].B = 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; // high address&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.TRANRAM[3].B = 0x11;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // low address&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.TRANRAM[4].B = data;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // 16 bits; 32 transmit data blocks&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; QSMCM.SPCR1.B.SPE = 1;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &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 = QSPI is enabled. Pins allocated by PQSPAR are controlled by the QSPI.&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; // since wrap around is disabled... qspi is disabled after execution of commands&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; while(QSMCM.SPSR.B.SPIF != 1);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; // all commands in spi have been completed.&lt;BR /&gt;}&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 16 Jun 2007 03:30:23 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Other-NXP-Products/MPC555-QSPI-register/m-p/132983#M138</guid>
      <dc:creator>leblanc</dc:creator>
      <dc:date>2007-06-16T03:30:23Z</dc:date>
    </item>
  </channel>
</rss>

