<?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>MQX Software Solutions中的主题 _mqx_init_task() not completed before user tasks are started - bug?</title>
    <link>https://community.nxp.com/t5/MQX-Software-Solutions/mqx-init-task-not-completed-before-user-tasks-are-started-bug/m-p/334820#M10787</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Creating a PE + MQX project in KDS and one user task results in the user task blocking the init task (because the init task has its priority set to lowest + 1).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The main problem with this is when using auto initialization of e.g. GPIO, the user task cannot use GPIO since it is initialized *after* the user task is created and run (see below).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Should the _bsp_post_init() function be used to signal the user task that it is ok to proceed? This would require *all* user tasks to block until _bsp_post_init() gives clearance to proceed.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Wouldn't it be better if the init task had highest priority assuring it to complete before any other task is started? Isn't the purpose of the init task to *init* the system *before* anything else is run?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;void Components_Init(void)&lt;/P&gt;&lt;P&gt;{&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Debug console initialization */&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; DbgConsole_Init(BOARD_DEBUG_UART_INSTANCE, DEBUG_UART_BAUD, DEBUG_UART_TYPE);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; /*! Task1 Auto initialization start */ &lt;/P&gt;&lt;P&gt;&amp;nbsp; (void)Task1_Init();&lt;/P&gt;&lt;P&gt;&amp;nbsp; /*! Task1 Auto initialization end */&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp; /*! gpio1 Auto initialization start */&lt;/P&gt;&lt;P&gt;&amp;nbsp; GPIO_DRV_Init(NULL,gpio1_OutConfig0);&lt;/P&gt;&lt;P&gt;&amp;nbsp; /*! gpio1 Auto initialization end */&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 24 Feb 2015 23:07:50 GMT</pubDate>
    <dc:creator>björnhammarberg</dc:creator>
    <dc:date>2015-02-24T23:07:50Z</dc:date>
    <item>
      <title>_mqx_init_task() not completed before user tasks are started - bug?</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/mqx-init-task-not-completed-before-user-tasks-are-started-bug/m-p/334820#M10787</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Creating a PE + MQX project in KDS and one user task results in the user task blocking the init task (because the init task has its priority set to lowest + 1).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The main problem with this is when using auto initialization of e.g. GPIO, the user task cannot use GPIO since it is initialized *after* the user task is created and run (see below).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Should the _bsp_post_init() function be used to signal the user task that it is ok to proceed? This would require *all* user tasks to block until _bsp_post_init() gives clearance to proceed.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Wouldn't it be better if the init task had highest priority assuring it to complete before any other task is started? Isn't the purpose of the init task to *init* the system *before* anything else is run?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;void Components_Init(void)&lt;/P&gt;&lt;P&gt;{&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Debug console initialization */&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; DbgConsole_Init(BOARD_DEBUG_UART_INSTANCE, DEBUG_UART_BAUD, DEBUG_UART_TYPE);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; /*! Task1 Auto initialization start */ &lt;/P&gt;&lt;P&gt;&amp;nbsp; (void)Task1_Init();&lt;/P&gt;&lt;P&gt;&amp;nbsp; /*! Task1 Auto initialization end */&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp; /*! gpio1 Auto initialization start */&lt;/P&gt;&lt;P&gt;&amp;nbsp; GPIO_DRV_Init(NULL,gpio1_OutConfig0);&lt;/P&gt;&lt;P&gt;&amp;nbsp; /*! gpio1 Auto initialization end */&lt;/P&gt;&lt;P&gt;}&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 24 Feb 2015 23:07:50 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/mqx-init-task-not-completed-before-user-tasks-are-started-bug/m-p/334820#M10787</guid>
      <dc:creator>björnhammarberg</dc:creator>
      <dc:date>2015-02-24T23:07:50Z</dc:date>
    </item>
    <item>
      <title>Re: _mqx_init_task() not completed before user tasks are started - bug?</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/mqx-init-task-not-completed-before-user-tasks-are-started-bug/m-p/334821#M10788</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks for your comments Bjorn.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I will report this to development team.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards,&lt;/P&gt;&lt;P&gt;Carlos&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 02 Mar 2015 23:26:28 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/mqx-init-task-not-completed-before-user-tasks-are-started-bug/m-p/334821#M10788</guid>
      <dc:creator>Carlos_Musich</dc:creator>
      <dc:date>2015-03-02T23:26:28Z</dc:date>
    </item>
    <item>
      <title>Re: _mqx_init_task() not completed before user tasks are started - bug?</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/mqx-init-task-not-completed-before-user-tasks-are-started-bug/m-p/334822#M10789</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;This appears to be solved in KDS 3.0 + KSDK 1.2 as it looks like user tasks are now created by the main task along with the other components. The order of the components in the KDS 3.0 Components tree determines the order that components are created, so just make sure that OS_Task components are at the bottom of the tree (drag and drop).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank you development team and co.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Adrian.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 13 May 2015 14:32:31 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/mqx-init-task-not-completed-before-user-tasks-are-started-bug/m-p/334822#M10789</guid>
      <dc:creator>adyr</dc:creator>
      <dc:date>2015-05-13T14:32:31Z</dc:date>
    </item>
  </channel>
</rss>

