<?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>i.MX RT Crossover MCUsのトピックRe: PIT Channel 0 and Channel 1 does not work simultaneously.</title>
    <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/PIT-Channel-0-and-Channel-1-does-not-work-simultaneously/m-p/1009716#M6373</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello,&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I made some tests on my side with the Evaluation Board.&amp;nbsp;It seems that the Chain mode is activated by default on Channel 1 of the PIT. &lt;A class="jx-jive-macro-user" href="https://community.nxp.com/people/vishaldahiwal@gmail.com"&gt;vishaldahiwal@gmail.com&lt;/A&gt;, If you want to use Channel 1, as a workaround, you will need to deactivate the chain mode manually before initializing the channel. For example, before calling the function&amp;nbsp; &lt;EM&gt;&amp;nbsp;PIT_StartTimer(PIT_PERIPHERAL, PIT_CHANNEL_1);&lt;/EM&gt; You will need to deactivate the chain mode, this can be done with the following instruction: &lt;EM&gt;PIT-&amp;gt;CHANNEL[1].TCTRL &amp;amp;= ~PIT_TCTRL_CHN_MASK;&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;Have a great day,&lt;BR /&gt;Victor&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Mon, 17 Feb 2020 20:46:48 GMT</pubDate>
    <dc:creator>victorjimenez</dc:creator>
    <dc:date>2020-02-17T20:46:48Z</dc:date>
    <item>
      <title>PIT Channel 0 and Channel 1 does not work simultaneously.</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/PIT-Channel-0-and-Channel-1-does-not-work-simultaneously/m-p/1009708#M6365</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;I am using I.MXRT1064.&lt;/P&gt;&lt;P&gt;I have configured the PIT channel 0 for 25ms and Channel 1 for 1ms. Both in interrupt mode.&lt;/P&gt;&lt;P&gt;But interrupt triggers only for 25ms but not for 1ms.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Following are the screenshots of configuration.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="pastedImage_1.png"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/103320iB9A62E60E83074D8/image-size/large?v=v2&amp;amp;px=999" role="button" title="pastedImage_1.png" alt="pastedImage_1.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="pastedImage_3.png"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/103359iB57B26A086149A56/image-size/large?v=v2&amp;amp;px=999" role="button" title="pastedImage_3.png" alt="pastedImage_3.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The interrupt routine is written as below,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="pastedImage_4.png"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/103398i400E392DED50F690/image-size/large?v=v2&amp;amp;px=999" role="button" title="pastedImage_4.png" alt="pastedImage_4.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please let me know if anything is missing here.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Vishal&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 10 Feb 2020 13:59:30 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/PIT-Channel-0-and-Channel-1-does-not-work-simultaneously/m-p/1009708#M6365</guid>
      <dc:creator>vishaldahiwal</dc:creator>
      <dc:date>2020-02-10T13:59:30Z</dc:date>
    </item>
    <item>
      <title>Re: PIT Channel 0 and Channel 1 does not work simultaneously.</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/PIT-Channel-0-and-Channel-1-does-not-work-simultaneously/m-p/1009709#M6366</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Vishal&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Your interrupt handler is correct so it is probably an issue with the PIT configuration.&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;I just tested the following code that operated correctly (channel 0 interrupts ever 500us and channel 1 interrupts every 20ms)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE class="language-c line-numbers"&gt;&lt;CODE&gt;iMXRT_PIT_CTL &lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;ptrCtl &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;iMXRT_PIT_CTL &lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;PIT_CTL_ADD&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;        &lt;SPAN class="comment token"&gt;// channel 0&lt;/SPAN&gt;
&lt;SPAN class="token function"&gt;POWER_UP_ATOMIC&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;1&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; PIT_CLOCKS&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;                              &lt;SPAN class="comment token"&gt;// ensure the PIT module is powered up&lt;/SPAN&gt;
PIT_MCR &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="number token"&gt;0&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;                                                 &lt;SPAN class="comment token"&gt;// ensure the PIT module is clocked&lt;/SPAN&gt;
&lt;SPAN class="token function"&gt;fnEnterInterrupt&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;irq_PIT_ID&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; PIT_settings&lt;SPAN class="operator token"&gt;-&amp;gt;&lt;/SPAN&gt;int_priority&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; _PIT_Interrupt&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt; &lt;SPAN class="comment token"&gt;// ensure that the handler for the PIT module is entered&lt;/SPAN&gt;
ptrCtl&lt;SPAN class="operator token"&gt;-&amp;gt;&lt;/SPAN&gt;PIT_LDVAL &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="number token"&gt;0x29d9&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;                                  &lt;SPAN class="comment token"&gt;// first channel's interrupt rate (500us)&lt;/SPAN&gt;
&lt;SPAN class="token function"&gt;WRITE_ONE_TO_CLEAR&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;ptrCtl&lt;SPAN class="operator token"&gt;-&amp;gt;&lt;/SPAN&gt;PIT_TFLG&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; PIT_TFLG_TIF&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;          &lt;SPAN class="comment token"&gt;// clear possible pending interrupt&lt;/SPAN&gt;
ptrCtl&lt;SPAN class="operator token"&gt;-&amp;gt;&lt;/SPAN&gt;PIT_TCTRL &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;PIT_TCTRL_TEN &lt;SPAN class="operator token"&gt;|&lt;/SPAN&gt; PIT_TCTRL_TIE&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;         &lt;SPAN class="comment token"&gt;// start PIT with interrupt enabled&lt;/SPAN&gt;
ptrCtl&lt;SPAN class="operator token"&gt;++&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;                                                    &lt;SPAN class="comment token"&gt;// move to channel 1&lt;/SPAN&gt;
ptrCtl&lt;SPAN class="operator token"&gt;-&amp;gt;&lt;/SPAN&gt;PIT_LDVAL &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="number token"&gt;0x68a0f&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;                                 &lt;SPAN class="comment token"&gt;// second channel's interrupt rate (20ms)&lt;/SPAN&gt;
&lt;SPAN class="token function"&gt;WRITE_ONE_TO_CLEAR&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;ptrCtl&lt;SPAN class="operator token"&gt;-&amp;gt;&lt;/SPAN&gt;PIT_TFLG&lt;SPAN class="punctuation token"&gt;,&lt;/SPAN&gt; PIT_TFLG_TIF&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;          &lt;SPAN class="comment token"&gt;// clear possible pending interrupt&lt;/SPAN&gt;
ptrCtl&lt;SPAN class="operator token"&gt;-&amp;gt;&lt;/SPAN&gt;PIT_TCTRL &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;PIT_TCTRL_TEN &lt;SPAN class="operator token"&gt;|&lt;/SPAN&gt; PIT_TCTRL_TIE&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;         &lt;SPAN class="comment token"&gt;// start PIT with interrupt enabled&lt;/SPAN&gt;
&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;Code extrapolated from uTasker solution.&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Mark&lt;BR /&gt;&lt;EM&gt;[uTasker project developer for Kinetis and i.MX RT]&lt;/EM&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 11 Feb 2020 18:52:46 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/PIT-Channel-0-and-Channel-1-does-not-work-simultaneously/m-p/1009709#M6366</guid>
      <dc:creator>mjbcswitzerland</dc:creator>
      <dc:date>2020-02-11T18:52:46Z</dc:date>
    </item>
    <item>
      <title>Re: PIT Channel 0 and Channel 1 does not work simultaneously.</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/PIT-Channel-0-and-Channel-1-does-not-work-simultaneously/m-p/1009710#M6367</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Mark,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The configuration seems similar. I tried it but did not work. As I am using the MCUXpresso, the code is auto generated.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I observed that the TFLG is not set for Channel 1. It sets for Channel 0.&lt;/P&gt;&lt;P&gt;The below code always returns 0 for channel 1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="pastedImage_1.png"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/98914i42BBD8E6D267A46A/image-size/large?v=v2&amp;amp;px=999" role="button" title="pastedImage_1.png" alt="pastedImage_1.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Vishal&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 14 Feb 2020 07:01:16 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/PIT-Channel-0-and-Channel-1-does-not-work-simultaneously/m-p/1009710#M6367</guid>
      <dc:creator>vishaldahiwal</dc:creator>
      <dc:date>2020-02-14T07:01:16Z</dc:date>
    </item>
    <item>
      <title>Re: PIT Channel 0 and Channel 1 does not work simultaneously.</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/PIT-Channel-0-and-Channel-1-does-not-work-simultaneously/m-p/1009711#M6368</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Vishal&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Can you show the generated code? [all of it]&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Mark&lt;/P&gt;&lt;P&gt;&lt;EM&gt;[uTasker project developer for Kinetis and i.MX RT]&lt;/EM&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 14 Feb 2020 22:10:01 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/PIT-Channel-0-and-Channel-1-does-not-work-simultaneously/m-p/1009711#M6368</guid>
      <dc:creator>mjbcswitzerland</dc:creator>
      <dc:date>2020-02-14T22:10:01Z</dc:date>
    </item>
    <item>
      <title>Re: PIT Channel 0 and Channel 1 does not work simultaneously.</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/PIT-Channel-0-and-Channel-1-does-not-work-simultaneously/m-p/1009712#M6369</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Mark,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Following are the autogenerated code files.&lt;/P&gt;&lt;P&gt;1. peripherals.c&lt;/P&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;P&gt;/***********************************************************************************************************************&lt;BR /&gt;&amp;nbsp;* This file was generated by the MCUXpresso Config Tools. Any manual edits made to this file&lt;BR /&gt;&amp;nbsp;* will be overwritten if the respective MCUXpresso Config Tools is used to update this file.&lt;BR /&gt;&amp;nbsp;**********************************************************************************************************************/&lt;BR /&gt;&lt;BR /&gt;/* clang-format off */&lt;BR /&gt;/* TEXT BELOW IS USED AS SETTING FOR TOOLS *************************************&lt;BR /&gt;!!GlobalInfo&lt;BR /&gt;product: Peripherals v7.0&lt;BR /&gt;processor: MIMXRT1064xxxxA&lt;BR /&gt;package_id: MIMXRT1064DVL6A&lt;BR /&gt;mcu_data: ksdk2_0&lt;BR /&gt;processor_version: 7.0.1&lt;BR /&gt;board: MIMXRT1064-EVK&lt;BR /&gt;functionalGroups:&lt;BR /&gt;- name: BOARD_InitPeripherals&lt;BR /&gt;&amp;nbsp; UUID: baf1d3cb-dc69-4730-83e8-c8fc29113df1&lt;BR /&gt;&amp;nbsp; called_from_default_init: true&lt;BR /&gt;&amp;nbsp; selectedCore: core0&lt;BR /&gt;&amp;nbsp;* BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR TOOLS **********/&lt;BR /&gt;&lt;BR /&gt;/* TEXT BELOW IS USED AS SETTING FOR TOOLS *************************************&lt;BR /&gt;component:&lt;BR /&gt;- type: 'system'&lt;BR /&gt;- type_id: 'system_54b53072540eeeb8f8e9343e71f28176'&lt;BR /&gt;- global_system_definitions: []&lt;BR /&gt;&amp;nbsp;* BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR TOOLS **********/&lt;BR /&gt;&lt;BR /&gt;/* TEXT BELOW IS USED AS SETTING FOR TOOLS *************************************&lt;BR /&gt;component:&lt;BR /&gt;- type: 'msg'&lt;BR /&gt;- type_id: 'msg_6e2baaf3b97dbeef01c0043275f9a0e7'&lt;BR /&gt;- global_messages: []&lt;BR /&gt;&amp;nbsp;* BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR TOOLS **********/&lt;BR /&gt;/* clang-format on */&lt;BR /&gt;&lt;BR /&gt;/***********************************************************************************************************************&lt;BR /&gt;&amp;nbsp;* Included files&lt;BR /&gt;&amp;nbsp;**********************************************************************************************************************/&lt;BR /&gt;#include "peripherals.h"&lt;BR /&gt;&lt;BR /&gt;/***********************************************************************************************************************&lt;BR /&gt;&amp;nbsp;* BOARD_InitPeripherals functional group&lt;BR /&gt;&amp;nbsp;**********************************************************************************************************************/&lt;BR /&gt;/***********************************************************************************************************************&lt;BR /&gt;&amp;nbsp;* LPSPI1 initialization code&lt;BR /&gt;&amp;nbsp;**********************************************************************************************************************/&lt;BR /&gt;/* clang-format off */&lt;BR /&gt;/* TEXT BELOW IS USED AS SETTING FOR TOOLS *************************************&lt;BR /&gt;instance:&lt;BR /&gt;- name: 'LPSPI1'&lt;BR /&gt;- type: 'lpspi'&lt;BR /&gt;- mode: 'polling'&lt;BR /&gt;- custom_name_enabled: 'true'&lt;BR /&gt;- type_id: 'lpspi_6e21a1e0a09f0a012d683c4f91752db8'&lt;BR /&gt;- functional_group: 'BOARD_InitPeripherals'&lt;BR /&gt;- peripheral: 'LPSPI1'&lt;BR /&gt;- config_sets:&lt;BR /&gt;&amp;nbsp; - main:&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; - mode: 'kLPSPI_Master'&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; - clockSource: 'LpspiClock'&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; - clockSourceFreq: 'BOARD_BootClockRUN'&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; - master:&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - baudRate: '2150000'&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - bitsPerFrame: '8'&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - cpol: 'kLPSPI_ClockPolarityActiveHigh'&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - cpha: 'kLPSPI_ClockPhaseSecondEdge'&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - direction: 'kLPSPI_MsbFirst'&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - pcsToSckDelayInNanoSec: '1066'&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - lastSckToPcsDelayInNanoSec: '1066'&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - betweenTransferDelayInNanoSec: '1066'&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - whichPcs: 'kLPSPI_Pcs0'&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - pcsActiveHighOrLow: 'kLPSPI_PcsActiveLow'&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - pinCfg: 'kLPSPI_SdiInSdoOut'&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - dataOutConfig: 'kLpspiDataOutRetained'&lt;BR /&gt;&amp;nbsp;* BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR TOOLS **********/&lt;BR /&gt;/* clang-format on */&lt;BR /&gt;const lpspi_master_config_t LPSPI1_config = {&lt;BR /&gt;&amp;nbsp; .baudRate = 2150000,&lt;BR /&gt;&amp;nbsp; .bitsPerFrame = 8,&lt;BR /&gt;&amp;nbsp; .cpol = kLPSPI_ClockPolarityActiveHigh,&lt;BR /&gt;&amp;nbsp; .cpha = kLPSPI_ClockPhaseSecondEdge,&lt;BR /&gt;&amp;nbsp; .direction = kLPSPI_MsbFirst,&lt;BR /&gt;&amp;nbsp; .pcsToSckDelayInNanoSec = 1066,&lt;BR /&gt;&amp;nbsp; .lastSckToPcsDelayInNanoSec = 1066,&lt;BR /&gt;&amp;nbsp; .betweenTransferDelayInNanoSec = 1066,&lt;BR /&gt;&amp;nbsp; .whichPcs = kLPSPI_Pcs0,&lt;BR /&gt;&amp;nbsp; .pcsActiveHighOrLow = kLPSPI_PcsActiveLow,&lt;BR /&gt;&amp;nbsp; .pinCfg = kLPSPI_SdiInSdoOut,&lt;BR /&gt;&amp;nbsp; .dataOutConfig = kLpspiDataOutRetained&lt;BR /&gt;};&lt;BR /&gt;&lt;BR /&gt;void LPSPI1_init(void) {&lt;BR /&gt;&amp;nbsp; LPSPI_MasterInit(LPSPI1_PERIPHERAL, &amp;amp;LPSPI1_config, LPSPI1_CLOCK_FREQ);&lt;BR /&gt;}&lt;BR /&gt;&lt;BR /&gt;/***********************************************************************************************************************&lt;BR /&gt;&amp;nbsp;* LPUART2 initialization code&lt;BR /&gt;&amp;nbsp;**********************************************************************************************************************/&lt;BR /&gt;/* clang-format off */&lt;BR /&gt;/* TEXT BELOW IS USED AS SETTING FOR TOOLS *************************************&lt;BR /&gt;instance:&lt;BR /&gt;- name: 'LPUART2'&lt;BR /&gt;- type: 'lpuart'&lt;BR /&gt;- mode: 'interrupts'&lt;BR /&gt;- custom_name_enabled: 'false'&lt;BR /&gt;- type_id: 'lpuart_54a65a580e3462acdbacefd5299e0cac'&lt;BR /&gt;- functional_group: 'BOARD_InitPeripherals'&lt;BR /&gt;- peripheral: 'LPUART2'&lt;BR /&gt;- config_sets:&lt;BR /&gt;&amp;nbsp; - lpuartConfig_t:&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; - lpuartConfig:&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - clockSource: 'LpuartClock'&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - lpuartSrcClkFreq: 'BOARD_BootClockRUN'&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - baudRate_Bps: '115200'&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - parityMode: 'kLPUART_ParityEven'&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - dataBitsCount: 'kLPUART_EightDataBits'&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - isMsb: 'false'&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - stopBitCount: 'kLPUART_OneStopBit'&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - txFifoWatermark: '0'&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - rxFifoWatermark: '1'&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - enableRxRTS: 'false'&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - enableTxCTS: 'false'&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - txCtsSource: 'kLPUART_CtsSourcePin'&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - txCtsConfig: 'kLPUART_CtsSampleAtStart'&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - rxIdleType: 'kLPUART_IdleTypeStartBit'&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - rxIdleConfig: 'kLPUART_IdleCharacter1'&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - enableTx: 'false'&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - enableRx: 'false'&lt;BR /&gt;&amp;nbsp; - interruptsCfg:&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; - interrupts: 'kLPUART_RxDataRegFullInterruptEnable'&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; - interrupt_vectors:&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - enable_rx_tx_irq: 'true'&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - interrupt_rx_tx:&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - IRQn: 'LPUART2_IRQn'&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - enable_priority: 'false'&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - priority: '0'&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - enable_custom_name: 'true'&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - handler_custom_name: 'Mins_IRQHandler'&lt;BR /&gt;&amp;nbsp;* BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR TOOLS **********/&lt;BR /&gt;/* clang-format on */&lt;BR /&gt;const lpuart_config_t LPUART2_config = {&lt;BR /&gt;&amp;nbsp; .baudRate_Bps = 115200,&lt;BR /&gt;&amp;nbsp; .parityMode = kLPUART_ParityEven,&lt;BR /&gt;&amp;nbsp; .dataBitsCount = kLPUART_EightDataBits,&lt;BR /&gt;&amp;nbsp; .isMsb = false,&lt;BR /&gt;&amp;nbsp; .stopBitCount = kLPUART_OneStopBit,&lt;BR /&gt;&amp;nbsp; .txFifoWatermark = 0,&lt;BR /&gt;&amp;nbsp; .rxFifoWatermark = 1,&lt;BR /&gt;&amp;nbsp; .enableRxRTS = false,&lt;BR /&gt;&amp;nbsp; .enableTxCTS = false,&lt;BR /&gt;&amp;nbsp; .txCtsSource = kLPUART_CtsSourcePin,&lt;BR /&gt;&amp;nbsp; .txCtsConfig = kLPUART_CtsSampleAtStart,&lt;BR /&gt;&amp;nbsp; .rxIdleType = kLPUART_IdleTypeStartBit,&lt;BR /&gt;&amp;nbsp; .rxIdleConfig = kLPUART_IdleCharacter1,&lt;BR /&gt;&amp;nbsp; .enableTx = false,&lt;BR /&gt;&amp;nbsp; .enableRx = false&lt;BR /&gt;};&lt;BR /&gt;&lt;BR /&gt;void LPUART2_init(void) {&lt;BR /&gt;&amp;nbsp; LPUART_Init(LPUART2_PERIPHERAL, &amp;amp;LPUART2_config, LPUART2_CLOCK_SOURCE);&lt;BR /&gt;&amp;nbsp; LPUART_EnableInterrupts(LPUART2_PERIPHERAL, kLPUART_RxDataRegFullInterruptEnable);&lt;BR /&gt;&amp;nbsp; /* Enable interrupt LPUART2_IRQn request in the NVIC */&lt;BR /&gt;&amp;nbsp; EnableIRQ(LPUART2_SERIAL_RX_TX_IRQN);&lt;BR /&gt;}&lt;BR /&gt;&lt;BR /&gt;/***********************************************************************************************************************&lt;BR /&gt;&amp;nbsp;* PIT initialization code&lt;BR /&gt;&amp;nbsp;**********************************************************************************************************************/&lt;BR /&gt;/* clang-format off */&lt;BR /&gt;/* TEXT BELOW IS USED AS SETTING FOR TOOLS *************************************&lt;BR /&gt;instance:&lt;BR /&gt;- name: 'PIT'&lt;BR /&gt;- type: 'pit'&lt;BR /&gt;- mode: 'LPTMR_GENERAL'&lt;BR /&gt;- custom_name_enabled: 'false'&lt;BR /&gt;- type_id: 'pit_a4782ba5223c8a2527ba91aeb2bc4159'&lt;BR /&gt;- functional_group: 'BOARD_InitPeripherals'&lt;BR /&gt;- peripheral: 'PIT'&lt;BR /&gt;- config_sets:&lt;BR /&gt;&amp;nbsp; - fsl_pit:&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; - enableRunInDebug: 'false'&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; - enableSharedInterrupt: 'true'&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; - sharedInterrupt:&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - IRQn: 'PIT_IRQn'&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - enable_priority: 'false'&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - priority: '0'&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - enable_custom_name: 'false'&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; - timingConfig:&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - clockSource: 'BusInterfaceClock'&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - clockSourceFreq: 'BOARD_BootClockRUN'&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; - channels:&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - 0:&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - channel_id: 'CHANNEL_0'&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - channelNumber: '0'&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - enableChain: 'false'&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - timerPeriod: '25ms'&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - startTimer: 'true'&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - enableInterrupt: 'true'&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - 1:&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - channel_id: 'CHANNEL_1'&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - channelNumber: '1'&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - enableChain: 'false'&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - timerPeriod: '1ms'&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - startTimer: 'true'&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; - enableInterrupt: 'true'&lt;BR /&gt;&amp;nbsp;* BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR TOOLS **********/&lt;BR /&gt;/* clang-format on */&lt;BR /&gt;const pit_config_t PIT_config = {&lt;BR /&gt;&amp;nbsp; .enableRunInDebug = false&lt;BR /&gt;};&lt;BR /&gt;&lt;BR /&gt;void PIT_init(void) {&lt;BR /&gt;&amp;nbsp; /* Initialize the PIT. */&lt;BR /&gt;&amp;nbsp; PIT_Init(PIT_PERIPHERAL, &amp;amp;PIT_config);&lt;BR /&gt;&amp;nbsp; /* Set channel 0 period to 25 ms (1875000 ticks). */&lt;BR /&gt;&amp;nbsp; PIT_SetTimerPeriod(PIT_PERIPHERAL, PIT_CHANNEL_0, PIT_CHANNEL_0_TICKS);&lt;BR /&gt;&amp;nbsp; /* Set channel 1 period to 1 ms (75000 ticks). */&lt;BR /&gt;&amp;nbsp; PIT_SetTimerPeriod(PIT_PERIPHERAL, PIT_CHANNEL_1, PIT_CHANNEL_1_TICKS);&lt;BR /&gt;&amp;nbsp; /* Enable interrupts from channel 0. */&lt;BR /&gt;&amp;nbsp; PIT_EnableInterrupts(PIT_PERIPHERAL, PIT_CHANNEL_0, kPIT_TimerInterruptEnable);&lt;BR /&gt;&amp;nbsp; /* Enable interrupts from channel 1. */&lt;BR /&gt;&amp;nbsp; PIT_EnableInterrupts(PIT_PERIPHERAL, PIT_CHANNEL_1, kPIT_TimerInterruptEnable);&lt;BR /&gt;&amp;nbsp; /* Enable interrupt PIT_IRQN request in the NVIC */&lt;BR /&gt;&amp;nbsp; EnableIRQ(PIT_IRQN);&lt;BR /&gt;&amp;nbsp; /* Start channel 0. */&lt;BR /&gt;&amp;nbsp; PIT_StartTimer(PIT_PERIPHERAL, PIT_CHANNEL_0);&lt;BR /&gt;&amp;nbsp; /* Start channel 1. */&lt;BR /&gt;&amp;nbsp; PIT_StartTimer(PIT_PERIPHERAL, PIT_CHANNEL_1);&lt;BR /&gt;}&lt;BR /&gt;&lt;BR /&gt;/***********************************************************************************************************************&lt;BR /&gt;&amp;nbsp;* Initialization functions&lt;BR /&gt;&amp;nbsp;**********************************************************************************************************************/&lt;BR /&gt;void BOARD_InitPeripherals(void)&lt;BR /&gt;{&lt;BR /&gt;&amp;nbsp; /* Initialize components */&lt;BR /&gt;&amp;nbsp; LPSPI1_init();&lt;BR /&gt;&amp;nbsp; LPUART2_init();&lt;BR /&gt;&amp;nbsp; PIT_init();&lt;BR /&gt;}&lt;BR /&gt;&lt;BR /&gt;/***********************************************************************************************************************&lt;BR /&gt;&amp;nbsp;* BOARD_InitBootPeripherals function&lt;BR /&gt;&amp;nbsp;**********************************************************************************************************************/&lt;BR /&gt;void BOARD_InitBootPeripherals(void)&lt;BR /&gt;{&lt;BR /&gt;&amp;nbsp; BOARD_InitPeripherals();&lt;BR /&gt;}&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;2. peripherals.h&lt;/P&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;P&gt;/***********************************************************************************************************************&lt;BR /&gt;&amp;nbsp;* This file was generated by the MCUXpresso Config Tools. Any manual edits made to this file&lt;BR /&gt;&amp;nbsp;* will be overwritten if the respective MCUXpresso Config Tools is used to update this file.&lt;BR /&gt;&amp;nbsp;**********************************************************************************************************************/&lt;BR /&gt;&lt;BR /&gt;#ifndef _PERIPHERALS_H_&lt;BR /&gt;#define _PERIPHERALS_H_&lt;BR /&gt;&lt;BR /&gt;/***********************************************************************************************************************&lt;BR /&gt;&amp;nbsp;* Included files&lt;BR /&gt;&amp;nbsp;**********************************************************************************************************************/&lt;BR /&gt;#include "fsl_common.h"&lt;BR /&gt;#include "fsl_clock.h"&lt;BR /&gt;#include "fsl_lpspi.h"&lt;BR /&gt;#include "fsl_lpuart.h"&lt;BR /&gt;#include "fsl_pit.h"&lt;BR /&gt;&lt;BR /&gt;#if defined(__cplusplus)&lt;BR /&gt;extern "C" {&lt;BR /&gt;#endif /* __cplusplus */&lt;BR /&gt;&lt;BR /&gt;/***********************************************************************************************************************&lt;BR /&gt;&amp;nbsp;* Definitions&lt;BR /&gt;&amp;nbsp;**********************************************************************************************************************/&lt;BR /&gt;/* Definitions for BOARD_InitPeripherals functional group */&lt;BR /&gt;/* BOARD_InitPeripherals defines for LPSPI1 */&lt;BR /&gt;/* Definition of peripheral ID */&lt;BR /&gt;#define LPSPI1_PERIPHERAL LPSPI1&lt;BR /&gt;/* Definition of clock source */&lt;BR /&gt;#define LPSPI1_CLOCK_FREQ 105600000UL&lt;BR /&gt;/* Definition of peripheral ID */&lt;BR /&gt;#define LPUART2_PERIPHERAL LPUART2&lt;BR /&gt;/* Definition of the clock source frequency */&lt;BR /&gt;#define LPUART2_CLOCK_SOURCE 80000000UL&lt;BR /&gt;/* LPUART2 interrupt vector ID (number). */&lt;BR /&gt;#define LPUART2_SERIAL_RX_TX_IRQN LPUART2_IRQn&lt;BR /&gt;/* LPUART2 interrupt handler identifier. */&lt;BR /&gt;#define Mins_IRQHandler LPUART2_IRQHandler&lt;BR /&gt;/* BOARD_InitPeripherals defines for PIT */&lt;BR /&gt;/* Definition of peripheral ID. */&lt;BR /&gt;#define PIT_PERIPHERAL PIT&lt;BR /&gt;/* Definition of clock source frequency. */&lt;BR /&gt;#define PIT_CLK_FREQ 75000000UL&lt;BR /&gt;/* Definition of ticks count for channel 0 - deprecated. */&lt;BR /&gt;#define PIT_0_TICKS 1874999U&lt;BR /&gt;/* Definition of ticks count for channel 1 - deprecated. */&lt;BR /&gt;#define PIT_1_TICKS 74999U&lt;BR /&gt;/* PIT interrupt vector ID (number) - deprecated. */&lt;BR /&gt;#define PIT_0_IRQN PIT_IRQn&lt;BR /&gt;/* PIT interrupt handler identifier - deprecated. */&lt;BR /&gt;#define PIT_0_IRQHANDLER PIT0_IRQHandler&lt;BR /&gt;/* PIT interrupt vector ID (number) - deprecated. */&lt;BR /&gt;#define PIT_1_IRQN PIT_IRQn&lt;BR /&gt;/* PIT interrupt handler identifier - deprecated. */&lt;BR /&gt;#define PIT_1_IRQHANDLER PIT1_IRQHandler&lt;BR /&gt;/* Definition of channel number for channel 0. */&lt;BR /&gt;#define PIT_CHANNEL_0 kPIT_Chnl_0&lt;BR /&gt;/* Definition of channel number for channel 1. */&lt;BR /&gt;#define PIT_CHANNEL_1 kPIT_Chnl_1&lt;BR /&gt;/* Definition of ticks count for channel 0. */&lt;BR /&gt;#define PIT_CHANNEL_0_TICKS 1874999U&lt;BR /&gt;/* Definition of ticks count for channel 1. */&lt;BR /&gt;#define PIT_CHANNEL_1_TICKS 74999U&lt;BR /&gt;/* PIT interrupt vector ID (number). */&lt;BR /&gt;#define PIT_IRQN PIT_IRQn&lt;BR /&gt;/* PIT interrupt handler identifier. */&lt;BR /&gt;#define PIT_IRQHANDLER PIT_IRQHandler&lt;BR /&gt;&lt;BR /&gt;/***********************************************************************************************************************&lt;BR /&gt;&amp;nbsp;* Global variables&lt;BR /&gt;&amp;nbsp;**********************************************************************************************************************/&lt;BR /&gt;extern const lpspi_master_config_t LPSPI1_config;&lt;BR /&gt;extern const lpuart_config_t LPUART2_config;&lt;BR /&gt;extern const pit_config_t PIT_config;&lt;BR /&gt;&lt;BR /&gt;/***********************************************************************************************************************&lt;BR /&gt;&amp;nbsp;* Initialization functions&lt;BR /&gt;&amp;nbsp;**********************************************************************************************************************/&lt;BR /&gt;void BOARD_InitPeripherals(void);&lt;BR /&gt;&lt;BR /&gt;/***********************************************************************************************************************&lt;BR /&gt;&amp;nbsp;* BOARD_InitBootPeripherals function&lt;BR /&gt;&amp;nbsp;**********************************************************************************************************************/&lt;BR /&gt;void BOARD_InitBootPeripherals(void);&lt;BR /&gt;&lt;BR /&gt;#if defined(__cplusplus)&lt;BR /&gt;}&lt;BR /&gt;#endif&lt;BR /&gt;&lt;BR /&gt;#endif /* _PERIPHERALS_H_ */&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;Please let me know if you need any more information.&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;Regards,&lt;/P&gt;&lt;P&gt;Vishal&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 17 Feb 2020 10:21:08 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/PIT-Channel-0-and-Channel-1-does-not-work-simultaneously/m-p/1009712#M6369</guid>
      <dc:creator>vishaldahiwal</dc:creator>
      <dc:date>2020-02-17T10:21:08Z</dc:date>
    </item>
    <item>
      <title>Re: PIT Channel 0 and Channel 1 does not work simultaneously.</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/PIT-Channel-0-and-Channel-1-does-not-work-simultaneously/m-p/1009713#M6370</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Vishal&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I see no problem with the code.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Import the SDK PIT example for your board and make this change for channel 1, which worked when I tried it.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: courier new, courier, monospace;"&gt;volatile bool pitIsrFlag = false;&lt;/SPAN&gt;&lt;BR /&gt;&lt;STRONG style="font-family: courier new, courier, monospace; "&gt;volatile bool pitIsrFlag1 = false;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: courier new, courier, monospace;"&gt;/*******************************************************************************&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family: courier new, courier, monospace;"&gt;&amp;nbsp;* Code&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family: courier new, courier, monospace;"&gt;&amp;nbsp;******************************************************************************/&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family: courier new, courier, monospace;"&gt;void PIT_LED_HANDLER(void)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family: courier new, courier, monospace;"&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family: courier new, courier, monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Clear interrupt flag.*/&lt;/SPAN&gt;&lt;BR /&gt;&lt;STRONG style="font-family: courier new, courier, monospace; "&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;if (PIT_GetStatusFlags(PIT, kPIT_Chnl_0)) {&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN style="font-family: courier new, courier, monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; PIT_ClearStatusFlags(PIT, kPIT_Chnl_0, kPIT_TimerFlag);&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family: courier new, courier, monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; pitIsrFlag = true;&lt;/SPAN&gt;&lt;BR /&gt;&lt;STRONG style="font-family: courier new, courier, monospace; "&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG style="font-family: courier new, courier, monospace; "&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;if (PIT_GetStatusFlags(PIT, kPIT_Chnl_1)) {&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG style="font-family: courier new, courier, monospace; "&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; PIT_ClearStatusFlags(PIT, kPIT_Chnl_1, kPIT_TimerFlag);&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG style="font-family: courier new, courier, monospace; "&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; pitIsrFlag1 = true;&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG style="font-family: courier new, courier, monospace; "&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN style="font-family: courier new, courier, monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Added for, and affects, all PIT handlers. For CPU clock which is much larger than the IP bus clock,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family: courier new, courier, monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * CPU can run out of the interrupt handler before the interrupt flag being cleared, resulting in the&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family: courier new, courier, monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * CPU's entering the handler again and again. Adding DSB can prevent the issue from happening.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family: courier new, courier, monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; */&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family: courier new, courier, monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; __DSB();&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN style="font-family: courier new, courier, monospace;"&gt;}&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: courier new, courier, monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Set timer period for channel 0 */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; PIT_SetTimerPeriod(PIT, kPIT_Chnl_0, USEC_TO_COUNT(1000000U, PIT_SOURCE_CLOCK));&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; PIT_SetTimerPeriod(PIT, kPIT_Chnl_1, USEC_TO_COUNT(2000000U, PIT_SOURCE_CLOCK));&lt;/STRONG&gt;&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Enable timer interrupts for channel 0 */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; PIT_EnableInterrupts(PIT, kPIT_Chnl_0, kPIT_TimerInterruptEnable);&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; PIT_EnableInterrupts(PIT, kPIT_Chnl_1, kPIT_TimerInterruptEnable);&lt;/STRONG&gt;&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Enable at the NVIC */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; EnableIRQ(PIT_IRQ_ID);&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Start channel 0 */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; PRINTF("\r\nStarting channel No.0 1...");&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; PIT_StartTimer(PIT, kPIT_Chnl_0);&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; PIT_StartTimer(PIT, kPIT_Chnl_1);&lt;/STRONG&gt;&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; while (true)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Check whether occur interupt and toggle LED */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Check whether occur interupt and toggle LED */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (true == pitIsrFlag)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PRINTF("\r\n Channel No.0 interrupt is occurred !");&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LED_TOGGLE();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pitIsrFlag = false;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (true == pitIsrFlag1)&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PRINTF("\r\n Channel No.1 interrupt is occurred !");&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LED_TOGGLE();&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pitIsrFlag1 = false;&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/STRONG&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: arial, helvetica, sans-serif;"&gt;Regards&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: arial, helvetica, sans-serif;"&gt;Mark&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: courier new, courier, monospace;"&gt;&lt;EM&gt;[uTasker project developer for Kinetis and i.MX RT]&lt;/EM&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 17 Feb 2020 18:02:40 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/PIT-Channel-0-and-Channel-1-does-not-work-simultaneously/m-p/1009713#M6370</guid>
      <dc:creator>mjbcswitzerland</dc:creator>
      <dc:date>2020-02-17T18:02:40Z</dc:date>
    </item>
    <item>
      <title>Re: PIT Channel 0 and Channel 1 does not work simultaneously.</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/PIT-Channel-0-and-Channel-1-does-not-work-simultaneously/m-p/1009714#M6371</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello Vishal,&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;This behavior is due to the ERRATA&amp;nbsp;ERR050130. As a workaround, I would suggest you use Channel 2 instead of Channel 1 of the PIT.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;A href="https://www.nxp.com/docs/en/errata/IMXRT1064CE.pdf"&gt;Link to the ERRATA.&amp;nbsp;&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;Have a great day,&lt;BR /&gt;Victor&lt;/P&gt;&lt;P&gt;-------------------------------------------------------------------------------&lt;BR /&gt;Note:&lt;BR /&gt;- If this post answers your question, please click the "Mark Correct" button. Thank you!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- We are following threads for 7 weeks after the last post, later replies are ignored&lt;BR /&gt; Please open a new thread and refer to the closed one, if you have a related question at a later point in time.&lt;BR /&gt;-------------------------------------------------------------------------------&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 17 Feb 2020 18:06:23 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/PIT-Channel-0-and-Channel-1-does-not-work-simultaneously/m-p/1009714#M6371</guid>
      <dc:creator>victorjimenez</dc:creator>
      <dc:date>2020-02-17T18:06:23Z</dc:date>
    </item>
    <item>
      <title>Re: PIT Channel 0 and Channel 1 does not work simultaneously.</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/PIT-Channel-0-and-Channel-1-does-not-work-simultaneously/m-p/1009715#M6372</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Victor&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The errata is only relevant when the PIT channels are chained, which they are not in this case.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Also, I have no problem when I test on various i.MX RT devices (using channels 0 and 1) - I suspect that the poster is making an error with the evaluation of the operation rather than the PIT operation itself being defective.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Mark&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: courier new, courier, monospace;"&gt;&lt;EM&gt;[uTasker project developer for Kinetis and i.MX RT]&lt;/EM&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 17 Feb 2020 19:48:08 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/PIT-Channel-0-and-Channel-1-does-not-work-simultaneously/m-p/1009715#M6372</guid>
      <dc:creator>mjbcswitzerland</dc:creator>
      <dc:date>2020-02-17T19:48:08Z</dc:date>
    </item>
    <item>
      <title>Re: PIT Channel 0 and Channel 1 does not work simultaneously.</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/PIT-Channel-0-and-Channel-1-does-not-work-simultaneously/m-p/1009716#M6373</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello,&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I made some tests on my side with the Evaluation Board.&amp;nbsp;It seems that the Chain mode is activated by default on Channel 1 of the PIT. &lt;A class="jx-jive-macro-user" href="https://community.nxp.com/people/vishaldahiwal@gmail.com"&gt;vishaldahiwal@gmail.com&lt;/A&gt;, If you want to use Channel 1, as a workaround, you will need to deactivate the chain mode manually before initializing the channel. For example, before calling the function&amp;nbsp; &lt;EM&gt;&amp;nbsp;PIT_StartTimer(PIT_PERIPHERAL, PIT_CHANNEL_1);&lt;/EM&gt; You will need to deactivate the chain mode, this can be done with the following instruction: &lt;EM&gt;PIT-&amp;gt;CHANNEL[1].TCTRL &amp;amp;= ~PIT_TCTRL_CHN_MASK;&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;Have a great day,&lt;BR /&gt;Victor&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 17 Feb 2020 20:46:48 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/PIT-Channel-0-and-Channel-1-does-not-work-simultaneously/m-p/1009716#M6373</guid>
      <dc:creator>victorjimenez</dc:creator>
      <dc:date>2020-02-17T20:46:48Z</dc:date>
    </item>
    <item>
      <title>Re: PIT Channel 0 and Channel 1 does not work simultaneously.</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/PIT-Channel-0-and-Channel-1-does-not-work-simultaneously/m-p/1009717#M6374</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Victor,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The issue is resolved by manually deactivating the chain mode for Channel 1. Thank you very much.&lt;/P&gt;&lt;P&gt;This is required only when I am using channel 1. For Channel 2, this change is not required and everything works with auto-generated code.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks both of you (Mark and Victor) for looking in to this issue and providing valuable inputs.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Vishal&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 19 Feb 2020 10:02:56 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/PIT-Channel-0-and-Channel-1-does-not-work-simultaneously/m-p/1009717#M6374</guid>
      <dc:creator>vishaldahiwal</dc:creator>
      <dc:date>2020-02-19T10:02:56Z</dc:date>
    </item>
  </channel>
</rss>

