<?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>topic Re: CSI Interrupt status register CSI_CSISR, clear status in MCUXpresso IDE</title>
    <link>https://community.nxp.com/t5/MCUXpresso-IDE/CSI-Interrupt-status-register-CSI-CSISR-clear-status/m-p/1251047#M6835</link>
    <description>&lt;P&gt;Hi,&lt;/P&gt;
&lt;P&gt;No other special reason. Since the value has been read out, clear all the bit in the register make code simple and clean.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Regards,&lt;/P&gt;
&lt;P&gt;Jing&lt;/P&gt;</description>
    <pubDate>Wed, 24 Mar 2021 08:39:39 GMT</pubDate>
    <dc:creator>jingpan</dc:creator>
    <dc:date>2021-03-24T08:39:39Z</dc:date>
    <item>
      <title>CSI Interrupt status register CSI_CSISR, clear status</title>
      <link>https://community.nxp.com/t5/MCUXpresso-IDE/CSI-Interrupt-status-register-CSI-CSISR-clear-status/m-p/1248832#M6817</link>
      <description>&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;I am debuging the project csi_rgb565.&lt;/P&gt;&lt;P&gt;After interrupt occurs, in CSI_TransferHandleIRQ,&amp;nbsp; I want to clear the status of Start of Frame by writing 1 by:&lt;/P&gt;&lt;P&gt;&lt;EM&gt;uint32_t csisr = CSI_REG_SR(base);&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;CSI_REG_SR(base)= csisr | CSI_CSISR_SOF_INT_MASK;&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;After excuting this line, the bit16 is still active "1" when I read out the value of CSI_REG_SR(base). Thus, during the next interrupt, this bit is still 1.&lt;/P&gt;&lt;P&gt;I think the interrupt of SOF should be less often than "CSI_CSISR_DMA_TSF_DONE_FB2_MASK" and "CSI_CSISR_DMA_TSF_DONE_FB1_MASK" since each frame needs multiple DMA transferring.&lt;/P&gt;&lt;P&gt;However, the user manual says "SOF_INT: Start of Frame Interrupt Status. Indicates when SOF is detected. (Cleared by writing 1)".&lt;/P&gt;&lt;P&gt;How can I manually clear this status of SOF? Is there anything wrong in the piece of code?&lt;/P&gt;&lt;P&gt;Thank you.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 19 Mar 2021 10:08:36 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCUXpresso-IDE/CSI-Interrupt-status-register-CSI-CSISR-clear-status/m-p/1248832#M6817</guid>
      <dc:creator>nanjun</dc:creator>
      <dc:date>2021-03-19T10:08:36Z</dc:date>
    </item>
    <item>
      <title>Re: CSI Interrupt status register CSI_CSISR, clear status</title>
      <link>https://community.nxp.com/t5/MCUXpresso-IDE/CSI-Interrupt-status-register-CSI-CSISR-clear-status/m-p/1250185#M6833</link>
      <description>&lt;P&gt;Hi nanjun,&lt;/P&gt;
&lt;P&gt;The original code is&amp;nbsp;&lt;/P&gt;
&lt;LI-CODE lang="markup"&gt;uint32_t csisr = CSI_REG_SR(base);
CSI_REG_SR(base) = csisr;&lt;/LI-CODE&gt;
&lt;P&gt;I add test code below it&lt;/P&gt;
&lt;LI-CODE lang="markup"&gt;if(CSI_REG_SR(base)&amp;amp;CSI_CSISR_SOF_INT_MASK)
      queueWriteIdx=1;

&lt;/LI-CODE&gt;
&lt;P&gt;But I do not find any problem. SOF bit is cleared.&lt;/P&gt;
&lt;P&gt;If you count SOF number and DMA_TSF_DONE_FBx number, you'll find SOF=DMA_TSF_DONE_FB1+DMA_TSF_DONE_FB2.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Regards,&lt;/P&gt;
&lt;P&gt;jing&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 23 Mar 2021 07:22:47 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCUXpresso-IDE/CSI-Interrupt-status-register-CSI-CSISR-clear-status/m-p/1250185#M6833</guid>
      <dc:creator>jingpan</dc:creator>
      <dc:date>2021-03-23T07:22:47Z</dc:date>
    </item>
    <item>
      <title>Re: CSI Interrupt status register CSI_CSISR, clear status</title>
      <link>https://community.nxp.com/t5/MCUXpresso-IDE/CSI-Interrupt-status-register-CSI-CSISR-clear-status/m-p/1250191#M6834</link>
      <description>&lt;P&gt;Hello Jing,&lt;/P&gt;&lt;P&gt;thanks for your reply.&lt;/P&gt;&lt;P&gt;I think the problem is caused by debuging since the cnt showing entering SOF is not updated correctly when the code is ran step by step. But we I try a loop of 100, it updates as desired.&lt;/P&gt;&lt;P&gt;Coud you explain it to me shortly? Why do we write back the SR register value immediately after we just read it from SR?&lt;/P&gt;&lt;P&gt;uint32_t csisr = CSI_REG_SR(base);&lt;/P&gt;&lt;P&gt;CSI_REG_SR(base) = csisr&lt;/P&gt;</description>
      <pubDate>Tue, 23 Mar 2021 07:34:34 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCUXpresso-IDE/CSI-Interrupt-status-register-CSI-CSISR-clear-status/m-p/1250191#M6834</guid>
      <dc:creator>nanjun</dc:creator>
      <dc:date>2021-03-23T07:34:34Z</dc:date>
    </item>
    <item>
      <title>Re: CSI Interrupt status register CSI_CSISR, clear status</title>
      <link>https://community.nxp.com/t5/MCUXpresso-IDE/CSI-Interrupt-status-register-CSI-CSISR-clear-status/m-p/1251047#M6835</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;
&lt;P&gt;No other special reason. Since the value has been read out, clear all the bit in the register make code simple and clean.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Regards,&lt;/P&gt;
&lt;P&gt;Jing&lt;/P&gt;</description>
      <pubDate>Wed, 24 Mar 2021 08:39:39 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MCUXpresso-IDE/CSI-Interrupt-status-register-CSI-CSISR-clear-status/m-p/1251047#M6835</guid>
      <dc:creator>jingpan</dc:creator>
      <dc:date>2021-03-24T08:39:39Z</dc:date>
    </item>
  </channel>
</rss>

