<?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: Touch software 2.0 for kinetis implementation problems</title>
    <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/Touch-software-2-0-for-kinetis-implementation-problems/m-p/644086#M39037</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Dear&amp;nbsp;&lt;A _jive_internal="true" class="" data-content-finding="Community" data-userid="281177" data-username="guillermomartinez" href="https://community.nxp.com/people/guillermomartinez"&gt;Guillermo Martinez&lt;/A&gt;,&lt;/P&gt;&lt;P&gt;Hope you are doing great.&lt;/P&gt;&lt;P&gt;I am working on you questions but can you tell me which board &amp;nbsp;are you using ?&lt;/P&gt;&lt;P&gt;Have a great day.&lt;/P&gt;&lt;P&gt;BR&amp;nbsp;&lt;/P&gt;&lt;P&gt;Jonathan&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 03 Jan 2017 23:33:20 GMT</pubDate>
    <dc:creator>Jonathan_Iglesias</dc:creator>
    <dc:date>2017-01-03T23:33:20Z</dc:date>
    <item>
      <title>Touch software 2.0 for kinetis implementation problems</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/Touch-software-2-0-for-kinetis-implementation-problems/m-p/644085#M39036</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello everyone,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I would like to implement the new touch software for kinetis (v 2.0). I have added all the files into my project and I have no errors but when I'm debugging there is a fail initialization.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The&amp;nbsp;code that I have been using is similar to the example which appears in the notes and is the following:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;&lt;STRONG&gt;static void keypad_callback(const struct nt_control *control,enum nt_control_keypad_event event,uint32_t index);&lt;/STRONG&gt;&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;&lt;STRONG&gt;static void APP_triggerElectrodeScan (&lt;/STRONG&gt;&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;&lt;STRONG&gt; void *pParam1,&lt;/STRONG&gt;&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;&lt;STRONG&gt; void *pParam2&lt;/STRONG&gt;&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;&lt;STRONG&gt;);&lt;/STRONG&gt;&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;&lt;STRONG&gt;uint8_t nt_memory_pool[1024] __attribute__((aligned (4))); /* Keil, GCC compiler */&lt;/STRONG&gt;&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;&lt;STRONG&gt;void APP_TSI_init (void)&lt;/STRONG&gt;&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;&lt;STRONG&gt;{&lt;/STRONG&gt;&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;&lt;STRONG&gt; int32_t result;&lt;/STRONG&gt;&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;&lt;STRONG&gt; SCH_TIME_T tsiTriggerPeriod;&lt;/STRONG&gt;&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;&lt;STRONG&gt; SCH_JOB_ACTION_T tsiTriggerAction;&lt;/STRONG&gt;&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;&lt;STRONG&gt;/* Electrodes */&lt;/STRONG&gt;&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;&lt;STRONG&gt; CLOCK_EnableClock(kCLOCK_PortB); /* Ungate the port E clock */&lt;/STRONG&gt;&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;&lt;STRONG&gt; PORT_SetPinMux(PORTB, 0U,kPORT_PinDisabledOrAnalog); /* PTB18 TSI0 channel 11 */&lt;/STRONG&gt;&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;&lt;STRONG&gt; PORT_SetPinMux(PORTB, 1U, kPORT_PinDisabledOrAnalog); /* PTB3 TSI0 channel 8 */&lt;/STRONG&gt;&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;&lt;STRONG&gt; PORT_SetPinMux(PORTB, 2U, kPORT_PinDisabledOrAnalog); /* PTB2 TSI0 channel 7 */&lt;/STRONG&gt;&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;&lt;STRONG&gt; PORT_SetPinMux(PORTB, 3U, kPORT_PinDisabledOrAnalog); /* PTB1 TSI0 channel 6 */&lt;/STRONG&gt;&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;&lt;STRONG&gt; PORT_SetPinMux(PORTB, 18U, kPORT_PinDisabledOrAnalog); /* PTB0 TSI0 channel 0 */&lt;/STRONG&gt;&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;&lt;STRONG&gt;if ((result = nt_init(&amp;amp;system_0, nt_memory_pool, sizeof(nt_memory_pool))) != NT_SUCCESS)&lt;/STRONG&gt;&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;&lt;STRONG&gt; {&lt;/STRONG&gt;&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;&lt;STRONG&gt; switch(result)&lt;/STRONG&gt;&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;&lt;STRONG&gt; {&lt;/STRONG&gt;&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;&lt;STRONG&gt; case NT_FAILURE:&lt;/STRONG&gt;&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;&lt;STRONG&gt; result=1;&lt;/STRONG&gt;&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;&lt;STRONG&gt; break;&lt;/STRONG&gt;&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;&lt;STRONG&gt; case NT_OUT_OF_MEMORY:&lt;/STRONG&gt;&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;&lt;STRONG&gt; result=2;&lt;/STRONG&gt;&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;&lt;STRONG&gt; break;&lt;/STRONG&gt;&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;&lt;STRONG&gt; }&lt;/STRONG&gt;&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;&lt;STRONG&gt; while(1); /* add code to handle this error */&lt;/STRONG&gt;&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;&lt;STRONG&gt; }&lt;/STRONG&gt;&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;&lt;STRONG&gt;nt_mem_get_free_size());&lt;/STRONG&gt;&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;&lt;STRONG&gt;nt_electrode_enable(&amp;amp;electrode_0, 0);&lt;/STRONG&gt;&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;&lt;STRONG&gt;nt_module_recalibrate(&amp;amp;tsi_module, NULL);&lt;/STRONG&gt;&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;&lt;STRONG&gt; nt_control_enable(&amp;amp;keypad_0);&lt;/STRONG&gt;&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;&lt;STRONG&gt;nt_control_keypad_register_callback(&amp;amp;keypad_0, &amp;amp;keypad_callback);&lt;/STRONG&gt;&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;&lt;STRONG&gt;/* Trigger scan every 5ms */&lt;/STRONG&gt;&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;&lt;STRONG&gt; tsiTriggerPeriod.value = 5;&lt;/STRONG&gt;&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;&lt;STRONG&gt; tsiTriggerPeriod.unit = SCH_TIME_UNIT_MSEC;&lt;/STRONG&gt;&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;&lt;STRONG&gt;tsiTriggerAction.pfAction = APP_triggerElectrodeScan;&lt;/STRONG&gt;&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;&lt;STRONG&gt; tsiTriggerAction.pParam1 = NULL;&lt;/STRONG&gt;&lt;/EM&gt;&lt;BR /&gt;&lt;EM&gt;&lt;STRONG&gt; tsiTriggerAction.pParam2 = NULL;&lt;/STRONG&gt;&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;&lt;STRONG&gt;SCH_addJobHB(&amp;amp;tsiTriggerPeriod, BOOL_TRUE, &amp;amp;tsiTriggerAction);&lt;/STRONG&gt;&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;&lt;STRONG&gt;}&lt;/STRONG&gt;&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have been debugging step by step and I have some problem in &lt;STRONG&gt;nt_init, &lt;/STRONG&gt;specially in _nt_mem_init function in:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;&lt;STRONG&gt; if(system-&amp;gt;memory.pool != NULL)&lt;BR /&gt; {&lt;BR /&gt; return NT_FAILURE;&lt;BR /&gt; }&lt;/STRONG&gt;&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;and then I have some problems in nt_system_init in&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;&lt;STRONG&gt; if(nt_kernel_data.modules == NULL)&lt;BR /&gt; {&lt;BR /&gt; return NT_OUT_OF_MEMORY;&lt;BR /&gt; }&lt;/STRONG&gt;&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Anyone has any idea about this problem?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 28 Dec 2016 09:34:59 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/Touch-software-2-0-for-kinetis-implementation-problems/m-p/644085#M39036</guid>
      <dc:creator>guillermomartin</dc:creator>
      <dc:date>2016-12-28T09:34:59Z</dc:date>
    </item>
    <item>
      <title>Re: Touch software 2.0 for kinetis implementation problems</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/Touch-software-2-0-for-kinetis-implementation-problems/m-p/644086#M39037</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Dear&amp;nbsp;&lt;A _jive_internal="true" class="" data-content-finding="Community" data-userid="281177" data-username="guillermomartinez" href="https://community.nxp.com/people/guillermomartinez"&gt;Guillermo Martinez&lt;/A&gt;,&lt;/P&gt;&lt;P&gt;Hope you are doing great.&lt;/P&gt;&lt;P&gt;I am working on you questions but can you tell me which board &amp;nbsp;are you using ?&lt;/P&gt;&lt;P&gt;Have a great day.&lt;/P&gt;&lt;P&gt;BR&amp;nbsp;&lt;/P&gt;&lt;P&gt;Jonathan&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 03 Jan 2017 23:33:20 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/Touch-software-2-0-for-kinetis-implementation-problems/m-p/644086#M39037</guid>
      <dc:creator>Jonathan_Iglesias</dc:creator>
      <dc:date>2017-01-03T23:33:20Z</dc:date>
    </item>
    <item>
      <title>Re: Touch software 2.0 for kinetis implementation problems</title>
      <link>https://community.nxp.com/t5/Kinetis-Microcontrollers/Touch-software-2-0-for-kinetis-implementation-problems/m-p/644087#M39038</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello &lt;A class="jx-jive-macro-user" href="https://community.nxp.com/people/jonathaniglesias"&gt;jonathaniglesias&lt;/A&gt;‌,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Sorry for the delayed answer,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The board&amp;nbsp;I am using is a customize one, this is not a development board.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Could you have any idea where the problem comes from?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best Regards.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 13 Feb 2017 14:01:38 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Microcontrollers/Touch-software-2-0-for-kinetis-implementation-problems/m-p/644087#M39038</guid>
      <dc:creator>guillermomartin</dc:creator>
      <dc:date>2017-02-13T14:01:38Z</dc:date>
    </item>
  </channel>
</rss>

