<?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 PDB ADC pre trigger sequence error recovery in S32K</title>
    <link>https://community.nxp.com/t5/S32K/PDB-ADC-pre-trigger-sequence-error-recovery/m-p/2387043#M59534</link>
    <description>&lt;P&gt;Hi NXP community,&lt;/P&gt;&lt;P&gt;&lt;A href="https://community.nxp.com/t5/S32K/ADC0-ADC1-Interrupts-Stop-After-Runtime-Flash-Erase-Program/m-p/2377484#M59063" target="_blank" rel="noopener"&gt;ADC0/ADC1 Interrupts Stop After Runtime Flash Erase/Program Operation on S32K144&lt;/A&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN&gt;As a continuation of my previous question, I need some clarification on how to properly recover from a PDB ADC pre-trigger sequence error on the S32K144.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;I tried the following three methods, but only one of them worked correctly.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Method 1 (working):&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;SPAN&gt;Stop PDB0 and PDB1 before performing the flash erase/program operation.&lt;/SPAN&gt;&lt;/LI&gt;&lt;LI&gt;&lt;SPAN&gt;After the flash operation is complete, restart both PDBs and re-enable the corresponding ISRs.&lt;/SPAN&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;With this approach, no PDB sequence error occurs.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Method 2:&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;After the flash erase/program operation was completed, I stopped and restarted PDB0 and PDB1. However, a PDB pre-trigger sequence error occurred. I then attempted to recover by stopping and restarting the PDB modules again, but the sequence error persisted.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Method 3:&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Method 3 (Not Working):&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;I did not stop or restart PDB0 and PDB1 during the flash erase/program operation. Instead, after the operation completed, one pending PDB ISR and ADC ISR were triggered.&lt;/P&gt;&lt;P&gt;Inside the PDB ISR, I attempted to clear the sequence error flag using:&lt;/P&gt;&lt;P&gt;PDB0-&amp;gt;CH[0].S &amp;amp;= (uint32_t)(~PDB_S_ERR_MASK);&lt;/P&gt;&lt;P&gt;The corresponding ADC ISR was then executed, and reading the ADC result register cleared the COCO flag. I expected this to prevent further pre-trigger sequence errors, but the issue still persisted and this method did not work.&lt;/P&gt;&lt;DIV&gt;My question is: once a PDB pre-trigger sequence error has been triggered, is it possible to recover the PDB/ADC operation and resume normal triggering without resetting the system? Or does the PDB need to be stopped and restarted beforehand to avoid entering an unrecoverable state?&lt;/DIV&gt;</description>
    <pubDate>Fri, 26 Jun 2026 12:30:27 GMT</pubDate>
    <dc:creator>Jarvis_vk</dc:creator>
    <dc:date>2026-06-26T12:30:27Z</dc:date>
    <item>
      <title>PDB ADC pre trigger sequence error recovery</title>
      <link>https://community.nxp.com/t5/S32K/PDB-ADC-pre-trigger-sequence-error-recovery/m-p/2387043#M59534</link>
      <description>&lt;P&gt;Hi NXP community,&lt;/P&gt;&lt;P&gt;&lt;A href="https://community.nxp.com/t5/S32K/ADC0-ADC1-Interrupts-Stop-After-Runtime-Flash-Erase-Program/m-p/2377484#M59063" target="_blank" rel="noopener"&gt;ADC0/ADC1 Interrupts Stop After Runtime Flash Erase/Program Operation on S32K144&lt;/A&gt;&lt;/P&gt;&lt;P class=""&gt;&lt;SPAN&gt;As a continuation of my previous question, I need some clarification on how to properly recover from a PDB ADC pre-trigger sequence error on the S32K144.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;I tried the following three methods, but only one of them worked correctly.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Method 1 (working):&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;&lt;SPAN&gt;Stop PDB0 and PDB1 before performing the flash erase/program operation.&lt;/SPAN&gt;&lt;/LI&gt;&lt;LI&gt;&lt;SPAN&gt;After the flash operation is complete, restart both PDBs and re-enable the corresponding ISRs.&lt;/SPAN&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;With this approach, no PDB sequence error occurs.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Method 2:&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;After the flash erase/program operation was completed, I stopped and restarted PDB0 and PDB1. However, a PDB pre-trigger sequence error occurred. I then attempted to recover by stopping and restarting the PDB modules again, but the sequence error persisted.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Method 3:&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Method 3 (Not Working):&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;I did not stop or restart PDB0 and PDB1 during the flash erase/program operation. Instead, after the operation completed, one pending PDB ISR and ADC ISR were triggered.&lt;/P&gt;&lt;P&gt;Inside the PDB ISR, I attempted to clear the sequence error flag using:&lt;/P&gt;&lt;P&gt;PDB0-&amp;gt;CH[0].S &amp;amp;= (uint32_t)(~PDB_S_ERR_MASK);&lt;/P&gt;&lt;P&gt;The corresponding ADC ISR was then executed, and reading the ADC result register cleared the COCO flag. I expected this to prevent further pre-trigger sequence errors, but the issue still persisted and this method did not work.&lt;/P&gt;&lt;DIV&gt;My question is: once a PDB pre-trigger sequence error has been triggered, is it possible to recover the PDB/ADC operation and resume normal triggering without resetting the system? Or does the PDB need to be stopped and restarted beforehand to avoid entering an unrecoverable state?&lt;/DIV&gt;</description>
      <pubDate>Fri, 26 Jun 2026 12:30:27 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/PDB-ADC-pre-trigger-sequence-error-recovery/m-p/2387043#M59534</guid>
      <dc:creator>Jarvis_vk</dc:creator>
      <dc:date>2026-06-26T12:30:27Z</dc:date>
    </item>
  </channel>
</rss>

