<?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>Kinetis MicrocontrollersのトピックRe: Initialize TWR-MEM MMEM with Kinetis</title>
    <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/Initialize-TWR-MEM-MMEM-with-Kinetis/m-p/264942#M8461</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I forgot to add, I attempted this code on three tower configurations systems: TWR-K60N512, TWR-K60D100M and a TWR-K70F120M&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 07 Nov 2013 20:29:33 GMT</pubDate>
    <dc:creator>terrybiberdorf</dc:creator>
    <dc:date>2013-11-07T20:29:33Z</dc:date>
    <item>
      <title>Initialize TWR-MEM MMEM with Kinetis</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/Initialize-TWR-MEM-MMEM-with-Kinetis/m-p/264941#M8460</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I'm having problems trying to initialize the MMEM on my TWR-MEM board.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I'm using the following init code:&lt;/P&gt;&lt;P&gt;#define MRAM_START_ADDRESS (*(volatile unsigned char*)(0x60000000))&lt;/P&gt;&lt;P&gt;void FlexBusInit()&lt;/P&gt;&lt;P&gt;{&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; SIM_SCGC7 |= SIM_SCGC7_FLEXBUS_MASK; // Enable the clock to the FlexBus&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; SIM_CLKDIV1 |= SIM_CLKDIV1_OUTDIV3(0x0); //FlexBus Clock not divided&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Set the GPIO ports clocks&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; SIM_SCGC5 = SIM_SCGC5_PORTA_MASK | SIM_SCGC5_PORTB_MASK | SIM_SCGC5_PORTC_MASK |&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; SIM_SCGC5_PORTD_MASK | SIM_SCGC5_PORTE_MASK;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; PORTB_PCR11 = PORT_PCR_MUX(5); // fb_ad[18]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; PORTB_PCR16 = PORT_PCR_MUX(5); // fb_ad[17]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; PORTB_PCR17 = PORT_PCR_MUX(5); // fb_ad[16]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; PORTB_PCR18 = PORT_PCR_MUX(5); // fb_ad[15]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; PORTC_PCR0 = PORT_PCR_MUX(5); // fb_ad[14]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; PORTC_PCR1 = PORT_PCR_MUX(5); // fb_ad[13]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; PORTC_PCR2 = PORT_PCR_MUX(5); // fb_ad[12]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; PORTC_PCR4 = PORT_PCR_MUX(5); // fb_ad[11]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; PORTC_PCR5 = PORT_PCR_MUX(5); // fb_ad[10]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; PORTC_PCR6 = PORT_PCR_MUX(5); // fb_ad[9]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; PORTC_PCR7 = PORT_PCR_MUX(5); // fb_ad[8]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; PORTC_PCR8 = PORT_PCR_MUX(5); // fb_ad[7]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; PORTC_PCR9 = PORT_PCR_MUX(5); // fb_ad[6]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; PORTC_PCR10 = PORT_PCR_MUX(5); // fb_ad[5]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; PORTD_PCR2 = PORT_PCR_MUX(5); // fb_ad[4]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; PORTD_PCR3 = PORT_PCR_MUX(5); // fb_ad[3]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; PORTD_PCR4 = PORT_PCR_MUX(5); // fb_ad[2]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; PORTD_PCR5 = PORT_PCR_MUX(5); // fb_ad[1]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; PORTD_PCR6 = PORT_PCR_MUX(5); // fb_ad[0]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; PORTB_PCR20 = PORT_PCR_MUX(5); // fb_ad[31] used as d[7]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; PORTB_PCR21 = PORT_PCR_MUX(5); // fb_ad[30] used as d[6]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; PORTB_PCR22 = PORT_PCR_MUX(5); // fb_ad[29] used as d[5]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; PORTB_PCR23 = PORT_PCR_MUX(5); // fb_ad[28] used as d[4]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; PORTC_PCR12 = PORT_PCR_MUX(5); // fb_ad[27] used as d[3]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; PORTC_PCR13 = PORT_PCR_MUX(5); // fb_ad[26] used as d[2]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; PORTC_PCR14 = PORT_PCR_MUX(5); // fb_ad[25] used as d[1]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; PORTC_PCR15 = PORT_PCR_MUX(5); // fb_ad[24] used as d[0]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; PORTB_PCR19 = PORT_PCR_MUX(5); // fb_oe_b&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; PORTC_PCR11 = PORT_PCR_MUX(5); // fb_rw_b&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; PORTD_PCR1 = PORT_PCR_MUX(5); // fb_cs0_b&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; PORTD_PCR0 = PORT_PCR_MUX(5); // fb_ale&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; FB_CSAR0 = (unsigned int)&amp;amp;MRAM_START_ADDRESS; //Set Base address&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; FB_CSCR0 = ( (FB_CSCR_PS(1))&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // 8-bit port&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | (FB_CSCR_AA_MASK)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // auto-acknowledge&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | (FB_CSCR_WS(0x6)) );&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // 2 wait states&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; FB_CSMR0 = ( (FB_CSMR_BAM(0x7)) //Set base address mask for 512K address space&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | (FB_CSMR_V_MASK) );&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //Enable cs valid signal&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;But after I complete this API call I found that I only have access to every other 16K block of data.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;0x60000000 - 0x60001FFF -&amp;gt; work fine&lt;/P&gt;&lt;P&gt;0x60002000 - 0x60003FFF -&amp;gt; does not work&lt;/P&gt;&lt;P&gt;0x60004000 - 0x60005FFF -&amp;gt; work fine&lt;/P&gt;&lt;P&gt;0x60006000 - 0x60007FFF -&amp;gt; does not work&lt;/P&gt;&lt;P&gt;-------&lt;/P&gt;&lt;P&gt;0x6007C000 - 0x6007DFFF -&amp;gt; works fine&lt;/P&gt;&lt;P&gt;0x6007E000 - 0x6007FFFF -&amp;gt; does not work&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Any suggestions?&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 07 Nov 2013 20:02:32 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/Initialize-TWR-MEM-MMEM-with-Kinetis/m-p/264941#M8460</guid>
      <dc:creator>terrybiberdorf</dc:creator>
      <dc:date>2013-11-07T20:02:32Z</dc:date>
    </item>
    <item>
      <title>Re: Initialize TWR-MEM MMEM with Kinetis</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/Initialize-TWR-MEM-MMEM-with-Kinetis/m-p/264942#M8461</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I forgot to add, I attempted this code on three tower configurations systems: TWR-K60N512, TWR-K60D100M and a TWR-K70F120M&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 07 Nov 2013 20:29:33 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/Initialize-TWR-MEM-MMEM-with-Kinetis/m-p/264942#M8461</guid>
      <dc:creator>terrybiberdorf</dc:creator>
      <dc:date>2013-11-07T20:29:33Z</dc:date>
    </item>
    <item>
      <title>Re: Initialize TWR-MEM MMEM with Kinetis</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/Initialize-TWR-MEM-MMEM-with-Kinetis/m-p/264943#M8462</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;After receiving a call from my Atmel FAE,&amp;nbsp; the fix is to remove the J16 jumper.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Somehow the CPLD has corrupting the FlexBus communication.&lt;/P&gt;&lt;P&gt;Thanks Brad.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 08 Nov 2013 21:26:19 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/Initialize-TWR-MEM-MMEM-with-Kinetis/m-p/264943#M8462</guid>
      <dc:creator>terrybiberdorf</dc:creator>
      <dc:date>2013-11-08T21:26:19Z</dc:date>
    </item>
  </channel>
</rss>

