<?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のトピックFRDM-KL26Z: Hardfault using PORT_SetPinMux function</title>
    <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/FRDM-KL26Z-Hardfault-using-PORT-SetPinMux-function/m-p/955592#M54893</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi, I am using the following:&lt;/P&gt;&lt;P&gt;EVM: FRDM-KL26Z&lt;/P&gt;&lt;P&gt;IDE: MCUXpresso IDE v11.0.1 [Build 2563] [2019-09-01]&lt;/P&gt;&lt;P&gt;SDK: SDK_2.2.0_FRDM-KL26Z&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I created a project by clicking the new project menu.&lt;/P&gt;&lt;P&gt;I step debug and found out at the &lt;STRONG&gt;PORT_SetPinMux&lt;/STRONG&gt; as shown below in the routine where it triggers hardfault ISR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;void BOARD_InitPins(void) {&lt;BR /&gt;&amp;nbsp; CLOCK_EnableClock(kCLOCK_PortA);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Port A Clock Gate Control: Clock enabled */&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; PORT_SetPinMux(PORTA, PIN1_IDX, kPORT_MuxAlt2);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* PORTA1 (pin 23) is configured as UART0_RX */&lt;BR /&gt;&amp;nbsp; PORT_SetPinMux(PORTA, PIN2_IDX, kPORT_MuxAlt2);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* PORTA2 (pin 24) is configured as UART0_TX */&lt;BR /&gt;&amp;nbsp; SIM-&amp;gt;SOPT5 = ((SIM-&amp;gt;SOPT5 &amp;amp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; (~(SIM_SOPT5_UART0TXSRC_MASK | SIM_SOPT5_UART0RXSRC_MASK))) /* Mask bits to zero which are setting */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | SIM_SOPT5_UART0TXSRC(SOPT5_UART0TXSRC_UART_TX)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* UART0 Transmit Data Source Select: UART0_TX pin */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | SIM_SOPT5_UART0RXSRC(SOPT5_UART0RXSRC_UART_RX)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* UART0 Receive Data Source Select: UART_RX pin */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; );&lt;BR /&gt;/* added*/&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;STRONG&gt;PORT_SetPinMux&lt;/STRONG&gt;(PORTD, PIN5_IDX, kPORT_MuxAsGpio);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // PORTD5 (pin 5) is configusred as gpio&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; PORT_SetPinMux(PORTE, PIN29_IDX, kPORT_MuxAsGpio);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // PORTE29 (pin 29) is configured as gpio&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; PORT_SetPinMux(PORTE, PIN31_IDX, kPORT_MuxAsGpio);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // PORTE17 (pin 31) is configured as gpio&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; GPIO_PinInit(GPIOE, PIN29_IDX, &amp;amp;gpio_setoutput_config);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; GPIO_PinInit(GPIOE, PIN31_IDX, &amp;amp;gpio_setoutput_config);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; GPIO_PinInit(GPIOD, PIN5_IDX, &amp;amp;gpio_setoutput_config);&lt;BR /&gt;&amp;nbsp; // added&lt;BR /&gt;/**/&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;What's wrong?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Neo&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Sun, 22 Sep 2019 07:25:02 GMT</pubDate>
    <dc:creator>numinga</dc:creator>
    <dc:date>2019-09-22T07:25:02Z</dc:date>
    <item>
      <title>FRDM-KL26Z: Hardfault using PORT_SetPinMux function</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/FRDM-KL26Z-Hardfault-using-PORT-SetPinMux-function/m-p/955592#M54893</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi, I am using the following:&lt;/P&gt;&lt;P&gt;EVM: FRDM-KL26Z&lt;/P&gt;&lt;P&gt;IDE: MCUXpresso IDE v11.0.1 [Build 2563] [2019-09-01]&lt;/P&gt;&lt;P&gt;SDK: SDK_2.2.0_FRDM-KL26Z&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I created a project by clicking the new project menu.&lt;/P&gt;&lt;P&gt;I step debug and found out at the &lt;STRONG&gt;PORT_SetPinMux&lt;/STRONG&gt; as shown below in the routine where it triggers hardfault ISR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;void BOARD_InitPins(void) {&lt;BR /&gt;&amp;nbsp; CLOCK_EnableClock(kCLOCK_PortA);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Port A Clock Gate Control: Clock enabled */&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; PORT_SetPinMux(PORTA, PIN1_IDX, kPORT_MuxAlt2);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* PORTA1 (pin 23) is configured as UART0_RX */&lt;BR /&gt;&amp;nbsp; PORT_SetPinMux(PORTA, PIN2_IDX, kPORT_MuxAlt2);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* PORTA2 (pin 24) is configured as UART0_TX */&lt;BR /&gt;&amp;nbsp; SIM-&amp;gt;SOPT5 = ((SIM-&amp;gt;SOPT5 &amp;amp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; (~(SIM_SOPT5_UART0TXSRC_MASK | SIM_SOPT5_UART0RXSRC_MASK))) /* Mask bits to zero which are setting */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | SIM_SOPT5_UART0TXSRC(SOPT5_UART0TXSRC_UART_TX)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* UART0 Transmit Data Source Select: UART0_TX pin */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; | SIM_SOPT5_UART0RXSRC(SOPT5_UART0RXSRC_UART_RX)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* UART0 Receive Data Source Select: UART_RX pin */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; );&lt;BR /&gt;/* added*/&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;STRONG&gt;PORT_SetPinMux&lt;/STRONG&gt;(PORTD, PIN5_IDX, kPORT_MuxAsGpio);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // PORTD5 (pin 5) is configusred as gpio&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; PORT_SetPinMux(PORTE, PIN29_IDX, kPORT_MuxAsGpio);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // PORTE29 (pin 29) is configured as gpio&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; PORT_SetPinMux(PORTE, PIN31_IDX, kPORT_MuxAsGpio);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // PORTE17 (pin 31) is configured as gpio&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; GPIO_PinInit(GPIOE, PIN29_IDX, &amp;amp;gpio_setoutput_config);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; GPIO_PinInit(GPIOE, PIN31_IDX, &amp;amp;gpio_setoutput_config);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; GPIO_PinInit(GPIOD, PIN5_IDX, &amp;amp;gpio_setoutput_config);&lt;BR /&gt;&amp;nbsp; // added&lt;BR /&gt;/**/&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;What's wrong?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Neo&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 22 Sep 2019 07:25:02 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/FRDM-KL26Z-Hardfault-using-PORT-SetPinMux-function/m-p/955592#M54893</guid>
      <dc:creator>numinga</dc:creator>
      <dc:date>2019-09-22T07:25:02Z</dc:date>
    </item>
    <item>
      <title>Re: FRDM-KL26Z: Hardfault using PORT_SetPinMux function</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/FRDM-KL26Z-Hardfault-using-PORT-SetPinMux-function/m-p/955593#M54894</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I already found the solution. I just need to enable the clock to the&amp;nbsp;portD and portE using &lt;SPAN style="color: #51626f; background-color: #ffffff;"&gt;CLOCK_EnableClock() function&lt;/SPAN&gt;.&lt;/P&gt;&lt;P&gt;Thanks anyway.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 23 Sep 2019 15:27:10 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/FRDM-KL26Z-Hardfault-using-PORT-SetPinMux-function/m-p/955593#M54894</guid>
      <dc:creator>numinga</dc:creator>
      <dc:date>2019-09-23T15:27:10Z</dc:date>
    </item>
  </channel>
</rss>

