<?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 S32k344-wb Rising Edge Interrupt. in S32K</title>
    <link>https://community.nxp.com/t5/S32K/S32k344-wb-Rising-Edge-Interrupt/m-p/2037627#M45604</link>
    <description>&lt;P&gt;Dear Experts,&lt;/P&gt;&lt;P&gt;We are making an HVBMS and decided to order some hardware to get familiar with the NXP ecosystem. Ultamatly we want to have a HVBMS but to start we just want some simple functions on the Whiteboard(&lt;LI-PRODUCT title="S32K344-WB" id="S32K344-WB"&gt;&lt;/LI-PRODUCT&gt; ). I've divided this relative simple quest in multiple parts.&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;Setup,&lt;/LI&gt;&lt;LI&gt;Followed Training,&lt;/LI&gt;&lt;LI&gt;Code,&lt;/LI&gt;&lt;LI&gt;whishes&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;1. Setup&lt;/P&gt;&lt;P&gt;I'm 'writing' the code in S32 Design studio version 3.4 because the examples of the whiteboard are in this IDE. (Build id: 201217 (Update 3)).&lt;BR /&gt;My project name is H_bridge_Example it uses the following SDK's&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;FreeMASTER_S32K344 - Version 3.0.0&lt;/LI&gt;&lt;LI&gt;PlatformSDK_S32K3_2022_03 - Version 2.0.0&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;I'm debugging with an GDB server locally. With an J-Link debugger.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;2. Followed Training&lt;/P&gt;&lt;P&gt;i've found a training document called "06_S32K3xx_Pins_and_Clocks_with_RTD_Training", it talks about setting up the ISR with an interrupt on button 3. Using the Siul2_Icu, i've followed the following steps of this training.&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;Setting the pin (C20) as an input (Connected to the button), and connect it to the eirq 16. Giving it a label and Identifier as "USER_BTN2".&lt;OL&gt;&lt;LI&gt;Outpub buffer enable Disabled&lt;/LI&gt;&lt;LI&gt;Safe mode control disable&lt;/LI&gt;&lt;LI&gt;input buffer enable Enabled&lt;/LI&gt;&lt;LI&gt;Pull select Pulldown&lt;/LI&gt;&lt;LI&gt;Pullup enable Enabled&lt;/LI&gt;&lt;LI&gt;Output Inversion Select Dont't invert&lt;/LI&gt;&lt;LI&gt;Pad Keep enable Disabled&lt;/LI&gt;&lt;LI&gt;Driver strngth N/a&lt;/LI&gt;&lt;LI&gt;Input filter Enable N/A&lt;/LI&gt;&lt;LI&gt;Inatial Value n/a&lt;/LI&gt;&lt;LI&gt;touch sensing n/a&lt;/LI&gt;&lt;/OL&gt;&lt;/LI&gt;&lt;LI&gt;I've added the Siul2_Port driver And Siul2_Dio.&lt;/LI&gt;&lt;LI&gt;In the main loop i've set the Siul2_port_ip_init &amp;amp; Siul2_Port_Ip_SetInputBuffer. (See 3. Code)&lt;/LI&gt;&lt;LI&gt;With the Siul2 ICU i've added an HWInterruptConfigList from IRQ_CH_16 to IcuHwIntrruptConfigList_0.&lt;/LI&gt;&lt;LI&gt;IciSiul2: Siul2 instance 0, ICU External Iterrupt Filter clock prescaler 2&lt;OL&gt;&lt;LI&gt;Name IcuSiul2Channel16&lt;/LI&gt;&lt;LI&gt;Hardware channel 16&lt;/LI&gt;&lt;LI&gt;ICU External enable Intrrupt filter True&lt;/LI&gt;&lt;LI&gt;ICU Exernal Intrrupt filter Setting.&lt;/LI&gt;&lt;/OL&gt;&lt;/LI&gt;&lt;LI&gt;Icuchannels: ChannelRef "/Siul2_Icu/Siul2_Icu/Siul2ConfigSet/IcuSiul2_0/IcuSiul2Channel_16"&lt;OL&gt;&lt;LI&gt;ICU_Rising_Edge&lt;/LI&gt;&lt;LI&gt;ICU_MODE_SIGNAL_EDGE_DETECT&lt;/LI&gt;&lt;LI&gt;0: IceSignalEdgeDetection&lt;/LI&gt;&lt;LI&gt;IcuSignalNotification "Usr_Btn_Callback"&amp;nbsp; &amp;lt;-- Callback function.&lt;/LI&gt;&lt;/OL&gt;&lt;/LI&gt;&lt;LI&gt;I've added the IntCtrl_IP. (Wasnt in the tutorial)&lt;OL&gt;&lt;LI&gt;In the interupt controller i've enabled the Siul[0..3]_IRQn with priority 3&lt;/LI&gt;&lt;/OL&gt;&lt;/LI&gt;&lt;LI&gt;In de code ive added: (See 3. Code)&lt;OL&gt;&lt;LI&gt;Siul2_Icu_Ip_Init&lt;/LI&gt;&lt;LI&gt;Siul2_Icu_Ip_EnableInterrupt&lt;/LI&gt;&lt;LI&gt;IntCtrl_Ip_InstallHandler&lt;/LI&gt;&lt;LI&gt;IntCtrl_Ip_EnableIrq&lt;/LI&gt;&lt;/OL&gt;&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;3. Code:&lt;/P&gt;&lt;P&gt;Main.c:&lt;/P&gt;&lt;LI-CODE lang="c"&gt;#include "Mcal.h"
#include "Siul2_Port_Ip.h"
#include "Siul2_Dio_Ip.h"

// Interupts
#include "Intctrl_Ip.h"
#include "Siul2_Icu_Ip.h"

ISR(SIUL2_EXT_IRQ_16_23_ISR);

volatile int exit_code = 0;
/* User includes */

void Usr_Btn_Callback(void){
	Siul2_Dio_Ip_TogglePins(LED1_PORT, LED1_PIN);
	return;
}

int main(void)
{
	Siul2_Port_Ip_Init(NUM_OF_CONFIGURED_PINS0, g_pin_mux_InitConfigArr0);   // Set Ports

	Siul2_Port_Ip_SetInputBuffer(PORTC_H_HALF, USER_BTN2_PIN, TRUE, *(g_pin_mux_InitConfigArr0[4]).inputMuxReg , *(g_pin_mux_InitConfigArr0[4]).inputMux ); // Set input of C20

	// Set ISR
	Siul2_Icu_Ip_Init(SIUL2_ICU_IP_INSTANCE, &amp;amp;Siul2_Icu_Ip_0_Config_PB_BOARD_InitPeripherals);
	Siul2_Icu_Ip_EnableInterrupt (SIUL2_ICU_IP_INSTANCE,(*Siul2_Icu_Ip_0_Config_PB_BOARD_InitPeripherals.pChannelsConfig)[0].hwChannel);
	IntCtrl_Ip_InstallHandler(SIUL_0_IRQn, SIUL2_EXT_IRQ_16_23_ISR, NULL_PTR);
	IntCtrl_Ip_EnableIrq(SIUL_0_IRQn);


    for(;;)
    {
        if(exit_code != 0)
        {
            break;
        }
    }
    return exit_code;
}&lt;/LI-CODE&gt;&lt;P&gt;Siul2_Port_Ip_Cfg.c:&lt;/P&gt;&lt;LI-CODE lang="c"&gt;const Siul2_Port_Ip_PinSettingsConfig g_pin_mux_InitConfigArr0[NUM_OF_CONFIGURED_PINS0] =
{
    {
        .base                        = IP_SIUL2,
        .pinPortIdx                  = 89u,
        .mux                         = PORT_MUX_AS_GPIO,
        .safeMode                    = PORT_SAFE_MODE_DISABLED,
        .inputFilter                 = PORT_INPUT_FILTER_DISABLED,
        .pullConfig                  = PORT_INTERNAL_PULL_NOT_ENABLED,
        .pullKeep                    = PORT_PULL_KEEP_DISABLED,
        .invert                      = PORT_INVERT_DISABLED,
        .inputBuffer                 = PORT_INPUT_BUFFER_DISABLED,
        .outputBuffer                = PORT_OUTPUT_BUFFER_ENABLED,
        .adcInterleaves              = { MUX_MODE_NOT_AVAILABLE, MUX_MODE_NOT_AVAILABLE },
        .initValue                   = 0u
    },
    {
        .base                        = IP_SIUL2,
        .pinPortIdx                  = 91u,
        .mux                         = PORT_MUX_AS_GPIO,
        .safeMode                    = PORT_SAFE_MODE_DISABLED,
        .inputFilter                 = PORT_INPUT_FILTER_DISABLED,
        .driveStrength               = PORT_DRIVE_STRENTGTH_DISABLED,
        .pullConfig                  = PORT_INTERNAL_PULL_NOT_ENABLED,
        .pullKeep                    = PORT_PULL_KEEP_DISABLED,
        .invert                      = PORT_INVERT_DISABLED,
        .inputBuffer                 = PORT_INPUT_BUFFER_DISABLED,
        .outputBuffer                = PORT_OUTPUT_BUFFER_ENABLED,
        .adcInterleaves              = { MUX_MODE_NOT_AVAILABLE, MUX_MODE_NOT_AVAILABLE },
        .initValue                   = 0u
    },
    {
        .base                        = IP_SIUL2,
        .pinPortIdx                  = 217u,
        .mux                         = PORT_MUX_AS_GPIO,
        .safeMode                    = PORT_SAFE_MODE_DISABLED,
        .inputFilter                 = PORT_INPUT_FILTER_DISABLED,
        .driveStrength               = PORT_DRIVE_STRENTGTH_DISABLED,
        .pullConfig                  = PORT_INTERNAL_PULL_NOT_ENABLED,
        .pullKeep                    = PORT_PULL_KEEP_DISABLED,
        .invert                      = PORT_INVERT_DISABLED,
        .inputBuffer                 = PORT_INPUT_BUFFER_DISABLED,
        .outputBuffer                = PORT_OUTPUT_BUFFER_ENABLED,
        .adcInterleaves              = { MUX_MODE_NOT_AVAILABLE, MUX_MODE_NOT_AVAILABLE },
        .initValue                   = 0u
    },
    {
        .base                        = IP_SIUL2,
        .pinPortIdx                  = 216u,
        .mux                         = PORT_MUX_AS_GPIO,
        .safeMode                    = PORT_SAFE_MODE_DISABLED,
        .inputFilter                 = PORT_INPUT_FILTER_DISABLED,
        .driveStrength               = PORT_DRIVE_STRENTGTH_DISABLED,
        .pullConfig                  = PORT_INTERNAL_PULL_NOT_ENABLED,
        .pullKeep                    = PORT_PULL_KEEP_DISABLED,
        .invert                      = PORT_INVERT_DISABLED,
        .inputBuffer                 = PORT_INPUT_BUFFER_DISABLED,
        .outputBuffer                = PORT_OUTPUT_BUFFER_ENABLED,
        .adcInterleaves              = { MUX_MODE_NOT_AVAILABLE, MUX_MODE_NOT_AVAILABLE },
        .initValue                   = 0u
    },
    {
        .base                        = IP_SIUL2,
        .pinPortIdx                  = 84u,
        .mux                         = PORT_MUX_AS_GPIO,
        .safeMode                    = PORT_SAFE_MODE_DISABLED,
        .inputFilter                 = PORT_INPUT_FILTER_DISABLED,
        .pullConfig                  = PORT_INTERNAL_PULL_DOWN_ENABLED,
        .pullKeep                    = PORT_PULL_KEEP_DISABLED,
        .invert                      = PORT_INVERT_DISABLED,
        .inputBuffer                 = PORT_INPUT_BUFFER_ENABLED,
        .outputBuffer                = PORT_OUTPUT_BUFFER_DISABLED,
        .adcInterleaves              = { MUX_MODE_NOT_AVAILABLE, MUX_MODE_NOT_AVAILABLE },
        .inputMuxReg                 = {
                                         32u
                                       },
        .inputMux                    = { 
                                         PORT_INPUT_MUX_ALT3,
                                         PORT_INPUT_MUX_NO_INIT,
                                         PORT_INPUT_MUX_NO_INIT,
                                         PORT_INPUT_MUX_NO_INIT,
                                         PORT_INPUT_MUX_NO_INIT,
                                         PORT_INPUT_MUX_NO_INIT,
                                         PORT_INPUT_MUX_NO_INIT,
                                         PORT_INPUT_MUX_NO_INIT
                                       },
    },
    {
        .base                        = IP_SIUL2,
        .pinPortIdx                  = 171u,
        .mux                         = PORT_MUX_AS_GPIO,
        .safeMode                    = PORT_SAFE_MODE_DISABLED,
        .inputFilter                 = PORT_INPUT_FILTER_DISABLED,
        .pullConfig                  = PORT_INTERNAL_PULL_NOT_ENABLED,
        .pullKeep                    = PORT_PULL_KEEP_DISABLED,
        .invert                      = PORT_INVERT_DISABLED,
        .inputBuffer                 = PORT_INPUT_BUFFER_DISABLED,
        .outputBuffer                = PORT_OUTPUT_BUFFER_ENABLED,
        .adcInterleaves              = { MUX_MODE_NOT_AVAILABLE, MUX_MODE_NOT_AVAILABLE },
        .initValue                   = 0u
    },
};&lt;/LI-CODE&gt;&lt;P&gt;Siul2_Icu_Ip_SA_BOARD_InitPeripherals_PBcfg.c:&lt;/P&gt;&lt;LI-CODE lang="markup"&gt;const Siul2_Icu_Ip_ChannelConfigType Siul2_Icu_Ip_0_ChannelConfig_PB_BOARD_InitPeripherals[1U] =
{
    /** @brief IcuSiul2Channel_16 */
    {
        /** @brief Siul2 HW Module and Channel used by the Icu channel */
        16U,
        /** @brief Siul2 Digital Filter enable */
        TRUE,
        /** @brief Siul2 Digital Filter value */
        3U,
        /** @brief Siul2 request type*/
        SIUL2_ICU_IRQ,
        /** @brief Siul2 Edge type*/
        SIUL2_ICU_RISING_EDGE,
        /** @brief Callback Pointer */
        NULL_PTR,
        /** @brief Notification function */
        &amp;amp;Usr_Btn_Callback,
          /** @brief Callback Param1*/
        16U
    }
};

/*
*  @brief    BOARD_InitPeripherals SIUL2 Instance Configuration
*/
const Siul2_Icu_Ip_InstanceConfigType Siul2_Icu_Ip_0_InstanceConfig_PB_BOARD_InitPeripherals =
{
    /** @brief Interrupt Filter Clock Prescaler */
    (uint8)2U,
    /** @brief Interrupt Filter Clock Alternate Prescaler  */
    (uint8)0U
};

/*
*  @brief    BOARD_InitPeripherals Default SIUL2 IP Configuration
*/
const Siul2_Icu_Ip_ConfigType Siul2_Icu_Ip_0_Config_PB_BOARD_InitPeripherals =
{
    /** @brief Number of Siul2 channels in the Icu configuration */
    (uint8)1U,
    /** @brief The Siul2 instance configuration */
    &amp;amp;Siul2_Icu_Ip_0_InstanceConfig_PB_BOARD_InitPeripherals,
    /** @brief Pointer to the array of Siul2 channel configurations */
    &amp;amp;Siul2_Icu_Ip_0_ChannelConfig_PB_BOARD_InitPeripherals
};&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;4. What I want.&lt;/P&gt;&lt;P&gt;I would like a simple program to change the led on and off. with an simple interrupt. I also have version 3.4/3.5 and 3.6 of the S32DS, because the HVBMS is on an S32k357 and the examples are on version 3.5 on the IDE.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Tue, 04 Feb 2025 09:59:33 GMT</pubDate>
    <dc:creator>koen_Intercel</dc:creator>
    <dc:date>2025-02-04T09:59:33Z</dc:date>
    <item>
      <title>S32k344-wb Rising Edge Interrupt.</title>
      <link>https://community.nxp.com/t5/S32K/S32k344-wb-Rising-Edge-Interrupt/m-p/2037627#M45604</link>
      <description>&lt;P&gt;Dear Experts,&lt;/P&gt;&lt;P&gt;We are making an HVBMS and decided to order some hardware to get familiar with the NXP ecosystem. Ultamatly we want to have a HVBMS but to start we just want some simple functions on the Whiteboard(&lt;LI-PRODUCT title="S32K344-WB" id="S32K344-WB"&gt;&lt;/LI-PRODUCT&gt; ). I've divided this relative simple quest in multiple parts.&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;Setup,&lt;/LI&gt;&lt;LI&gt;Followed Training,&lt;/LI&gt;&lt;LI&gt;Code,&lt;/LI&gt;&lt;LI&gt;whishes&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;1. Setup&lt;/P&gt;&lt;P&gt;I'm 'writing' the code in S32 Design studio version 3.4 because the examples of the whiteboard are in this IDE. (Build id: 201217 (Update 3)).&lt;BR /&gt;My project name is H_bridge_Example it uses the following SDK's&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;FreeMASTER_S32K344 - Version 3.0.0&lt;/LI&gt;&lt;LI&gt;PlatformSDK_S32K3_2022_03 - Version 2.0.0&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;I'm debugging with an GDB server locally. With an J-Link debugger.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;2. Followed Training&lt;/P&gt;&lt;P&gt;i've found a training document called "06_S32K3xx_Pins_and_Clocks_with_RTD_Training", it talks about setting up the ISR with an interrupt on button 3. Using the Siul2_Icu, i've followed the following steps of this training.&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;Setting the pin (C20) as an input (Connected to the button), and connect it to the eirq 16. Giving it a label and Identifier as "USER_BTN2".&lt;OL&gt;&lt;LI&gt;Outpub buffer enable Disabled&lt;/LI&gt;&lt;LI&gt;Safe mode control disable&lt;/LI&gt;&lt;LI&gt;input buffer enable Enabled&lt;/LI&gt;&lt;LI&gt;Pull select Pulldown&lt;/LI&gt;&lt;LI&gt;Pullup enable Enabled&lt;/LI&gt;&lt;LI&gt;Output Inversion Select Dont't invert&lt;/LI&gt;&lt;LI&gt;Pad Keep enable Disabled&lt;/LI&gt;&lt;LI&gt;Driver strngth N/a&lt;/LI&gt;&lt;LI&gt;Input filter Enable N/A&lt;/LI&gt;&lt;LI&gt;Inatial Value n/a&lt;/LI&gt;&lt;LI&gt;touch sensing n/a&lt;/LI&gt;&lt;/OL&gt;&lt;/LI&gt;&lt;LI&gt;I've added the Siul2_Port driver And Siul2_Dio.&lt;/LI&gt;&lt;LI&gt;In the main loop i've set the Siul2_port_ip_init &amp;amp; Siul2_Port_Ip_SetInputBuffer. (See 3. Code)&lt;/LI&gt;&lt;LI&gt;With the Siul2 ICU i've added an HWInterruptConfigList from IRQ_CH_16 to IcuHwIntrruptConfigList_0.&lt;/LI&gt;&lt;LI&gt;IciSiul2: Siul2 instance 0, ICU External Iterrupt Filter clock prescaler 2&lt;OL&gt;&lt;LI&gt;Name IcuSiul2Channel16&lt;/LI&gt;&lt;LI&gt;Hardware channel 16&lt;/LI&gt;&lt;LI&gt;ICU External enable Intrrupt filter True&lt;/LI&gt;&lt;LI&gt;ICU Exernal Intrrupt filter Setting.&lt;/LI&gt;&lt;/OL&gt;&lt;/LI&gt;&lt;LI&gt;Icuchannels: ChannelRef "/Siul2_Icu/Siul2_Icu/Siul2ConfigSet/IcuSiul2_0/IcuSiul2Channel_16"&lt;OL&gt;&lt;LI&gt;ICU_Rising_Edge&lt;/LI&gt;&lt;LI&gt;ICU_MODE_SIGNAL_EDGE_DETECT&lt;/LI&gt;&lt;LI&gt;0: IceSignalEdgeDetection&lt;/LI&gt;&lt;LI&gt;IcuSignalNotification "Usr_Btn_Callback"&amp;nbsp; &amp;lt;-- Callback function.&lt;/LI&gt;&lt;/OL&gt;&lt;/LI&gt;&lt;LI&gt;I've added the IntCtrl_IP. (Wasnt in the tutorial)&lt;OL&gt;&lt;LI&gt;In the interupt controller i've enabled the Siul[0..3]_IRQn with priority 3&lt;/LI&gt;&lt;/OL&gt;&lt;/LI&gt;&lt;LI&gt;In de code ive added: (See 3. Code)&lt;OL&gt;&lt;LI&gt;Siul2_Icu_Ip_Init&lt;/LI&gt;&lt;LI&gt;Siul2_Icu_Ip_EnableInterrupt&lt;/LI&gt;&lt;LI&gt;IntCtrl_Ip_InstallHandler&lt;/LI&gt;&lt;LI&gt;IntCtrl_Ip_EnableIrq&lt;/LI&gt;&lt;/OL&gt;&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;3. Code:&lt;/P&gt;&lt;P&gt;Main.c:&lt;/P&gt;&lt;LI-CODE lang="c"&gt;#include "Mcal.h"
#include "Siul2_Port_Ip.h"
#include "Siul2_Dio_Ip.h"

// Interupts
#include "Intctrl_Ip.h"
#include "Siul2_Icu_Ip.h"

ISR(SIUL2_EXT_IRQ_16_23_ISR);

volatile int exit_code = 0;
/* User includes */

void Usr_Btn_Callback(void){
	Siul2_Dio_Ip_TogglePins(LED1_PORT, LED1_PIN);
	return;
}

int main(void)
{
	Siul2_Port_Ip_Init(NUM_OF_CONFIGURED_PINS0, g_pin_mux_InitConfigArr0);   // Set Ports

	Siul2_Port_Ip_SetInputBuffer(PORTC_H_HALF, USER_BTN2_PIN, TRUE, *(g_pin_mux_InitConfigArr0[4]).inputMuxReg , *(g_pin_mux_InitConfigArr0[4]).inputMux ); // Set input of C20

	// Set ISR
	Siul2_Icu_Ip_Init(SIUL2_ICU_IP_INSTANCE, &amp;amp;Siul2_Icu_Ip_0_Config_PB_BOARD_InitPeripherals);
	Siul2_Icu_Ip_EnableInterrupt (SIUL2_ICU_IP_INSTANCE,(*Siul2_Icu_Ip_0_Config_PB_BOARD_InitPeripherals.pChannelsConfig)[0].hwChannel);
	IntCtrl_Ip_InstallHandler(SIUL_0_IRQn, SIUL2_EXT_IRQ_16_23_ISR, NULL_PTR);
	IntCtrl_Ip_EnableIrq(SIUL_0_IRQn);


    for(;;)
    {
        if(exit_code != 0)
        {
            break;
        }
    }
    return exit_code;
}&lt;/LI-CODE&gt;&lt;P&gt;Siul2_Port_Ip_Cfg.c:&lt;/P&gt;&lt;LI-CODE lang="c"&gt;const Siul2_Port_Ip_PinSettingsConfig g_pin_mux_InitConfigArr0[NUM_OF_CONFIGURED_PINS0] =
{
    {
        .base                        = IP_SIUL2,
        .pinPortIdx                  = 89u,
        .mux                         = PORT_MUX_AS_GPIO,
        .safeMode                    = PORT_SAFE_MODE_DISABLED,
        .inputFilter                 = PORT_INPUT_FILTER_DISABLED,
        .pullConfig                  = PORT_INTERNAL_PULL_NOT_ENABLED,
        .pullKeep                    = PORT_PULL_KEEP_DISABLED,
        .invert                      = PORT_INVERT_DISABLED,
        .inputBuffer                 = PORT_INPUT_BUFFER_DISABLED,
        .outputBuffer                = PORT_OUTPUT_BUFFER_ENABLED,
        .adcInterleaves              = { MUX_MODE_NOT_AVAILABLE, MUX_MODE_NOT_AVAILABLE },
        .initValue                   = 0u
    },
    {
        .base                        = IP_SIUL2,
        .pinPortIdx                  = 91u,
        .mux                         = PORT_MUX_AS_GPIO,
        .safeMode                    = PORT_SAFE_MODE_DISABLED,
        .inputFilter                 = PORT_INPUT_FILTER_DISABLED,
        .driveStrength               = PORT_DRIVE_STRENTGTH_DISABLED,
        .pullConfig                  = PORT_INTERNAL_PULL_NOT_ENABLED,
        .pullKeep                    = PORT_PULL_KEEP_DISABLED,
        .invert                      = PORT_INVERT_DISABLED,
        .inputBuffer                 = PORT_INPUT_BUFFER_DISABLED,
        .outputBuffer                = PORT_OUTPUT_BUFFER_ENABLED,
        .adcInterleaves              = { MUX_MODE_NOT_AVAILABLE, MUX_MODE_NOT_AVAILABLE },
        .initValue                   = 0u
    },
    {
        .base                        = IP_SIUL2,
        .pinPortIdx                  = 217u,
        .mux                         = PORT_MUX_AS_GPIO,
        .safeMode                    = PORT_SAFE_MODE_DISABLED,
        .inputFilter                 = PORT_INPUT_FILTER_DISABLED,
        .driveStrength               = PORT_DRIVE_STRENTGTH_DISABLED,
        .pullConfig                  = PORT_INTERNAL_PULL_NOT_ENABLED,
        .pullKeep                    = PORT_PULL_KEEP_DISABLED,
        .invert                      = PORT_INVERT_DISABLED,
        .inputBuffer                 = PORT_INPUT_BUFFER_DISABLED,
        .outputBuffer                = PORT_OUTPUT_BUFFER_ENABLED,
        .adcInterleaves              = { MUX_MODE_NOT_AVAILABLE, MUX_MODE_NOT_AVAILABLE },
        .initValue                   = 0u
    },
    {
        .base                        = IP_SIUL2,
        .pinPortIdx                  = 216u,
        .mux                         = PORT_MUX_AS_GPIO,
        .safeMode                    = PORT_SAFE_MODE_DISABLED,
        .inputFilter                 = PORT_INPUT_FILTER_DISABLED,
        .driveStrength               = PORT_DRIVE_STRENTGTH_DISABLED,
        .pullConfig                  = PORT_INTERNAL_PULL_NOT_ENABLED,
        .pullKeep                    = PORT_PULL_KEEP_DISABLED,
        .invert                      = PORT_INVERT_DISABLED,
        .inputBuffer                 = PORT_INPUT_BUFFER_DISABLED,
        .outputBuffer                = PORT_OUTPUT_BUFFER_ENABLED,
        .adcInterleaves              = { MUX_MODE_NOT_AVAILABLE, MUX_MODE_NOT_AVAILABLE },
        .initValue                   = 0u
    },
    {
        .base                        = IP_SIUL2,
        .pinPortIdx                  = 84u,
        .mux                         = PORT_MUX_AS_GPIO,
        .safeMode                    = PORT_SAFE_MODE_DISABLED,
        .inputFilter                 = PORT_INPUT_FILTER_DISABLED,
        .pullConfig                  = PORT_INTERNAL_PULL_DOWN_ENABLED,
        .pullKeep                    = PORT_PULL_KEEP_DISABLED,
        .invert                      = PORT_INVERT_DISABLED,
        .inputBuffer                 = PORT_INPUT_BUFFER_ENABLED,
        .outputBuffer                = PORT_OUTPUT_BUFFER_DISABLED,
        .adcInterleaves              = { MUX_MODE_NOT_AVAILABLE, MUX_MODE_NOT_AVAILABLE },
        .inputMuxReg                 = {
                                         32u
                                       },
        .inputMux                    = { 
                                         PORT_INPUT_MUX_ALT3,
                                         PORT_INPUT_MUX_NO_INIT,
                                         PORT_INPUT_MUX_NO_INIT,
                                         PORT_INPUT_MUX_NO_INIT,
                                         PORT_INPUT_MUX_NO_INIT,
                                         PORT_INPUT_MUX_NO_INIT,
                                         PORT_INPUT_MUX_NO_INIT,
                                         PORT_INPUT_MUX_NO_INIT
                                       },
    },
    {
        .base                        = IP_SIUL2,
        .pinPortIdx                  = 171u,
        .mux                         = PORT_MUX_AS_GPIO,
        .safeMode                    = PORT_SAFE_MODE_DISABLED,
        .inputFilter                 = PORT_INPUT_FILTER_DISABLED,
        .pullConfig                  = PORT_INTERNAL_PULL_NOT_ENABLED,
        .pullKeep                    = PORT_PULL_KEEP_DISABLED,
        .invert                      = PORT_INVERT_DISABLED,
        .inputBuffer                 = PORT_INPUT_BUFFER_DISABLED,
        .outputBuffer                = PORT_OUTPUT_BUFFER_ENABLED,
        .adcInterleaves              = { MUX_MODE_NOT_AVAILABLE, MUX_MODE_NOT_AVAILABLE },
        .initValue                   = 0u
    },
};&lt;/LI-CODE&gt;&lt;P&gt;Siul2_Icu_Ip_SA_BOARD_InitPeripherals_PBcfg.c:&lt;/P&gt;&lt;LI-CODE lang="markup"&gt;const Siul2_Icu_Ip_ChannelConfigType Siul2_Icu_Ip_0_ChannelConfig_PB_BOARD_InitPeripherals[1U] =
{
    /** @brief IcuSiul2Channel_16 */
    {
        /** @brief Siul2 HW Module and Channel used by the Icu channel */
        16U,
        /** @brief Siul2 Digital Filter enable */
        TRUE,
        /** @brief Siul2 Digital Filter value */
        3U,
        /** @brief Siul2 request type*/
        SIUL2_ICU_IRQ,
        /** @brief Siul2 Edge type*/
        SIUL2_ICU_RISING_EDGE,
        /** @brief Callback Pointer */
        NULL_PTR,
        /** @brief Notification function */
        &amp;amp;Usr_Btn_Callback,
          /** @brief Callback Param1*/
        16U
    }
};

/*
*  @brief    BOARD_InitPeripherals SIUL2 Instance Configuration
*/
const Siul2_Icu_Ip_InstanceConfigType Siul2_Icu_Ip_0_InstanceConfig_PB_BOARD_InitPeripherals =
{
    /** @brief Interrupt Filter Clock Prescaler */
    (uint8)2U,
    /** @brief Interrupt Filter Clock Alternate Prescaler  */
    (uint8)0U
};

/*
*  @brief    BOARD_InitPeripherals Default SIUL2 IP Configuration
*/
const Siul2_Icu_Ip_ConfigType Siul2_Icu_Ip_0_Config_PB_BOARD_InitPeripherals =
{
    /** @brief Number of Siul2 channels in the Icu configuration */
    (uint8)1U,
    /** @brief The Siul2 instance configuration */
    &amp;amp;Siul2_Icu_Ip_0_InstanceConfig_PB_BOARD_InitPeripherals,
    /** @brief Pointer to the array of Siul2 channel configurations */
    &amp;amp;Siul2_Icu_Ip_0_ChannelConfig_PB_BOARD_InitPeripherals
};&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;4. What I want.&lt;/P&gt;&lt;P&gt;I would like a simple program to change the led on and off. with an simple interrupt. I also have version 3.4/3.5 and 3.6 of the S32DS, because the HVBMS is on an S32k357 and the examples are on version 3.5 on the IDE.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 04 Feb 2025 09:59:33 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/S32k344-wb-Rising-Edge-Interrupt/m-p/2037627#M45604</guid>
      <dc:creator>koen_Intercel</dc:creator>
      <dc:date>2025-02-04T09:59:33Z</dc:date>
    </item>
    <item>
      <title>Re: S32k344-wb Rising Edge Interrupt.</title>
      <link>https://community.nxp.com/t5/S32K/S32k344-wb-Rising-Edge-Interrupt/m-p/2037943#M45615</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;
&lt;P&gt;Thank you so much for your interest in our products and for using our community.&lt;/P&gt;
&lt;P&gt;I suppose that you are using the examples provided in &lt;A href="https://community.nxp.com/t5/S32K/S32K344-Whiteboard-Example-Project/m-p/1500850" target="_blank" rel="noopener"&gt;S32K344 Whiteboard Example Project&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;Additionally you could refer to the example project for S32K344 that are included in the RTD:&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="2025-02-04_12-59-44.png" style="width: 400px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/322372iD58FBFFA9B92CA6B/image-size/medium?v=v2&amp;amp;px=400" role="button" title="2025-02-04_12-59-44.png" alt="2025-02-04_12-59-44.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;Hope it helps you.&lt;/P&gt;
&lt;P&gt;Have a nice day!&lt;/P&gt;</description>
      <pubDate>Tue, 04 Feb 2025 19:08:43 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/S32k344-wb-Rising-Edge-Interrupt/m-p/2037943#M45615</guid>
      <dc:creator>_Leo_</dc:creator>
      <dc:date>2025-02-04T19:08:43Z</dc:date>
    </item>
  </channel>
</rss>

