<?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 TWRADCDAC-LTC in MQX 4.0 in MQX Software Solutions</title>
    <link>https://community.nxp.com/t5/MQX-Software-Solutions/TWRADCDAC-LTC-in-MQX-4-0/m-p/234476#M6488</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi everyone,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="mce_paste_marker"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;I need to read from TWRADCDAC-LTC from a K60F120M board, and I am doing it via spi0. I have a working setup with MQX 3.8, and now I am trying to port it to MQX 4.0, but I can't get the spi driver install to work.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Here is working code for MQX 3.8:&lt;/P&gt;&lt;BLOCKQUOTE&gt;
&lt;P&gt; //Prepare the initialization struct&amp;nbsp;&amp;nbsp; &lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; init-&amp;gt;CHANNEL = 2;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; init-&amp;gt;CS = cspin;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; init-&amp;gt;TRANSFER_MODE = transfermode;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; init-&amp;gt;BAUD_RATE = baudrate;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; init-&amp;gt;CLOCK_SPEED = sysclock;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; init-&amp;gt;CLOCK_POL_PHASE = clockmode;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; init-&amp;gt;RX_BUFFER_SIZE = 1;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; init-&amp;gt;TX_BUFFER_SIZE = 1;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; &lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; //Set the pins to their secondary function&lt;/P&gt;
&lt;P&gt;&amp;nbsp; /* clock gate */&lt;/P&gt;
&lt;P&gt;&amp;nbsp; SIM_SCGC6 |= SIM_SCGC6_DSPI0_MASK|SIM_SCGC6_DSPI1_MASK;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; SIM_SCGC3 |= SIM_SCGC3_DSPI2_MASK;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; SIM_SCGC5 |= SIM_SCGC5_PORTD_MASK | SIM_SCGC5_PORTB_MASK;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; /* pin mux */&lt;/P&gt;
&lt;P&gt;&amp;nbsp; PORTD_PCR11 &amp;amp;= ~PORT_PCR_MUX_MASK;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; PORTD_PCR11 |= PORT_PCR_MUX(2); //SPI2_PCS0&lt;/P&gt;
&lt;P&gt;&amp;nbsp; PORTD_PCR12 &amp;amp;= ~PORT_PCR_MUX_MASK;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; PORTD_PCR12 |= PORT_PCR_MUX(2); //SPI2_SCK&lt;/P&gt;
&lt;P&gt;&amp;nbsp; PORTD_PCR13 &amp;amp;= ~PORT_PCR_MUX_MASK;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; PORTD_PCR13 |= PORT_PCR_MUX(2); //SPI2_SOUT&lt;/P&gt;
&lt;P&gt;&amp;nbsp; PORTD_PCR14 &amp;amp;= ~PORT_PCR_MUX_MASK;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; PORTD_PCR14 |= PORT_PCR_MUX(2); //SPI2_SIN&amp;nbsp;&amp;nbsp; &lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; &lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; //The fopen call doesn't install the driver with our initialization&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; _dspi_polled_install("spi0:", init); //Modified-for-Kinetis&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;SPI_INIT_STRUCT init_struct;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; SPI_PARAM_STRUCT params;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; DSPI_INIT_STRUCT dinit;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; dinit.CHANNEL = 2;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; dinit.CLOCK_SOURCE = sysclock;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; params.BAUDRATE = baudrate;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; params.CS = cspin;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; params.MODE = clockmode;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; params.ATTR = DSPI_ATTR_USE_ISR;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; params.DUMMY_PATTERN = 0xFFFFFFFF;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; init_struct.DEVIF = &amp;amp;_spi_dspi_devif;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; init_struct.DEVIF_INIT = &amp;amp;dinit;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; init_struct.PARAMS = params;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; //Set the pins to their secondary function&lt;/P&gt;
&lt;P&gt;&amp;nbsp; /* clock gate */&lt;/P&gt;
&lt;P&gt;&amp;nbsp; SIM_SCGC6 |= SIM_SCGC6_DSPI0_MASK|SIM_SCGC6_DSPI1_MASK;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; SIM_SCGC3 |= SIM_SCGC3_DSPI2_MASK;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; SIM_SCGC5 |= SIM_SCGC5_PORTD_MASK | SIM_SCGC5_PORTB_MASK;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; /* pin mux */&lt;/P&gt;
&lt;P&gt;&amp;nbsp; PORTD_PCR11 &amp;amp;= ~PORT_PCR_MUX_MASK;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; PORTD_PCR11 |= PORT_PCR_MUX(2); //SPI2_PCS0&lt;/P&gt;
&lt;P&gt;&amp;nbsp; PORTD_PCR12 &amp;amp;= ~PORT_PCR_MUX_MASK;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; PORTD_PCR12 |= PORT_PCR_MUX(2); //SPI2_SCK&lt;/P&gt;
&lt;P&gt;&amp;nbsp; PORTD_PCR13 &amp;amp;= ~PORT_PCR_MUX_MASK;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; PORTD_PCR13 |= PORT_PCR_MUX(2); //SPI2_SOUT&lt;/P&gt;
&lt;P&gt;&amp;nbsp; PORTD_PCR14 &amp;amp;= ~PORT_PCR_MUX_MASK;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; PORTD_PCR14 |= PORT_PCR_MUX(2); //SPI2_SIN&amp;nbsp;&amp;nbsp; &lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; &lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; //The fopen call doesn't install the driver with our initialization&lt;/P&gt;
&lt;P&gt;&amp;nbsp; _io_spi_install("spi0:", &amp;amp;init_struct);&lt;/P&gt;
&lt;SPAN class="mce_paste_marker"&gt;&lt;/SPAN&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;and I replaced it with this:&lt;/P&gt;&lt;P&gt;&lt;SPAN class="mce_paste_marker"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;BLOCKQUOTE&gt;
&lt;P&gt;SPI_INIT_STRUCT init_struct;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; SPI_PARAM_STRUCT params;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; DSPI_INIT_STRUCT dinit;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; dinit.CHANNEL = 2;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; dinit.CLOCK_SOURCE = sysclock;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; params.BAUDRATE = baudrate;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; params.CS = cspin;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; params.MODE = clockmode;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; params.ATTR = DSPI_ATTR_USE_ISR;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; params.DUMMY_PATTERN = 0xFFFFFFFF;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; init_struct.DEVIF = &amp;amp;_spi_dspi_devif;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; init_struct.DEVIF_INIT = &amp;amp;dinit;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; init_struct.PARAMS = params;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; //Set the pins to their secondary function&lt;/P&gt;
&lt;P&gt;&amp;nbsp; /* clock gate */&lt;/P&gt;
&lt;P&gt;&amp;nbsp; SIM_SCGC6 |= SIM_SCGC6_DSPI0_MASK|SIM_SCGC6_DSPI1_MASK;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; SIM_SCGC3 |= SIM_SCGC3_DSPI2_MASK;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; SIM_SCGC5 |= SIM_SCGC5_PORTD_MASK | SIM_SCGC5_PORTB_MASK;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; /* pin mux */&lt;/P&gt;
&lt;P&gt;&amp;nbsp; PORTD_PCR11 &amp;amp;= ~PORT_PCR_MUX_MASK;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; PORTD_PCR11 |= PORT_PCR_MUX(2); //SPI2_PCS0&lt;/P&gt;
&lt;P&gt;&amp;nbsp; PORTD_PCR12 &amp;amp;= ~PORT_PCR_MUX_MASK;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; PORTD_PCR12 |= PORT_PCR_MUX(2); //SPI2_SCK&lt;/P&gt;
&lt;P&gt;&amp;nbsp; PORTD_PCR13 &amp;amp;= ~PORT_PCR_MUX_MASK;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; PORTD_PCR13 |= PORT_PCR_MUX(2); //SPI2_SOUT&lt;/P&gt;
&lt;P&gt;&amp;nbsp; PORTD_PCR14 &amp;amp;= ~PORT_PCR_MUX_MASK;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; PORTD_PCR14 |= PORT_PCR_MUX(2); //SPI2_SIN&amp;nbsp;&amp;nbsp; &lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; //The fopen call doesn't install the driver with our initialization&lt;/P&gt;
&lt;P&gt;&amp;nbsp; _io_spi_install("spi0:", &amp;amp;init_struct);&lt;/P&gt;
&lt;/BLOCKQUOTE&gt;&lt;P&gt;But it isn't working. It gives no error at all, it seems to communicate with the ADC, but it doesn't write nor read the values.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Any hints would be greatly appreciated.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Sebastian&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Sun, 12 May 2013 01:23:22 GMT</pubDate>
    <dc:creator>aisebastian</dc:creator>
    <dc:date>2013-05-12T01:23:22Z</dc:date>
    <item>
      <title>TWRADCDAC-LTC in MQX 4.0</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/TWRADCDAC-LTC-in-MQX-4-0/m-p/234476#M6488</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi everyone,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="mce_paste_marker"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;I need to read from TWRADCDAC-LTC from a K60F120M board, and I am doing it via spi0. I have a working setup with MQX 3.8, and now I am trying to port it to MQX 4.0, but I can't get the spi driver install to work.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Here is working code for MQX 3.8:&lt;/P&gt;&lt;BLOCKQUOTE&gt;
&lt;P&gt; //Prepare the initialization struct&amp;nbsp;&amp;nbsp; &lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; init-&amp;gt;CHANNEL = 2;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; init-&amp;gt;CS = cspin;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; init-&amp;gt;TRANSFER_MODE = transfermode;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; init-&amp;gt;BAUD_RATE = baudrate;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; init-&amp;gt;CLOCK_SPEED = sysclock;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; init-&amp;gt;CLOCK_POL_PHASE = clockmode;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; init-&amp;gt;RX_BUFFER_SIZE = 1;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; init-&amp;gt;TX_BUFFER_SIZE = 1;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; &lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; //Set the pins to their secondary function&lt;/P&gt;
&lt;P&gt;&amp;nbsp; /* clock gate */&lt;/P&gt;
&lt;P&gt;&amp;nbsp; SIM_SCGC6 |= SIM_SCGC6_DSPI0_MASK|SIM_SCGC6_DSPI1_MASK;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; SIM_SCGC3 |= SIM_SCGC3_DSPI2_MASK;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; SIM_SCGC5 |= SIM_SCGC5_PORTD_MASK | SIM_SCGC5_PORTB_MASK;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; /* pin mux */&lt;/P&gt;
&lt;P&gt;&amp;nbsp; PORTD_PCR11 &amp;amp;= ~PORT_PCR_MUX_MASK;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; PORTD_PCR11 |= PORT_PCR_MUX(2); //SPI2_PCS0&lt;/P&gt;
&lt;P&gt;&amp;nbsp; PORTD_PCR12 &amp;amp;= ~PORT_PCR_MUX_MASK;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; PORTD_PCR12 |= PORT_PCR_MUX(2); //SPI2_SCK&lt;/P&gt;
&lt;P&gt;&amp;nbsp; PORTD_PCR13 &amp;amp;= ~PORT_PCR_MUX_MASK;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; PORTD_PCR13 |= PORT_PCR_MUX(2); //SPI2_SOUT&lt;/P&gt;
&lt;P&gt;&amp;nbsp; PORTD_PCR14 &amp;amp;= ~PORT_PCR_MUX_MASK;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; PORTD_PCR14 |= PORT_PCR_MUX(2); //SPI2_SIN&amp;nbsp;&amp;nbsp; &lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; &lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; //The fopen call doesn't install the driver with our initialization&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; _dspi_polled_install("spi0:", init); //Modified-for-Kinetis&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;SPI_INIT_STRUCT init_struct;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; SPI_PARAM_STRUCT params;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; DSPI_INIT_STRUCT dinit;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; dinit.CHANNEL = 2;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; dinit.CLOCK_SOURCE = sysclock;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; params.BAUDRATE = baudrate;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; params.CS = cspin;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; params.MODE = clockmode;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; params.ATTR = DSPI_ATTR_USE_ISR;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; params.DUMMY_PATTERN = 0xFFFFFFFF;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; init_struct.DEVIF = &amp;amp;_spi_dspi_devif;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; init_struct.DEVIF_INIT = &amp;amp;dinit;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; init_struct.PARAMS = params;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; //Set the pins to their secondary function&lt;/P&gt;
&lt;P&gt;&amp;nbsp; /* clock gate */&lt;/P&gt;
&lt;P&gt;&amp;nbsp; SIM_SCGC6 |= SIM_SCGC6_DSPI0_MASK|SIM_SCGC6_DSPI1_MASK;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; SIM_SCGC3 |= SIM_SCGC3_DSPI2_MASK;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; SIM_SCGC5 |= SIM_SCGC5_PORTD_MASK | SIM_SCGC5_PORTB_MASK;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; /* pin mux */&lt;/P&gt;
&lt;P&gt;&amp;nbsp; PORTD_PCR11 &amp;amp;= ~PORT_PCR_MUX_MASK;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; PORTD_PCR11 |= PORT_PCR_MUX(2); //SPI2_PCS0&lt;/P&gt;
&lt;P&gt;&amp;nbsp; PORTD_PCR12 &amp;amp;= ~PORT_PCR_MUX_MASK;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; PORTD_PCR12 |= PORT_PCR_MUX(2); //SPI2_SCK&lt;/P&gt;
&lt;P&gt;&amp;nbsp; PORTD_PCR13 &amp;amp;= ~PORT_PCR_MUX_MASK;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; PORTD_PCR13 |= PORT_PCR_MUX(2); //SPI2_SOUT&lt;/P&gt;
&lt;P&gt;&amp;nbsp; PORTD_PCR14 &amp;amp;= ~PORT_PCR_MUX_MASK;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; PORTD_PCR14 |= PORT_PCR_MUX(2); //SPI2_SIN&amp;nbsp;&amp;nbsp; &lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; &lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; //The fopen call doesn't install the driver with our initialization&lt;/P&gt;
&lt;P&gt;&amp;nbsp; _io_spi_install("spi0:", &amp;amp;init_struct);&lt;/P&gt;
&lt;SPAN class="mce_paste_marker"&gt;&lt;/SPAN&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;and I replaced it with this:&lt;/P&gt;&lt;P&gt;&lt;SPAN class="mce_paste_marker"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;BLOCKQUOTE&gt;
&lt;P&gt;SPI_INIT_STRUCT init_struct;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; SPI_PARAM_STRUCT params;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; DSPI_INIT_STRUCT dinit;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; dinit.CHANNEL = 2;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; dinit.CLOCK_SOURCE = sysclock;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; params.BAUDRATE = baudrate;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; params.CS = cspin;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; params.MODE = clockmode;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; params.ATTR = DSPI_ATTR_USE_ISR;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; params.DUMMY_PATTERN = 0xFFFFFFFF;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; init_struct.DEVIF = &amp;amp;_spi_dspi_devif;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; init_struct.DEVIF_INIT = &amp;amp;dinit;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; init_struct.PARAMS = params;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; //Set the pins to their secondary function&lt;/P&gt;
&lt;P&gt;&amp;nbsp; /* clock gate */&lt;/P&gt;
&lt;P&gt;&amp;nbsp; SIM_SCGC6 |= SIM_SCGC6_DSPI0_MASK|SIM_SCGC6_DSPI1_MASK;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; SIM_SCGC3 |= SIM_SCGC3_DSPI2_MASK;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; SIM_SCGC5 |= SIM_SCGC5_PORTD_MASK | SIM_SCGC5_PORTB_MASK;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; /* pin mux */&lt;/P&gt;
&lt;P&gt;&amp;nbsp; PORTD_PCR11 &amp;amp;= ~PORT_PCR_MUX_MASK;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; PORTD_PCR11 |= PORT_PCR_MUX(2); //SPI2_PCS0&lt;/P&gt;
&lt;P&gt;&amp;nbsp; PORTD_PCR12 &amp;amp;= ~PORT_PCR_MUX_MASK;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; PORTD_PCR12 |= PORT_PCR_MUX(2); //SPI2_SCK&lt;/P&gt;
&lt;P&gt;&amp;nbsp; PORTD_PCR13 &amp;amp;= ~PORT_PCR_MUX_MASK;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; PORTD_PCR13 |= PORT_PCR_MUX(2); //SPI2_SOUT&lt;/P&gt;
&lt;P&gt;&amp;nbsp; PORTD_PCR14 &amp;amp;= ~PORT_PCR_MUX_MASK;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; PORTD_PCR14 |= PORT_PCR_MUX(2); //SPI2_SIN&amp;nbsp;&amp;nbsp; &lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; //The fopen call doesn't install the driver with our initialization&lt;/P&gt;
&lt;P&gt;&amp;nbsp; _io_spi_install("spi0:", &amp;amp;init_struct);&lt;/P&gt;
&lt;/BLOCKQUOTE&gt;&lt;P&gt;But it isn't working. It gives no error at all, it seems to communicate with the ADC, but it doesn't write nor read the values.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Any hints would be greatly appreciated.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Sebastian&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 12 May 2013 01:23:22 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/TWRADCDAC-LTC-in-MQX-4-0/m-p/234476#M6488</guid>
      <dc:creator>aisebastian</dc:creator>
      <dc:date>2013-05-12T01:23:22Z</dc:date>
    </item>
    <item>
      <title>Re: TWRADCDAC-LTC in MQX 4.0</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/TWRADCDAC-LTC-in-MQX-4-0/m-p/234477#M6489</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Nevermind,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;apparently I don't need to install it. I had mapped the pins for spi2 to spi0 on mqx3.8, and now It works with fopen("spi2:").&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;However, I now have another issue. I tried switching it to spi1, and did all the jumper settings on TWRADCDAC-LTC (J25, J9, J11, J12, J13),but I get no response from it. Inspecting the debug header, I have no activity on SPI1_CLK.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have the clocks enabled with &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SIM_SCGC5 |= SIM_SCGC5_PORTE_MASK | SIM_SCGC5_PORTB_MASK | SIM_SCGC5_PORTD_MASK | SIM_SCGC5_PORTA_MASK | SIM_SCGC5_PORTC_MASK;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;And also, the pins are set to their alt2 function:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PORTE_PCR4 &amp;amp;= ~PORT_PCR_MUX_MASK;&lt;/P&gt;&lt;P&gt;PORTE_PCR4 |= PORT_PCR_MUX(2);&lt;/P&gt;&lt;P&gt;PORTE_PCR3 &amp;amp;= ~PORT_PCR_MUX_MASK;&lt;/P&gt;&lt;P&gt;PORTE_PCR3 |= PORT_PCR_MUX(2);&lt;/P&gt;&lt;P&gt;PORTE_PCR2 &amp;amp;= ~PORT_PCR_MUX_MASK;&lt;/P&gt;&lt;P&gt;PORTE_PCR2 |= PORT_PCR_MUX(2);&lt;/P&gt;&lt;P&gt;PORTE_PCR1 &amp;amp;= ~PORT_PCR_MUX_MASK;&lt;/P&gt;&lt;P&gt;PORTE_PCR1 |= PORT_PCR_MUX(2);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;It seems as if I have no CLK on spi1. I can't figure out what I am missing.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Sebastian&lt;/P&gt;&lt;P&gt;&lt;SPAN class="mce_paste_marker"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 12 May 2013 20:58:31 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/TWRADCDAC-LTC-in-MQX-4-0/m-p/234477#M6489</guid>
      <dc:creator>aisebastian</dc:creator>
      <dc:date>2013-05-12T20:58:31Z</dc:date>
    </item>
    <item>
      <title>Re: TWRADCDAC-LTC in MQX 4.0</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/TWRADCDAC-LTC-in-MQX-4-0/m-p/234478#M6490</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I figured it out, pins PTE3 and PTE1 needed to be set on ALT7 function, not ALT2. They were reversed in ALT2.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 16 May 2013 12:27:38 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/TWRADCDAC-LTC-in-MQX-4-0/m-p/234478#M6490</guid>
      <dc:creator>aisebastian</dc:creator>
      <dc:date>2013-05-16T12:27:38Z</dc:date>
    </item>
    <item>
      <title>Re: TWRADCDAC-LTC in MQX 4.0</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/TWRADCDAC-LTC-in-MQX-4-0/m-p/234479#M6491</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Sebastian, the default GPIO settings for SPI can be found in your BSP init_gpio.c:&lt;/P&gt;&lt;P&gt;c:\Freescale\Freescale_MQX_4_0\mqx\source\bsp\twrk60f120m\init_gpio.c&lt;/P&gt;&lt;P&gt;It is expected you would need to change it to fit your own BSP/HW.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In the file there is the function _bsp_dspi_io_init(number), which is called by MQX IO sub-system in response to the application level fopen("spi&amp;lt;num&amp;gt;:1");&lt;/P&gt;&lt;P&gt;This function also enables the clock for the SPI module. Default BSP configuration of the spi io driver can be found in:&lt;/P&gt;&lt;P&gt;c:\Freescale\Freescale_MQX_4_0\mqx\source\bsp\twrk60f120m\init_spi.c&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 17 May 2013 10:54:58 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/TWRADCDAC-LTC-in-MQX-4-0/m-p/234479#M6491</guid>
      <dc:creator>Martin_</dc:creator>
      <dc:date>2013-05-17T10:54:58Z</dc:date>
    </item>
  </channel>
</rss>

