<!clock: {"ALL" : "GPE" };
  pin:   {"GPIOPEPIN0Checkbox" : {"1" : "PE.0"} ,
		  "GPIOPEPIN1Checkbox" : {"1" : "PE.1"} ,
		  "GPIOPEPIN2Checkbox" : {"1" : "PE.2"} ,
		  "GPIOPEPIN3Checkbox" : {"1" : "PE.3"} ,
		  "GPIOPEPIN4Checkbox" : {"1" : "PE.4"} ,
		  "GPIOPEPIN5Checkbox" : {"1" : "PE.5"} ,
		  "GPIOPEPIN6Checkbox" : {"1" : "PE.6"} ,
		  "GPIOPEPIN7Checkbox" : {"1" : "PE.7"} ,
		  "GPIOPEPIN8Checkbox" : {"1" : "PE.8"} ,
		  "GPIOPEPIN9Checkbox" : {"1" : "PE.9"} ,
		  "GPIOPEPIN10Checkbox" : {"1" : "PE.10"} ,
		  "GPIOPEPIN11Checkbox" : {"1" : "PE.11"} ,
		  "GPIOPEPIN12Checkbox" : {"1" : "PE.12"} ,
		  "GPIOPEPIN13Checkbox" : {"1" : "PE.13"} ,
		  "GPIOPEPIN14Checkbox" : {"1" : "PE.14"} ,
		  "GPIOPEPIN15Checkbox" : {"1" : "PE.15"} ,
		  "ALL" : [""]};
!>
/*--------------------------------------------------------------------------*/
/* GPIO PE Configuration                                                      */
/*--------------------------------------------------------------------------*/
#define NUCODEGEN_GPIO_PE_MODE_INPUT              0x0UL                  /*!< Input Mode */
#define NUCODEGEN_GPIO_PE_MODE_OUTPUT             0x1UL                  /*!< Output Mode */
#define NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN         0x2UL                  /*!< Open-Drain Mode */
#define NUCODEGEN_GPIO_PE_MODE_QUASI              0x3UL                  /*!< Quasi-bidirectional Mode */

#define NUCODEGEN_GPIO_PE_PIN0_EN				<!id:GPIOPEPIN0Checkbox;
												type:checkbox;
												label:Enable pin 0 setting;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:none;
												dependenciesOption:none;
                                                groupId:Group0;
                                                groupName:GPIO_PE pin 0 configuration;
                                                filterExp:PE_dot0==1;!>
#if NUCODEGEN_GPIO_PE_PIN0_EN
#define NUCODEGEN_GPIO_PE_PIN0_MODE				<!id:GPIOPEPIN0MODERadio;
												type:radio;
												label:Select pin 0 mode;
												data:NUCODEGEN_GPIO_PE_MODE_INPUT;
												default:NUCODEGEN_GPIO_PE_MODE_INPUT;
												sort:false;
												enum:[NUCODEGEN_GPIO_PE_MODE_INPUT, NUCODEGEN_GPIO_PE_MODE_OUTPUT, NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN, NUCODEGEN_GPIO_PE_MODE_QUASI];
												optionLabels:[Input, Output, Open drain, Quasi];
												vertical:false;
												dependencies:GPIOPEPIN0Checkbox;
                                                dependenciesOption:1;
												groupId:Group0;
                                                filterExp:PE_dot0==1;!>

#define NUCODEGEN_GPIO_PE_PIN0_DINOFF			<!id:GPIOPEPIN0DINOFFCheckbox;
												type:checkbox;
												label:Disable pin 0 digital input path;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN0Checkbox;
                                                dependenciesOption:1;
												groupId:Group0;
                                                filterExp:PE_dot0==1;!>

#define NUCODEGEN_GPIO_PE_PIN0_DOUT				<!id:GPIOPEPIN0DOUTRadio;
												type:radio;
												label:Set pin 0 out data;
												data:1;
												default:1;
												sort:false;
												enum:[0, 1];
												optionLabels:[Low, High];
												vertical:false;
												dependencies:GPIOPEPIN0MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OUTPUT|NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group0;
                                                filterExp:PE_dot0==1;!>

#define NUCODEGEN_GPIO_PE_PIN0_DATMSK			<!id:GPIOPEPIN0DATMSKCheckbox;
												type:checkbox;
												label:Enable pin 0 DOUT mask;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN0MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OUTPUT|NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group0;
                                                filterExp:PE_dot0==1;!>

#define NUCODEGEN_GPIO_PE_PIN0_DBEN				<!id:GPIOPEPIN0DBENCheckbox;
												type:checkbox;
												label:Enable pin 0 de-bounce;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN0MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group0;
                                                filterExp:PE_dot0==1;!>

#define NUCODEGEN_GPIO_PE_PIN0_INTTYPE			<!id:GPIOPEPIN0INTTYPERadio;
												type:radio;
												label:Select pin 0 edge or level interrupt;
												data:GPIO_INTTYPE_EDGE;
												default:GPIO_INTTYPE_EDGE;
												sort:false;
												enum:[GPIO_INTTYPE_EDGE, GPIO_INTTYPE_LEVEL];
												optionLabels:[Edge, Level];
												vertical:false;
												dependencies:GPIOPEPIN0MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group0;
                                                filterExp:PE_dot0==1;!>

#define NUCODEGEN_GPIO_PE_PIN0_FLIEN			<!id:GPIOPEPIN0FLIENCheckbox;
												type:checkbox;
												label:Enable falling or low interrupt;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN0MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group0;
                                                filterExp:PE_dot0==1;!>

#define NUCODEGEN_GPIO_PE_PIN0_RHIEN			<!id:GPIOPEPIN0RHIENCheckbox;
												type:checkbox;
												label:Enable rising or high interrupt;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN0MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group0;
                                                filterExp:PE_dot0==1;!>

#define NUCODEGEN_GPIO_PE_PIN0_SLEW				<!id:GPIOPEPIN0SLEWRadio;
												type:radio;
												label:Select pin 0 slew rate;
												data:GPIO_SLEWCTL_NORMAL;
												default:GPIO_SLEWCTL_NORMAL;
												sort:false;
												enum:[GPIO_SLEWCTL_NORMAL, GPIO_SLEWCTL_HIGH];
												optionLabels:[Normal, High];
												vertical:false;
												dependencies:GPIOPEPIN0MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OUTPUT|NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group0;
                                                filterExp:PE_dot0==1;!>

#if (NUCODEGEN_GPIO_PE_PIN0_MODE == NUCODEGEN_GPIO_PE_MODE_INPUT)
#define NUCODEGEN_GPIO_PE_PIN0_PUSEL			<!id:GPIOPEPIN0PUSELRadio;
												type:radio;
												label:Select pin 0 pull-up or pull-down;
												data:GPIO_PUSEL_DISABLE;
												default:GPIO_PUSEL_DISABLE;
												sort:false;
												enum:[GPIO_PUSEL_DISABLE, GPIO_PUSEL_PULL_UP, GPIO_PUSEL_PULL_DOWN];
												optionLabels:[Disable, Pull-up, Pull-down];
												vertical:false;
												dependencies:GPIOPEPIN0MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT;
												groupId:Group0;
                                                filterExp:PE_dot0==1;!>
#endif //(NUCODEGEN_GPIO_PE_PIN0_MODE == NUCODEGEN_GPIO_PE_MODE_INPUT)

#if (NUCODEGEN_GPIO_PE_PIN0_MODE == NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN)
#define NUCODEGEN_GPIO_PE_PIN0_PUSEL			<!id:GPIOPEPIN0PUSELRadio2;
												type:radio;
												label:Select pin 0 pull-up or disable;
												data:GPIO_PUSEL_DISABLE;
												default:GPIO_PUSEL_DISABLE;
												sort:false;
												enum:[GPIO_PUSEL_DISABLE, GPIO_PUSEL_PULL_UP];
												optionLabels:[Disable, Pull-up];
												vertical:false;
												dependencies:GPIOPEPIN0MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN;
												groupId:Group0;
                                                filterExp:PE_dot0==1;!>
#endif
#endif //NUCODEGEN_GPIO_PE_PIN0_EN

#define NUCODEGEN_GPIO_PE_PIN1_EN				<!id:GPIOPEPIN1Checkbox;
												type:checkbox;
												label:Enable pin 1 setting;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:none;
												dependenciesOption:none;
                                                groupId:Group1;
                                                groupName:GPIO_PE pin 1 configuration;
                                                filterExp:PE_dot1==1;!>
#if NUCODEGEN_GPIO_PE_PIN1_EN
#define NUCODEGEN_GPIO_PE_PIN1_MODE				<!id:GPIOPEPIN1MODERadio;
												type:radio;
												label:Select pin 1 mode;
												data:NUCODEGEN_GPIO_PE_MODE_INPUT;
												default:NUCODEGEN_GPIO_PE_MODE_INPUT;
												sort:false;
												enum:[NUCODEGEN_GPIO_PE_MODE_INPUT, NUCODEGEN_GPIO_PE_MODE_OUTPUT, NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN, NUCODEGEN_GPIO_PE_MODE_QUASI];
												optionLabels:[Input, Output, Open drain, Quasi];
												vertical:false;
												dependencies:GPIOPEPIN1Checkbox;
                                                dependenciesOption:1;
												groupId:Group1;
                                                filterExp:PE_dot1==1;!>

#define NUCODEGEN_GPIO_PE_PIN1_DINOFF			<!id:GPIOPEPIN1DINOFFCheckbox;
												type:checkbox;
												label:Disable pin 1 digital input path;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN1Checkbox;
                                                dependenciesOption:1;
												groupId:Group1;
                                                filterExp:PE_dot1==1;!>

#define NUCODEGEN_GPIO_PE_PIN1_DOUT				<!id:GPIOPEPIN1DOUTRadio;
												type:radio;
												label:Set pin 1 out data;
												data:1;
												default:1;
												sort:false;
												enum:[0, 1];
												optionLabels:[Low, High];
												vertical:false;
												dependencies:GPIOPEPIN1MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OUTPUT|NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group1;
                                                filterExp:PE_dot1==1;!>

#define NUCODEGEN_GPIO_PE_PIN1_DATMSK			<!id:GPIOPEPIN1DATMSKCheckbox;
												type:checkbox;
												label:Enable pin 1 DOUT mask;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN1MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OUTPUT|NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group1;
                                                filterExp:PE_dot1==1;!>

#define NUCODEGEN_GPIO_PE_PIN1_DBEN				<!id:GPIOPEPIN1DBENCheckbox;
												type:checkbox;
												label:Enable pin 1 de-bounce;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN1MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group1;
                                                filterExp:PE_dot1==1;!>

#define NUCODEGEN_GPIO_PE_PIN1_INTTYPE			<!id:GPIOPEPIN1INTTYPERadio;
												type:radio;
												label:Select pin 1 edge or level interrupt;
												data:GPIO_INTTYPE_EDGE;
												default:GPIO_INTTYPE_EDGE;
												sort:false;
												enum:[GPIO_INTTYPE_EDGE, GPIO_INTTYPE_LEVEL];
												optionLabels:[Edge, Level];
												vertical:false;
												dependencies:GPIOPEPIN1MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group1;
                                                filterExp:PE_dot1==1;!>

#define NUCODEGEN_GPIO_PE_PIN1_FLIEN			<!id:GPIOPEPIN1FLIENCheckbox;
												type:checkbox;
												label:Enable falling or low interrupt;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN1MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group1;
                                                filterExp:PE_dot1==1;!>

#define NUCODEGEN_GPIO_PE_PIN1_RHIEN			<!id:GPIOPEPIN1RHIENCheckbox;
												type:checkbox;
												label:Enable rising or high interrupt;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN1MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group1;
                                                filterExp:PE_dot1==1;!>

#define NUCODEGEN_GPIO_PE_PIN1_SLEW				<!id:GPIOPEPIN1SLEWRadio;
												type:radio;
												label:Select pin 1 slew rate;
												data:GPIO_SLEWCTL_NORMAL;
												default:GPIO_SLEWCTL_NORMAL;
												sort:false;
												enum:[GPIO_SLEWCTL_NORMAL, GPIO_SLEWCTL_HIGH];
												optionLabels:[Normal, High];
												vertical:false;
												dependencies:GPIOPEPIN1MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OUTPUT|NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group1;
                                                filterExp:PE_dot1==1;!>

#if (NUCODEGEN_GPIO_PE_PIN1_MODE == NUCODEGEN_GPIO_PE_MODE_INPUT)
#define NUCODEGEN_GPIO_PE_PIN1_PUSEL			<!id:GPIOPEPIN1PUSELRadio;
												type:radio;
												label:Select pin 1 pull-up or pull-down;
												data:GPIO_PUSEL_DISABLE;
												default:GPIO_PUSEL_DISABLE;
												sort:false;
												enum:[GPIO_PUSEL_DISABLE, GPIO_PUSEL_PULL_UP, GPIO_PUSEL_PULL_DOWN];
												optionLabels:[Disable, Pull-up, Pull-down];
												vertical:false;
												dependencies:GPIOPEPIN1MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT;
												groupId:Group1;
                                                filterExp:PE_dot1==1;!>
#endif //(NUCODEGEN_GPIO_PE_PIN1_MODE == NUCODEGEN_GPIO_PE_MODE_INPUT)

#if (NUCODEGEN_GPIO_PE_PIN1_MODE == NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN)
#define NUCODEGEN_GPIO_PE_PIN1_PUSEL			<!id:GPIOPEPIN1PUSELRadio2;
												type:radio;
												label:Select pin 1 pull-up or disable;
												data:GPIO_PUSEL_DISABLE;
												default:GPIO_PUSEL_DISABLE;
												sort:false;
												enum:[GPIO_PUSEL_DISABLE, GPIO_PUSEL_PULL_UP];
												optionLabels:[Disable, Pull-up];
												vertical:false;
												dependencies:GPIOPEPIN1MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN;
												groupId:Group1;
                                                filterExp:PE_dot1==1;!>
#endif
#endif //NUCODEGEN_GPIO_PE_PIN1_EN

#define NUCODEGEN_GPIO_PE_PIN2_EN				<!id:GPIOPEPIN2Checkbox;
												type:checkbox;
												label:Enable pin 2 setting;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:none;
												dependenciesOption:none;
                                                groupId:Group2;
                                                groupName:GPIO_PE pin 2 configuration;
                                                filterExp:PE_dot2==1;!>
#if NUCODEGEN_GPIO_PE_PIN2_EN
#define NUCODEGEN_GPIO_PE_PIN2_MODE				<!id:GPIOPEPIN2MODERadio;
												type:radio;
												label:Select pin 2 mode;
												data:NUCODEGEN_GPIO_PE_MODE_INPUT;
												default:NUCODEGEN_GPIO_PE_MODE_INPUT;
												sort:false;
												enum:[NUCODEGEN_GPIO_PE_MODE_INPUT, NUCODEGEN_GPIO_PE_MODE_OUTPUT, NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN, NUCODEGEN_GPIO_PE_MODE_QUASI];
												optionLabels:[Input, Output, Open drain, Quasi];
												vertical:false;
												dependencies:GPIOPEPIN2Checkbox;
                                                dependenciesOption:1;
												groupId:Group2;
                                                filterExp:PE_dot2==1;!>

#define NUCODEGEN_GPIO_PE_PIN2_DINOFF			<!id:GPIOPEPIN2DINOFFCheckbox;
												type:checkbox;
												label:Disable pin 2 digital input path;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN2Checkbox;
                                                dependenciesOption:1;
												groupId:Group2;
                                                filterExp:PE_dot2==1;!>

#define NUCODEGEN_GPIO_PE_PIN2_DOUT				<!id:GPIOPEPIN2DOUTRadio;
												type:radio;
												label:Set pin 2 out data;
												data:1;
												default:1;
												sort:false;
												enum:[0, 1];
												optionLabels:[Low, High];
												vertical:false;
												dependencies:GPIOPEPIN2MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OUTPUT|NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group2;
                                                filterExp:PE_dot2==1;!>

#define NUCODEGEN_GPIO_PE_PIN2_DATMSK			<!id:GPIOPEPIN2DATMSKCheckbox;
												type:checkbox;
												label:Enable pin 2 DOUT mask;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN2MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OUTPUT|NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group2;
                                                filterExp:PE_dot2==1;!>

#define NUCODEGEN_GPIO_PE_PIN2_DBEN				<!id:GPIOPEPIN2DBENCheckbox;
												type:checkbox;
												label:Enable pin 2 de-bounce;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN2MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group2;
                                                filterExp:PE_dot2==1;!>

#define NUCODEGEN_GPIO_PE_PIN2_INTTYPE			<!id:GPIOPEPIN2INTTYPERadio;
												type:radio;
												label:Select pin 2 edge or level interrupt;
												data:GPIO_INTTYPE_EDGE;
												default:GPIO_INTTYPE_EDGE;
												sort:false;
												enum:[GPIO_INTTYPE_EDGE, GPIO_INTTYPE_LEVEL];
												optionLabels:[Edge, Level];
												vertical:false;
												dependencies:GPIOPEPIN2MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group2;
                                                filterExp:PE_dot2==1;!>

#define NUCODEGEN_GPIO_PE_PIN2_FLIEN			<!id:GPIOPEPIN2FLIENCheckbox;
												type:checkbox;
												label:Enable falling or low interrupt;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN2MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group2;
                                                filterExp:PE_dot2==1;!>

#define NUCODEGEN_GPIO_PE_PIN2_RHIEN			<!id:GPIOPEPIN2RHIENCheckbox;
												type:checkbox;
												label:Enable rising or high interrupt;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN2MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group2;
                                                filterExp:PE_dot2==1;!>

#define NUCODEGEN_GPIO_PE_PIN2_SLEW				<!id:GPIOPEPIN2SLEWRadio;
												type:radio;
												label:Select pin 2 slew rate;
												data:GPIO_SLEWCTL_NORMAL;
												default:GPIO_SLEWCTL_NORMAL;
												sort:false;
												enum:[GPIO_SLEWCTL_NORMAL, GPIO_SLEWCTL_HIGH];
												optionLabels:[Normal, High];
												vertical:false;
												dependencies:GPIOPEPIN2MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OUTPUT|NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group2;
                                                filterExp:PE_dot2==1;!>

#if (NUCODEGEN_GPIO_PE_PIN2_MODE == NUCODEGEN_GPIO_PE_MODE_INPUT)
#define NUCODEGEN_GPIO_PE_PIN2_PUSEL			<!id:GPIOPEPIN2PUSELRadio;
												type:radio;
												label:Select pin 2 pull-up or pull-down;
												data:GPIO_PUSEL_DISABLE;
												default:GPIO_PUSEL_DISABLE;
												sort:false;
												enum:[GPIO_PUSEL_DISABLE, GPIO_PUSEL_PULL_UP, GPIO_PUSEL_PULL_DOWN];
												optionLabels:[Disable, Pull-up, Pull-down];
												vertical:false;
												dependencies:GPIOPEPIN2MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT;
												groupId:Group2;
                                                filterExp:PE_dot2==1;!>
#endif //(NUCODEGEN_GPIO_PE_PIN2_MODE == NUCODEGEN_GPIO_PE_MODE_INPUT)

#if (NUCODEGEN_GPIO_PE_PIN2_MODE == NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN)
#define NUCODEGEN_GPIO_PE_PIN2_PUSEL			<!id:GPIOPEPIN2PUSELRadio2;
												type:radio;
												label:Select pin 2 pull-up or disable;
												data:GPIO_PUSEL_DISABLE;
												default:GPIO_PUSEL_DISABLE;
												sort:false;
												enum:[GPIO_PUSEL_DISABLE, GPIO_PUSEL_PULL_UP];
												optionLabels:[Disable, Pull-up];
												vertical:false;
												dependencies:GPIOPEPIN2MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN;
												groupId:Group2;
                                                filterExp:PE_dot2==1;!>
#endif
#endif //NUCODEGEN_GPIO_PE_PIN2_EN

#define NUCODEGEN_GPIO_PE_PIN3_EN				<!id:GPIOPEPIN3Checkbox;
												type:checkbox;
												label:Enable pin 3 setting;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:none;
												dependenciesOption:none;
                                                groupId:Group3;
                                                groupName:GPIO_PE pin 3 configuration;
                                                filterExp:PE_dot3==1;!>
#if NUCODEGEN_GPIO_PE_PIN3_EN
#define NUCODEGEN_GPIO_PE_PIN3_MODE				<!id:GPIOPEPIN3MODERadio;
												type:radio;
												label:Select pin 3 mode;
												data:NUCODEGEN_GPIO_PE_MODE_INPUT;
												default:NUCODEGEN_GPIO_PE_MODE_INPUT;
												sort:false;
												enum:[NUCODEGEN_GPIO_PE_MODE_INPUT, NUCODEGEN_GPIO_PE_MODE_OUTPUT, NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN, NUCODEGEN_GPIO_PE_MODE_QUASI];
												optionLabels:[Input, Output, Open drain, Quasi];
												vertical:false;
												dependencies:GPIOPEPIN3Checkbox;
                                                dependenciesOption:1;
												groupId:Group3;
                                                filterExp:PE_dot3==1;!>

#define NUCODEGEN_GPIO_PE_PIN3_DINOFF			<!id:GPIOPEPIN3DINOFFCheckbox;
												type:checkbox;
												label:Disable pin 3 digital input path;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN3Checkbox;
                                                dependenciesOption:1;
												groupId:Group3;
                                                filterExp:PE_dot3==1;!>

#define NUCODEGEN_GPIO_PE_PIN3_DOUT				<!id:GPIOPEPIN3DOUTRadio;
												type:radio;
												label:Set pin 3 out data;
												data:1;
												default:1;
												sort:false;
												enum:[0, 1];
												optionLabels:[Low, High];
												vertical:false;
												dependencies:GPIOPEPIN3MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OUTPUT|NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group3;
                                                filterExp:PE_dot3==1;!>

#define NUCODEGEN_GPIO_PE_PIN3_DATMSK			<!id:GPIOPEPIN3DATMSKCheckbox;
												type:checkbox;
												label:Enable pin 3 DOUT mask;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN3MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OUTPUT|NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group3;
                                                filterExp:PE_dot3==1;!>

#define NUCODEGEN_GPIO_PE_PIN3_DBEN				<!id:GPIOPEPIN3DBENCheckbox;
												type:checkbox;
												label:Enable pin 3 de-bounce;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN3MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group3;
                                                filterExp:PE_dot3==1;!>

#define NUCODEGEN_GPIO_PE_PIN3_INTTYPE			<!id:GPIOPEPIN3INTTYPERadio;
												type:radio;
												label:Select pin 3 edge or level interrupt;
												data:GPIO_INTTYPE_EDGE;
												default:GPIO_INTTYPE_EDGE;
												sort:false;
												enum:[GPIO_INTTYPE_EDGE, GPIO_INTTYPE_LEVEL];
												optionLabels:[Edge, Level];
												vertical:false;
												dependencies:GPIOPEPIN3MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group3;
                                                filterExp:PE_dot3==1;!>

#define NUCODEGEN_GPIO_PE_PIN3_FLIEN			<!id:GPIOPEPIN3FLIENCheckbox;
												type:checkbox;
												label:Enable falling or low interrupt;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN3MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group3;
                                                filterExp:PE_dot3==1;!>

#define NUCODEGEN_GPIO_PE_PIN3_RHIEN			<!id:GPIOPEPIN3RHIENCheckbox;
												type:checkbox;
												label:Enable rising or high interrupt;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN3MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group3;
                                                filterExp:PE_dot3==1;!>

#define NUCODEGEN_GPIO_PE_PIN3_SLEW				<!id:GPIOPEPIN3SLEWRadio;
												type:radio;
												label:Select pin 3 slew rate;
												data:GPIO_SLEWCTL_NORMAL;
												default:GPIO_SLEWCTL_NORMAL;
												sort:false;
												enum:[GPIO_SLEWCTL_NORMAL, GPIO_SLEWCTL_HIGH];
												optionLabels:[Normal, High];
												vertical:false;
												dependencies:GPIOPEPIN3MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OUTPUT|NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group3;
                                                filterExp:PE_dot3==1;!>

#if (NUCODEGEN_GPIO_PE_PIN3_MODE == NUCODEGEN_GPIO_PE_MODE_INPUT)
#define NUCODEGEN_GPIO_PE_PIN3_PUSEL			<!id:GPIOPEPIN3PUSELRadio;
												type:radio;
												label:Select pin 3 pull-up or pull-down;
												data:GPIO_PUSEL_DISABLE;
												default:GPIO_PUSEL_DISABLE;
												sort:false;
												enum:[GPIO_PUSEL_DISABLE, GPIO_PUSEL_PULL_UP, GPIO_PUSEL_PULL_DOWN];
												optionLabels:[Disable, Pull-up, Pull-down];
												vertical:false;
												dependencies:GPIOPEPIN3MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT;
												groupId:Group3;
                                                filterExp:PE_dot3==1;!>
#endif //(NUCODEGEN_GPIO_PE_PIN3_MODE == NUCODEGEN_GPIO_PE_MODE_INPUT)

#if (NUCODEGEN_GPIO_PE_PIN3_MODE == NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN)
#define NUCODEGEN_GPIO_PE_PIN3_PUSEL			<!id:GPIOPEPIN3PUSELRadio2;
												type:radio;
												label:Select pin 3 pull-up or disable;
												data:GPIO_PUSEL_DISABLE;
												default:GPIO_PUSEL_DISABLE;
												sort:false;
												enum:[GPIO_PUSEL_DISABLE, GPIO_PUSEL_PULL_UP];
												optionLabels:[Disable, Pull-up];
												vertical:false;
												dependencies:GPIOPEPIN3MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN;
												groupId:Group3;
                                                filterExp:PE_dot3==1;!>
#endif
#endif //NUCODEGEN_GPIO_PE_PIN3_EN

#define NUCODEGEN_GPIO_PE_PIN4_EN				<!id:GPIOPEPIN4Checkbox;
												type:checkbox;
												label:Enable pin 4 setting;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:none;
												dependenciesOption:none;
                                                groupId:Group4;
                                                groupName:GPIO_PE pin 4 configuration;
                                                filterExp:PE_dot4==1;!>
#if NUCODEGEN_GPIO_PE_PIN4_EN
#define NUCODEGEN_GPIO_PE_PIN4_MODE				<!id:GPIOPEPIN4MODERadio;
												type:radio;
												label:Select pin 4 mode;
												data:NUCODEGEN_GPIO_PE_MODE_INPUT;
												default:NUCODEGEN_GPIO_PE_MODE_INPUT;
												sort:false;
												enum:[NUCODEGEN_GPIO_PE_MODE_INPUT, NUCODEGEN_GPIO_PE_MODE_OUTPUT, NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN, NUCODEGEN_GPIO_PE_MODE_QUASI];
												optionLabels:[Input, Output, Open drain, Quasi];
												vertical:false;
												dependencies:GPIOPEPIN4Checkbox;
                                                dependenciesOption:1;
												groupId:Group4;
                                                filterExp:PE_dot4==1;!>

#define NUCODEGEN_GPIO_PE_PIN4_DINOFF			<!id:GPIOPEPIN4DINOFFCheckbox;
												type:checkbox;
												label:Disable pin 4 digital input path;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN4Checkbox;
                                                dependenciesOption:1;
												groupId:Group4;
                                                filterExp:PE_dot4==1;!>

#define NUCODEGEN_GPIO_PE_PIN4_DOUT				<!id:GPIOPEPIN4DOUTRadio;
												type:radio;
												label:Set pin 4 out data;
												data:1;
												default:1;
												sort:false;
												enum:[0, 1];
												optionLabels:[Low, High];
												vertical:false;
												dependencies:GPIOPEPIN4MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OUTPUT|NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group4;
                                                filterExp:PE_dot4==1;!>

#define NUCODEGEN_GPIO_PE_PIN4_DATMSK			<!id:GPIOPEPIN4DATMSKCheckbox;
												type:checkbox;
												label:Enable pin 4 DOUT mask;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN4MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OUTPUT|NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group4;
                                                filterExp:PE_dot4==1;!>

#define NUCODEGEN_GPIO_PE_PIN4_DBEN				<!id:GPIOPEPIN4DBENCheckbox;
												type:checkbox;
												label:Enable pin 4 de-bounce;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN4MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group4;
                                                filterExp:PE_dot4==1;!>

#define NUCODEGEN_GPIO_PE_PIN4_INTTYPE			<!id:GPIOPEPIN4INTTYPERadio;
												type:radio;
												label:Select pin 4 edge or level interrupt;
												data:GPIO_INTTYPE_EDGE;
												default:GPIO_INTTYPE_EDGE;
												sort:false;
												enum:[GPIO_INTTYPE_EDGE, GPIO_INTTYPE_LEVEL];
												optionLabels:[Edge, Level];
												vertical:false;
												dependencies:GPIOPEPIN4MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group4;
                                                filterExp:PE_dot4==1;!>

#define NUCODEGEN_GPIO_PE_PIN4_FLIEN			<!id:GPIOPEPIN4FLIENCheckbox;
												type:checkbox;
												label:Enable falling or low interrupt;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN4MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group4;
                                                filterExp:PE_dot4==1;!>

#define NUCODEGEN_GPIO_PE_PIN4_RHIEN			<!id:GPIOPEPIN4RHIENCheckbox;
												type:checkbox;
												label:Enable rising or high interrupt;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN4MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group4;
                                                filterExp:PE_dot4==1;!>

#define NUCODEGEN_GPIO_PE_PIN4_SLEW				<!id:GPIOPEPIN4SLEWRadio;
												type:radio;
												label:Select pin 4 slew rate;
												data:GPIO_SLEWCTL_NORMAL;
												default:GPIO_SLEWCTL_NORMAL;
												sort:false;
												enum:[GPIO_SLEWCTL_NORMAL, GPIO_SLEWCTL_HIGH];
												optionLabels:[Normal, High];
												vertical:false;
												dependencies:GPIOPEPIN4MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OUTPUT|NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group4;
                                                filterExp:PE_dot4==1;!>

#if (NUCODEGEN_GPIO_PE_PIN4_MODE == NUCODEGEN_GPIO_PE_MODE_INPUT)
#define NUCODEGEN_GPIO_PE_PIN4_PUSEL			<!id:GPIOPEPIN4PUSELRadio;
												type:radio;
												label:Select pin 4 pull-up or pull-down;
												data:GPIO_PUSEL_DISABLE;
												default:GPIO_PUSEL_DISABLE;
												sort:false;
												enum:[GPIO_PUSEL_DISABLE, GPIO_PUSEL_PULL_UP, GPIO_PUSEL_PULL_DOWN];
												optionLabels:[Disable, Pull-up, Pull-down];
												vertical:false;
												dependencies:GPIOPEPIN4MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT;
												groupId:Group4;
                                                filterExp:PE_dot4==1;!>
#endif //(NUCODEGEN_GPIO_PE_PIN4_MODE == NUCODEGEN_GPIO_PE_MODE_INPUT)

#if (NUCODEGEN_GPIO_PE_PIN4_MODE == NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN)
#define NUCODEGEN_GPIO_PE_PIN4_PUSEL			<!id:GPIOPEPIN4PUSELRadio2;
												type:radio;
												label:Select pin 4 pull-up or disable;
												data:GPIO_PUSEL_DISABLE;
												default:GPIO_PUSEL_DISABLE;
												sort:false;
												enum:[GPIO_PUSEL_DISABLE, GPIO_PUSEL_PULL_UP];
												optionLabels:[Disable, Pull-up];
												vertical:false;
												dependencies:GPIOPEPIN4MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN;
												groupId:Group4;
                                                filterExp:PE_dot4==1;!>
#endif
#endif //NUCODEGEN_GPIO_PE_PIN4_EN

#define NUCODEGEN_GPIO_PE_PIN5_EN				<!id:GPIOPEPIN5Checkbox;
												type:checkbox;
												label:Enable pin 5 setting;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:none;
												dependenciesOption:none;
                                                groupId:Group5;
                                                groupName:GPIO_PE pin 5 configuration;
                                                filterExp:PE_dot5==1;!>
#if NUCODEGEN_GPIO_PE_PIN5_EN
#define NUCODEGEN_GPIO_PE_PIN5_MODE				<!id:GPIOPEPIN5MODERadio;
												type:radio;
												label:Select pin 5 mode;
												data:NUCODEGEN_GPIO_PE_MODE_INPUT;
												default:NUCODEGEN_GPIO_PE_MODE_INPUT;
												sort:false;
												enum:[NUCODEGEN_GPIO_PE_MODE_INPUT, NUCODEGEN_GPIO_PE_MODE_OUTPUT, NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN, NUCODEGEN_GPIO_PE_MODE_QUASI];
												optionLabels:[Input, Output, Open drain, Quasi];
												vertical:false;
												dependencies:GPIOPEPIN5Checkbox;
                                                dependenciesOption:1;
												groupId:Group5;
                                                filterExp:PE_dot5==1;!>

#define NUCODEGEN_GPIO_PE_PIN5_DINOFF			<!id:GPIOPEPIN5DINOFFCheckbox;
												type:checkbox;
												label:Disable pin 5 digital input path;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN5Checkbox;
                                                dependenciesOption:1;
												groupId:Group5;
                                                filterExp:PE_dot5==1;!>

#define NUCODEGEN_GPIO_PE_PIN5_DOUT				<!id:GPIOPEPIN5DOUTRadio;
												type:radio;
												label:Set pin 5 out data;
												data:1;
												default:1;
												sort:false;
												enum:[0, 1];
												optionLabels:[Low, High];
												vertical:false;
												dependencies:GPIOPEPIN5MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OUTPUT|NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group5;
                                                filterExp:PE_dot5==1;!>

#define NUCODEGEN_GPIO_PE_PIN5_DATMSK			<!id:GPIOPEPIN5DATMSKCheckbox;
												type:checkbox;
												label:Enable pin 5 DOUT mask;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN5MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OUTPUT|NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group5;
                                                filterExp:PE_dot5==1;!>

#define NUCODEGEN_GPIO_PE_PIN5_DBEN				<!id:GPIOPEPIN5DBENCheckbox;
												type:checkbox;
												label:Enable pin 5 de-bounce;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN5MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group5;
                                                filterExp:PE_dot5==1;!>

#define NUCODEGEN_GPIO_PE_PIN5_INTTYPE			<!id:GPIOPEPIN5INTTYPERadio;
												type:radio;
												label:Select pin 5 edge or level interrupt;
												data:GPIO_INTTYPE_EDGE;
												default:GPIO_INTTYPE_EDGE;
												sort:false;
												enum:[GPIO_INTTYPE_EDGE, GPIO_INTTYPE_LEVEL];
												optionLabels:[Edge, Level];
												vertical:false;
												dependencies:GPIOPEPIN5MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group5;
                                                filterExp:PE_dot5==1;!>

#define NUCODEGEN_GPIO_PE_PIN5_FLIEN			<!id:GPIOPEPIN5FLIENCheckbox;
												type:checkbox;
												label:Enable falling or low interrupt;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN5MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group5;
                                                filterExp:PE_dot5==1;!>

#define NUCODEGEN_GPIO_PE_PIN5_RHIEN			<!id:GPIOPEPIN5RHIENCheckbox;
												type:checkbox;
												label:Enable rising or high interrupt;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN5MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group5;
                                                filterExp:PE_dot5==1;!>

#define NUCODEGEN_GPIO_PE_PIN5_SLEW				<!id:GPIOPEPIN5SLEWRadio;
												type:radio;
												label:Select pin 5 slew rate;
												data:GPIO_SLEWCTL_NORMAL;
												default:GPIO_SLEWCTL_NORMAL;
												sort:false;
												enum:[GPIO_SLEWCTL_NORMAL, GPIO_SLEWCTL_HIGH];
												optionLabels:[Normal, High];
												vertical:false;
												dependencies:GPIOPEPIN5MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OUTPUT|NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group5;
                                                filterExp:PE_dot5==1;!>

#if (NUCODEGEN_GPIO_PE_PIN5_MODE == NUCODEGEN_GPIO_PE_MODE_INPUT)
#define NUCODEGEN_GPIO_PE_PIN5_PUSEL			<!id:GPIOPEPIN5PUSELRadio;
												type:radio;
												label:Select pin 5 pull-up or pull-down;
												data:GPIO_PUSEL_DISABLE;
												default:GPIO_PUSEL_DISABLE;
												sort:false;
												enum:[GPIO_PUSEL_DISABLE, GPIO_PUSEL_PULL_UP, GPIO_PUSEL_PULL_DOWN];
												optionLabels:[Disable, Pull-up, Pull-down];
												vertical:false;
												dependencies:GPIOPEPIN5MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT;
												groupId:Group5;
                                                filterExp:PE_dot5==1;!>
#endif //(NUCODEGEN_GPIO_PE_PIN5_MODE == NUCODEGEN_GPIO_PE_MODE_INPUT)

#if (NUCODEGEN_GPIO_PE_PIN5_MODE == NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN)
#define NUCODEGEN_GPIO_PE_PIN5_PUSEL			<!id:GPIOPEPIN5PUSELRadio2;
												type:radio;
												label:Select pin 5 pull-up or disable;
												data:GPIO_PUSEL_DISABLE;
												default:GPIO_PUSEL_DISABLE;
												sort:false;
												enum:[GPIO_PUSEL_DISABLE, GPIO_PUSEL_PULL_UP];
												optionLabels:[Disable, Pull-up];
												vertical:false;
												dependencies:GPIOPEPIN5MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN;
												groupId:Group5;
                                                filterExp:PE_dot5==1;!>
#endif
#endif //NUCODEGEN_GPIO_PE_PIN5_EN

#define NUCODEGEN_GPIO_PE_PIN6_EN				<!id:GPIOPEPIN6Checkbox;
												type:checkbox;
												label:Enable pin 6 setting;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:none;
												dependenciesOption:none;
                                                groupId:Group6;
                                                groupName:GPIO_PE pin 6 configuration;
                                                filterExp:PE_dot6==1;!>
#if NUCODEGEN_GPIO_PE_PIN6_EN
#define NUCODEGEN_GPIO_PE_PIN6_MODE				<!id:GPIOPEPIN6MODERadio;
												type:radio;
												label:Select pin 6 mode;
												data:NUCODEGEN_GPIO_PE_MODE_INPUT;
												default:NUCODEGEN_GPIO_PE_MODE_INPUT;
												sort:false;
												enum:[NUCODEGEN_GPIO_PE_MODE_INPUT, NUCODEGEN_GPIO_PE_MODE_OUTPUT, NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN, NUCODEGEN_GPIO_PE_MODE_QUASI];
												optionLabels:[Input, Output, Open drain, Quasi];
												vertical:false;
												dependencies:GPIOPEPIN6Checkbox;
                                                dependenciesOption:1;
												groupId:Group6;
                                                filterExp:PE_dot6==1;!>

#define NUCODEGEN_GPIO_PE_PIN6_DINOFF			<!id:GPIOPEPIN6DINOFFCheckbox;
												type:checkbox;
												label:Disable pin 6 digital input path;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN6Checkbox;
                                                dependenciesOption:1;
												groupId:Group6;
                                                filterExp:PE_dot6==1;!>

#define NUCODEGEN_GPIO_PE_PIN6_DOUT				<!id:GPIOPEPIN6DOUTRadio;
												type:radio;
												label:Set pin 6 out data;
												data:1;
												default:1;
												sort:false;
												enum:[0, 1];
												optionLabels:[Low, High];
												vertical:false;
												dependencies:GPIOPEPIN6MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OUTPUT|NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group6;
                                                filterExp:PE_dot6==1;!>

#define NUCODEGEN_GPIO_PE_PIN6_DATMSK			<!id:GPIOPEPIN6DATMSKCheckbox;
												type:checkbox;
												label:Enable pin 6 DOUT mask;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN6MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OUTPUT|NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group6;
                                                filterExp:PE_dot6==1;!>

#define NUCODEGEN_GPIO_PE_PIN6_DBEN				<!id:GPIOPEPIN6DBENCheckbox;
												type:checkbox;
												label:Enable pin 6 de-bounce;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN6MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group6;
                                                filterExp:PE_dot6==1;!>

#define NUCODEGEN_GPIO_PE_PIN6_INTTYPE			<!id:GPIOPEPIN6INTTYPERadio;
												type:radio;
												label:Select pin 6 edge or level interrupt;
												data:GPIO_INTTYPE_EDGE;
												default:GPIO_INTTYPE_EDGE;
												sort:false;
												enum:[GPIO_INTTYPE_EDGE, GPIO_INTTYPE_LEVEL];
												optionLabels:[Edge, Level];
												vertical:false;
												dependencies:GPIOPEPIN6MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group6;
                                                filterExp:PE_dot6==1;!>

#define NUCODEGEN_GPIO_PE_PIN6_FLIEN			<!id:GPIOPEPIN6FLIENCheckbox;
												type:checkbox;
												label:Enable falling or low interrupt;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN6MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group6;
                                                filterExp:PE_dot6==1;!>

#define NUCODEGEN_GPIO_PE_PIN6_RHIEN			<!id:GPIOPEPIN6RHIENCheckbox;
												type:checkbox;
												label:Enable rising or high interrupt;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN6MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group6;
                                                filterExp:PE_dot6==1;!>

#define NUCODEGEN_GPIO_PE_PIN6_SLEW				<!id:GPIOPEPIN6SLEWRadio;
												type:radio;
												label:Select pin 6 slew rate;
												data:GPIO_SLEWCTL_NORMAL;
												default:GPIO_SLEWCTL_NORMAL;
												sort:false;
												enum:[GPIO_SLEWCTL_NORMAL, GPIO_SLEWCTL_HIGH];
												optionLabels:[Normal, High];
												vertical:false;
												dependencies:GPIOPEPIN6MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OUTPUT|NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group6;
                                                filterExp:PE_dot6==1;!>

#if (NUCODEGEN_GPIO_PE_PIN6_MODE == NUCODEGEN_GPIO_PE_MODE_INPUT)
#define NUCODEGEN_GPIO_PE_PIN6_PUSEL			<!id:GPIOPEPIN6PUSELRadio;
												type:radio;
												label:Select pin 6 pull-up or pull-down;
												data:GPIO_PUSEL_DISABLE;
												default:GPIO_PUSEL_DISABLE;
												sort:false;
												enum:[GPIO_PUSEL_DISABLE, GPIO_PUSEL_PULL_UP, GPIO_PUSEL_PULL_DOWN];
												optionLabels:[Disable, Pull-up, Pull-down];
												vertical:false;
												dependencies:GPIOPEPIN6MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT;
												groupId:Group6;
                                                filterExp:PE_dot6==1;!>
#endif //(NUCODEGEN_GPIO_PE_PIN6_MODE == NUCODEGEN_GPIO_PE_MODE_INPUT)

#if (NUCODEGEN_GPIO_PE_PIN6_MODE == NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN)
#define NUCODEGEN_GPIO_PE_PIN6_PUSEL			<!id:GPIOPEPIN6PUSELRadio2;
												type:radio;
												label:Select pin 6 pull-up or disable;
												data:GPIO_PUSEL_DISABLE;
												default:GPIO_PUSEL_DISABLE;
												sort:false;
												enum:[GPIO_PUSEL_DISABLE, GPIO_PUSEL_PULL_UP];
												optionLabels:[Disable, Pull-up];
												vertical:false;
												dependencies:GPIOPEPIN6MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN;
												groupId:Group6;
                                                filterExp:PE_dot6==1;!>
#endif
#endif //NUCODEGEN_GPIO_PE_PIN6_EN

#define NUCODEGEN_GPIO_PE_PIN7_EN				<!id:GPIOPEPIN7Checkbox;
												type:checkbox;
												label:Enable pin 7 setting;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:none;
												dependenciesOption:none;
                                                groupId:Group7;
                                                groupName:GPIO_PE pin 7 configuration;
                                                filterExp:PE_dot7==1;!>
#if NUCODEGEN_GPIO_PE_PIN7_EN
#define NUCODEGEN_GPIO_PE_PIN7_MODE				<!id:GPIOPEPIN7MODERadio;
												type:radio;
												label:Select pin 7 mode;
												data:NUCODEGEN_GPIO_PE_MODE_INPUT;
												default:NUCODEGEN_GPIO_PE_MODE_INPUT;
												sort:false;
												enum:[NUCODEGEN_GPIO_PE_MODE_INPUT, NUCODEGEN_GPIO_PE_MODE_OUTPUT, NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN, NUCODEGEN_GPIO_PE_MODE_QUASI];
												optionLabels:[Input, Output, Open drain, Quasi];
												vertical:false;
												dependencies:GPIOPEPIN7Checkbox;
                                                dependenciesOption:1;
												groupId:Group7;
                                                filterExp:PE_dot7==1;!>

#define NUCODEGEN_GPIO_PE_PIN7_DINOFF			<!id:GPIOPEPIN7DINOFFCheckbox;
												type:checkbox;
												label:Disable pin 7 digital input path;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN7Checkbox;
                                                dependenciesOption:1;
												groupId:Group7;
                                                filterExp:PE_dot7==1;!>

#define NUCODEGEN_GPIO_PE_PIN7_DOUT				<!id:GPIOPEPIN7DOUTRadio;
												type:radio;
												label:Set pin 7 out data;
												data:1;
												default:1;
												sort:false;
												enum:[0, 1];
												optionLabels:[Low, High];
												vertical:false;
												dependencies:GPIOPEPIN7MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OUTPUT|NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group7;
                                                filterExp:PE_dot7==1;!>

#define NUCODEGEN_GPIO_PE_PIN7_DATMSK			<!id:GPIOPEPIN7DATMSKCheckbox;
												type:checkbox;
												label:Enable pin 7 DOUT mask;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN7MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OUTPUT|NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group7;
                                                filterExp:PE_dot7==1;!>

#define NUCODEGEN_GPIO_PE_PIN7_DBEN				<!id:GPIOPEPIN7DBENCheckbox;
												type:checkbox;
												label:Enable pin 7 de-bounce;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN7MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group7;
                                                filterExp:PE_dot7==1;!>

#define NUCODEGEN_GPIO_PE_PIN7_INTTYPE			<!id:GPIOPEPIN7INTTYPERadio;
												type:radio;
												label:Select pin 7 edge or level interrupt;
												data:GPIO_INTTYPE_EDGE;
												default:GPIO_INTTYPE_EDGE;
												sort:false;
												enum:[GPIO_INTTYPE_EDGE, GPIO_INTTYPE_LEVEL];
												optionLabels:[Edge, Level];
												vertical:false;
												dependencies:GPIOPEPIN7MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group7;
                                                filterExp:PE_dot7==1;!>

#define NUCODEGEN_GPIO_PE_PIN7_FLIEN			<!id:GPIOPEPIN7FLIENCheckbox;
												type:checkbox;
												label:Enable falling or low interrupt;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN7MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group7;
                                                filterExp:PE_dot7==1;!>

#define NUCODEGEN_GPIO_PE_PIN7_RHIEN			<!id:GPIOPEPIN7RHIENCheckbox;
												type:checkbox;
												label:Enable rising or high interrupt;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN7MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group7;
                                                filterExp:PE_dot7==1;!>

#define NUCODEGEN_GPIO_PE_PIN7_SLEW				<!id:GPIOPEPIN7SLEWRadio;
												type:radio;
												label:Select pin 7 slew rate;
												data:GPIO_SLEWCTL_NORMAL;
												default:GPIO_SLEWCTL_NORMAL;
												sort:false;
												enum:[GPIO_SLEWCTL_NORMAL, GPIO_SLEWCTL_HIGH];
												optionLabels:[Normal, High];
												vertical:false;
												dependencies:GPIOPEPIN7MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OUTPUT|NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group7;
                                                filterExp:PE_dot7==1;!>

#if (NUCODEGEN_GPIO_PE_PIN7_MODE == NUCODEGEN_GPIO_PE_MODE_INPUT)
#define NUCODEGEN_GPIO_PE_PIN7_PUSEL			<!id:GPIOPEPIN7PUSELRadio;
												type:radio;
												label:Select pin 7 pull-up or pull-down;
												data:GPIO_PUSEL_DISABLE;
												default:GPIO_PUSEL_DISABLE;
												sort:false;
												enum:[GPIO_PUSEL_DISABLE, GPIO_PUSEL_PULL_UP, GPIO_PUSEL_PULL_DOWN];
												optionLabels:[Disable, Pull-up, Pull-down];
												vertical:false;
												dependencies:GPIOPEPIN7MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT;
												groupId:Group7;
                                                filterExp:PE_dot7==1;!>
#endif //(NUCODEGEN_GPIO_PE_PIN7_MODE == NUCODEGEN_GPIO_PE_MODE_INPUT)

#if (NUCODEGEN_GPIO_PE_PIN7_MODE == NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN)
#define NUCODEGEN_GPIO_PE_PIN7_PUSEL			<!id:GPIOPEPIN7PUSELRadio2;
												type:radio;
												label:Select pin 7 pull-up or disable;
												data:GPIO_PUSEL_DISABLE;
												default:GPIO_PUSEL_DISABLE;
												sort:false;
												enum:[GPIO_PUSEL_DISABLE, GPIO_PUSEL_PULL_UP];
												optionLabels:[Disable, Pull-up];
												vertical:false;
												dependencies:GPIOPEPIN7MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN;
												groupId:Group7;
                                                filterExp:PE_dot7==1;!>
#endif
#endif //NUCODEGEN_GPIO_PE_PIN7_EN

#define NUCODEGEN_GPIO_PE_PIN8_EN				<!id:GPIOPEPIN8Checkbox;
												type:checkbox;
												label:Enable pin 8 setting;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:none;
												dependenciesOption:none;
                                                groupId:Group8;
                                                groupName:GPIO_PE pin 8 configuration;
                                                filterExp:PE_dot8==1;!>
#if NUCODEGEN_GPIO_PE_PIN8_EN
#define NUCODEGEN_GPIO_PE_PIN8_MODE				<!id:GPIOPEPIN8MODERadio;
												type:radio;
												label:Select pin 8 mode;
												data:NUCODEGEN_GPIO_PE_MODE_INPUT;
												default:NUCODEGEN_GPIO_PE_MODE_INPUT;
												sort:false;
												enum:[NUCODEGEN_GPIO_PE_MODE_INPUT, NUCODEGEN_GPIO_PE_MODE_OUTPUT, NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN, NUCODEGEN_GPIO_PE_MODE_QUASI];
												optionLabels:[Input, Output, Open drain, Quasi];
												vertical:false;
												dependencies:GPIOPEPIN8Checkbox;
                                                dependenciesOption:1;
												groupId:Group8;
                                                filterExp:PE_dot8==1;!>

#define NUCODEGEN_GPIO_PE_PIN8_DINOFF			<!id:GPIOPEPIN8DINOFFCheckbox;
												type:checkbox;
												label:Disable pin 8 digital input path;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN8Checkbox;
                                                dependenciesOption:1;
												groupId:Group8;
                                                filterExp:PE_dot8==1;!>

#define NUCODEGEN_GPIO_PE_PIN8_DOUT				<!id:GPIOPEPIN8DOUTRadio;
												type:radio;
												label:Set pin 8 out data;
												data:1;
												default:1;
												sort:false;
												enum:[0, 1];
												optionLabels:[Low, High];
												vertical:false;
												dependencies:GPIOPEPIN8MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OUTPUT|NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group8;
                                                filterExp:PE_dot8==1;!>

#define NUCODEGEN_GPIO_PE_PIN8_DATMSK			<!id:GPIOPEPIN8DATMSKCheckbox;
												type:checkbox;
												label:Enable pin 8 DOUT mask;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN8MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OUTPUT|NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group8;
                                                filterExp:PE_dot8==1;!>

#define NUCODEGEN_GPIO_PE_PIN8_DBEN				<!id:GPIOPEPIN8DBENCheckbox;
												type:checkbox;
												label:Enable pin 8 de-bounce;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN8MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group8;
                                                filterExp:PE_dot8==1;!>

#define NUCODEGEN_GPIO_PE_PIN8_INTTYPE			<!id:GPIOPEPIN8INTTYPERadio;
												type:radio;
												label:Select pin 8 edge or level interrupt;
												data:GPIO_INTTYPE_EDGE;
												default:GPIO_INTTYPE_EDGE;
												sort:false;
												enum:[GPIO_INTTYPE_EDGE, GPIO_INTTYPE_LEVEL];
												optionLabels:[Edge, Level];
												vertical:false;
												dependencies:GPIOPEPIN8MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group8;
                                                filterExp:PE_dot8==1;!>

#define NUCODEGEN_GPIO_PE_PIN8_FLIEN			<!id:GPIOPEPIN8FLIENCheckbox;
												type:checkbox;
												label:Enable falling or low interrupt;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN8MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group8;
                                                filterExp:PE_dot8==1;!>

#define NUCODEGEN_GPIO_PE_PIN8_RHIEN			<!id:GPIOPEPIN8RHIENCheckbox;
												type:checkbox;
												label:Enable rising or high interrupt;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN8MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group8;
                                                filterExp:PE_dot8==1;!>

#define NUCODEGEN_GPIO_PE_PIN8_SLEW				<!id:GPIOPEPIN8SLEWRadio;
												type:radio;
												label:Select pin 8 slew rate;
												data:GPIO_SLEWCTL_NORMAL;
												default:GPIO_SLEWCTL_NORMAL;
												sort:false;
												enum:[GPIO_SLEWCTL_NORMAL, GPIO_SLEWCTL_HIGH];
												optionLabels:[Normal, High];
												vertical:false;
												dependencies:GPIOPEPIN8MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OUTPUT|NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group8;
                                                filterExp:PE_dot8==1;!>

#if (NUCODEGEN_GPIO_PE_PIN8_MODE == NUCODEGEN_GPIO_PE_MODE_INPUT)
#define NUCODEGEN_GPIO_PE_PIN8_PUSEL			<!id:GPIOPEPIN8PUSELRadio;
												type:radio;
												label:Select pin 8 pull-up or pull-down;
												data:GPIO_PUSEL_DISABLE;
												default:GPIO_PUSEL_DISABLE;
												sort:false;
												enum:[GPIO_PUSEL_DISABLE, GPIO_PUSEL_PULL_UP, GPIO_PUSEL_PULL_DOWN];
												optionLabels:[Disable, Pull-up, Pull-down];
												vertical:false;
												dependencies:GPIOPEPIN8MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT;
												groupId:Group8;
                                                filterExp:PE_dot8==1;!>
#endif //(NUCODEGEN_GPIO_PE_PIN8_MODE == NUCODEGEN_GPIO_PE_MODE_INPUT)

#if (NUCODEGEN_GPIO_PE_PIN8_MODE == NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN)
#define NUCODEGEN_GPIO_PE_PIN8_PUSEL			<!id:GPIOPEPIN8PUSELRadio2;
												type:radio;
												label:Select pin 8 pull-up or disable;
												data:GPIO_PUSEL_DISABLE;
												default:GPIO_PUSEL_DISABLE;
												sort:false;
												enum:[GPIO_PUSEL_DISABLE, GPIO_PUSEL_PULL_UP];
												optionLabels:[Disable, Pull-up];
												vertical:false;
												dependencies:GPIOPEPIN8MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN;
												groupId:Group8;
                                                filterExp:PE_dot8==1;!>
#endif
#endif //NUCODEGEN_GPIO_PE_PIN8_EN

#define NUCODEGEN_GPIO_PE_PIN9_EN				<!id:GPIOPEPIN9Checkbox;
												type:checkbox;
												label:Enable pin 9 setting;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:none;
												dependenciesOption:none;
                                                groupId:Group9;
                                                groupName:GPIO_PE pin 9 configuration;
                                                filterExp:PE_dot9==1;!>
#if NUCODEGEN_GPIO_PE_PIN9_EN
#define NUCODEGEN_GPIO_PE_PIN9_MODE				<!id:GPIOPEPIN9MODERadio;
												type:radio;
												label:Select pin 9 mode;
												data:NUCODEGEN_GPIO_PE_MODE_INPUT;
												default:NUCODEGEN_GPIO_PE_MODE_INPUT;
												sort:false;
												enum:[NUCODEGEN_GPIO_PE_MODE_INPUT, NUCODEGEN_GPIO_PE_MODE_OUTPUT, NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN, NUCODEGEN_GPIO_PE_MODE_QUASI];
												optionLabels:[Input, Output, Open drain, Quasi];
												vertical:false;
												dependencies:GPIOPEPIN9Checkbox;
                                                dependenciesOption:1;
												groupId:Group9;
                                                filterExp:PE_dot9==1;!>

#define NUCODEGEN_GPIO_PE_PIN9_DINOFF			<!id:GPIOPEPIN9DINOFFCheckbox;
												type:checkbox;
												label:Disable pin 9 digital input path;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN9Checkbox;
                                                dependenciesOption:1;
												groupId:Group9;
                                                filterExp:PE_dot9==1;!>

#define NUCODEGEN_GPIO_PE_PIN9_DOUT				<!id:GPIOPEPIN9DOUTRadio;
												type:radio;
												label:Set pin 9 out data;
												data:1;
												default:1;
												sort:false;
												enum:[0, 1];
												optionLabels:[Low, High];
												vertical:false;
												dependencies:GPIOPEPIN9MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OUTPUT|NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group9;
                                                filterExp:PE_dot9==1;!>

#define NUCODEGEN_GPIO_PE_PIN9_DATMSK			<!id:GPIOPEPIN9DATMSKCheckbox;
												type:checkbox;
												label:Enable pin 9 DOUT mask;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN9MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OUTPUT|NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group9;
                                                filterExp:PE_dot9==1;!>

#define NUCODEGEN_GPIO_PE_PIN9_DBEN				<!id:GPIOPEPIN9DBENCheckbox;
												type:checkbox;
												label:Enable pin 9 de-bounce;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN9MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group9;
                                                filterExp:PE_dot9==1;!>

#define NUCODEGEN_GPIO_PE_PIN9_INTTYPE			<!id:GPIOPEPIN9INTTYPERadio;
												type:radio;
												label:Select pin 9 edge or level interrupt;
												data:GPIO_INTTYPE_EDGE;
												default:GPIO_INTTYPE_EDGE;
												sort:false;
												enum:[GPIO_INTTYPE_EDGE, GPIO_INTTYPE_LEVEL];
												optionLabels:[Edge, Level];
												vertical:false;
												dependencies:GPIOPEPIN9MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group9;
                                                filterExp:PE_dot9==1;!>

#define NUCODEGEN_GPIO_PE_PIN9_FLIEN			<!id:GPIOPEPIN9FLIENCheckbox;
												type:checkbox;
												label:Enable falling or low interrupt;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN9MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group9;
                                                filterExp:PE_dot9==1;!>

#define NUCODEGEN_GPIO_PE_PIN9_RHIEN			<!id:GPIOPEPIN9RHIENCheckbox;
												type:checkbox;
												label:Enable rising or high interrupt;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN9MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group9;
                                                filterExp:PE_dot9==1;!>

#define NUCODEGEN_GPIO_PE_PIN9_SLEW				<!id:GPIOPEPIN9SLEWRadio;
												type:radio;
												label:Select pin 9 slew rate;
												data:GPIO_SLEWCTL_NORMAL;
												default:GPIO_SLEWCTL_NORMAL;
												sort:false;
												enum:[GPIO_SLEWCTL_NORMAL, GPIO_SLEWCTL_HIGH];
												optionLabels:[Normal, High];
												vertical:false;
												dependencies:GPIOPEPIN9MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OUTPUT|NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group9;
                                                filterExp:PE_dot9==1;!>

#if (NUCODEGEN_GPIO_PE_PIN9_MODE == NUCODEGEN_GPIO_PE_MODE_INPUT)
#define NUCODEGEN_GPIO_PE_PIN9_PUSEL			<!id:GPIOPEPIN9PUSELRadio;
												type:radio;
												label:Select pin 9 pull-up or pull-down;
												data:GPIO_PUSEL_DISABLE;
												default:GPIO_PUSEL_DISABLE;
												sort:false;
												enum:[GPIO_PUSEL_DISABLE, GPIO_PUSEL_PULL_UP, GPIO_PUSEL_PULL_DOWN];
												optionLabels:[Disable, Pull-up, Pull-down];
												vertical:false;
												dependencies:GPIOPEPIN9MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT;
												groupId:Group9;
                                                filterExp:PE_dot9==1;!>
#endif //(NUCODEGEN_GPIO_PE_PIN9_MODE == NUCODEGEN_GPIO_PE_MODE_INPUT)

#if (NUCODEGEN_GPIO_PE_PIN9_MODE == NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN)
#define NUCODEGEN_GPIO_PE_PIN9_PUSEL			<!id:GPIOPEPIN9PUSELRadio2;
												type:radio;
												label:Select pin 9 pull-up or disable;
												data:GPIO_PUSEL_DISABLE;
												default:GPIO_PUSEL_DISABLE;
												sort:false;
												enum:[GPIO_PUSEL_DISABLE, GPIO_PUSEL_PULL_UP];
												optionLabels:[Disable, Pull-up];
												vertical:false;
												dependencies:GPIOPEPIN9MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN;
												groupId:Group9;
                                                filterExp:PE_dot9==1;!>
#endif
#endif //NUCODEGEN_GPIO_PE_PIN9_EN

#define NUCODEGEN_GPIO_PE_PIN10_EN				<!id:GPIOPEPIN10Checkbox;
												type:checkbox;
												label:Enable pin 10 setting;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:none;
												dependenciesOption:none;
                                                groupId:Group10;
                                                groupName:GPIO_PE pin 10 configuration;
                                                filterExp:PE_dot10==1;!>
#if NUCODEGEN_GPIO_PE_PIN10_EN
#define NUCODEGEN_GPIO_PE_PIN10_MODE			<!id:GPIOPEPIN10MODERadio;
												type:radio;
												label:Select pin 10 mode;
												data:NUCODEGEN_GPIO_PE_MODE_INPUT;
												default:NUCODEGEN_GPIO_PE_MODE_INPUT;
												sort:false;
												enum:[NUCODEGEN_GPIO_PE_MODE_INPUT, NUCODEGEN_GPIO_PE_MODE_OUTPUT, NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN, NUCODEGEN_GPIO_PE_MODE_QUASI];
												optionLabels:[Input, Output, Open drain, Quasi];
												vertical:false;
												dependencies:GPIOPEPIN10Checkbox;
                                                dependenciesOption:1;
												groupId:Group10;
                                                filterExp:PE_dot10==1;!>

#define NUCODEGEN_GPIO_PE_PIN10_DINOFF			<!id:GPIOPEPIN10DINOFFCheckbox;
												type:checkbox;
												label:Disable pin 10 digital input path;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN10Checkbox;
                                                dependenciesOption:1;
												groupId:Group10;
                                                filterExp:PE_dot10==1;!>

#define NUCODEGEN_GPIO_PE_PIN10_DOUT			<!id:GPIOPEPIN10DOUTRadio;
												type:radio;
												label:Set pin 10 out data;
												data:1;
												default:1;
												sort:false;
												enum:[0, 1];
												optionLabels:[Low, High];
												vertical:false;
												dependencies:GPIOPEPIN10MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OUTPUT|NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group10;
                                                filterExp:PE_dot10==1;!>

#define NUCODEGEN_GPIO_PE_PIN10_DATMSK			<!id:GPIOPEPIN10DATMSKCheckbox;
												type:checkbox;
												label:Enable pin 10 DOUT mask;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN10MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OUTPUT|NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group10;
                                                filterExp:PE_dot10==1;!>

#define NUCODEGEN_GPIO_PE_PIN10_DBEN			<!id:GPIOPEPIN10DBENCheckbox;
												type:checkbox;
												label:Enable pin 10 de-bounce;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN10MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group10;
                                                filterExp:PE_dot10==1;!>

#define NUCODEGEN_GPIO_PE_PIN10_INTTYPE			<!id:GPIOPEPIN10INTTYPERadio;
												type:radio;
												label:Select pin 10 edge or level interrupt;
												data:GPIO_INTTYPE_EDGE;
												default:GPIO_INTTYPE_EDGE;
												sort:false;
												enum:[GPIO_INTTYPE_EDGE, GPIO_INTTYPE_LEVEL];
												optionLabels:[Edge, Level];
												vertical:false;
												dependencies:GPIOPEPIN10MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group10;
                                                filterExp:PE_dot10==1;!>

#define NUCODEGEN_GPIO_PE_PIN10_FLIEN			<!id:GPIOPEPIN10FLIENCheckbox;
												type:checkbox;
												label:Enable falling or low interrupt;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN10MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group10;
                                                filterExp:PE_dot10==1;!>

#define NUCODEGEN_GPIO_PE_PIN10_RHIEN			<!id:GPIOPEPIN10RHIENCheckbox;
												type:checkbox;
												label:Enable rising or high interrupt;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN10MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group10;
                                                filterExp:PE_dot10==1;!>

#define NUCODEGEN_GPIO_PE_PIN10_SLEW			<!id:GPIOPEPIN10SLEWRadio;
												type:radio;
												label:Select pin 10 slew rate;
												data:GPIO_SLEWCTL_NORMAL;
												default:GPIO_SLEWCTL_NORMAL;
												sort:false;
												enum:[GPIO_SLEWCTL_NORMAL, GPIO_SLEWCTL_HIGH];
												optionLabels:[Normal, High];
												vertical:false;
												dependencies:GPIOPEPIN10MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OUTPUT|NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group10;
                                                filterExp:PE_dot10==1;!>

#if (NUCODEGEN_GPIO_PE_PIN10_MODE == NUCODEGEN_GPIO_PE_MODE_INPUT)
#define NUCODEGEN_GPIO_PE_PIN10_PUSEL			<!id:GPIOPEPIN10PUSELRadio;
												type:radio;
												label:Select pin 10 pull-up or pull-down;
												data:GPIO_PUSEL_DISABLE;
												default:GPIO_PUSEL_DISABLE;
												sort:false;
												enum:[GPIO_PUSEL_DISABLE, GPIO_PUSEL_PULL_UP, GPIO_PUSEL_PULL_DOWN];
												optionLabels:[Disable, Pull-up, Pull-down];
												vertical:false;
												dependencies:GPIOPEPIN10MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT;
												groupId:Group10;
                                                filterExp:PE_dot10==1;!>
#endif //(NUCODEGEN_GPIO_PE_PIN10_MODE == NUCODEGEN_GPIO_PE_MODE_INPUT)

#if (NUCODEGEN_GPIO_PE_PIN10_MODE == NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN)
#define NUCODEGEN_GPIO_PE_PIN10_PUSEL			<!id:GPIOPEPIN10PUSELRadio2;
												type:radio;
												label:Select pin 10 pull-up or disable;
												data:GPIO_PUSEL_DISABLE;
												default:GPIO_PUSEL_DISABLE;
												sort:false;
												enum:[GPIO_PUSEL_DISABLE, GPIO_PUSEL_PULL_UP];
												optionLabels:[Disable, Pull-up];
												vertical:false;
												dependencies:GPIOPEPIN10MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN;
												groupId:Group10;
                                                filterExp:PE_dot10==1;!>
#endif
#endif //NUCODEGEN_GPIO_PE_PIN10_EN

#define NUCODEGEN_GPIO_PE_PIN11_EN				<!id:GPIOPEPIN11Checkbox;
												type:checkbox;
												label:Enable pin 11 setting;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:none;
												dependenciesOption:none;
                                                groupId:Group11;
                                                groupName:GPIO_PE pin 11 configuration;
                                                filterExp:PE_dot11==1;!>
#if NUCODEGEN_GPIO_PE_PIN11_EN
#define NUCODEGEN_GPIO_PE_PIN11_MODE			<!id:GPIOPEPIN11MODERadio;
												type:radio;
												label:Select pin 11 mode;
												data:NUCODEGEN_GPIO_PE_MODE_INPUT;
												default:NUCODEGEN_GPIO_PE_MODE_INPUT;
												sort:false;
												enum:[NUCODEGEN_GPIO_PE_MODE_INPUT, NUCODEGEN_GPIO_PE_MODE_OUTPUT, NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN, NUCODEGEN_GPIO_PE_MODE_QUASI];
												optionLabels:[Input, Output, Open drain, Quasi];
												vertical:false;
												dependencies:GPIOPEPIN11Checkbox;
                                                dependenciesOption:1;
												groupId:Group11;
                                                filterExp:PE_dot11==1;!>

#define NUCODEGEN_GPIO_PE_PIN11_DINOFF			<!id:GPIOPEPIN11DINOFFCheckbox;
												type:checkbox;
												label:Disable pin 11 digital input path;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN11Checkbox;
                                                dependenciesOption:1;
												groupId:Group11;
                                                filterExp:PE_dot11==1;!>

#define NUCODEGEN_GPIO_PE_PIN11_DOUT			<!id:GPIOPEPIN11DOUTRadio;
												type:radio;
												label:Set pin 11 out data;
												data:1;
												default:1;
												sort:false;
												enum:[0, 1];
												optionLabels:[Low, High];
												vertical:false;
												dependencies:GPIOPEPIN11MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OUTPUT|NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group11;
                                                filterExp:PE_dot11==1;!>

#define NUCODEGEN_GPIO_PE_PIN11_DATMSK			<!id:GPIOPEPIN11DATMSKCheckbox;
												type:checkbox;
												label:Enable pin 11 DOUT mask;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN11MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OUTPUT|NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group11;
                                                filterExp:PE_dot11==1;!>

#define NUCODEGEN_GPIO_PE_PIN11_DBEN			<!id:GPIOPEPIN11DBENCheckbox;
												type:checkbox;
												label:Enable pin 11 de-bounce;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN11MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group11;
                                                filterExp:PE_dot11==1;!>

#define NUCODEGEN_GPIO_PE_PIN11_INTTYPE			<!id:GPIOPEPIN11INTTYPERadio;
												type:radio;
												label:Select pin 11 edge or level interrupt;
												data:GPIO_INTTYPE_EDGE;
												default:GPIO_INTTYPE_EDGE;
												sort:false;
												enum:[GPIO_INTTYPE_EDGE, GPIO_INTTYPE_LEVEL];
												optionLabels:[Edge, Level];
												vertical:false;
												dependencies:GPIOPEPIN11MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group11;
                                                filterExp:PE_dot11==1;!>

#define NUCODEGEN_GPIO_PE_PIN11_FLIEN			<!id:GPIOPEPIN11FLIENCheckbox;
												type:checkbox;
												label:Enable falling or low interrupt;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN11MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group11;
                                                filterExp:PE_dot11==1;!>

#define NUCODEGEN_GPIO_PE_PIN11_RHIEN			<!id:GPIOPEPIN11RHIENCheckbox;
												type:checkbox;
												label:Enable rising or high interrupt;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN11MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group11;
                                                filterExp:PE_dot11==1;!>

#define NUCODEGEN_GPIO_PE_PIN11_SLEW			<!id:GPIOPEPIN11SLEWRadio;
												type:radio;
												label:Select pin 11 slew rate;
												data:GPIO_SLEWCTL_NORMAL;
												default:GPIO_SLEWCTL_NORMAL;
												sort:false;
												enum:[GPIO_SLEWCTL_NORMAL, GPIO_SLEWCTL_HIGH];
												optionLabels:[Normal, High];
												vertical:false;
												dependencies:GPIOPEPIN11MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OUTPUT|NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group11;
                                                filterExp:PE_dot11==1;!>

#if (NUCODEGEN_GPIO_PE_PIN11_MODE == NUCODEGEN_GPIO_PE_MODE_INPUT)
#define NUCODEGEN_GPIO_PE_PIN11_PUSEL			<!id:GPIOPEPIN11PUSELRadio;
												type:radio;
												label:Select pin 11 pull-up or pull-down;
												data:GPIO_PUSEL_DISABLE;
												default:GPIO_PUSEL_DISABLE;
												sort:false;
												enum:[GPIO_PUSEL_DISABLE, GPIO_PUSEL_PULL_UP, GPIO_PUSEL_PULL_DOWN];
												optionLabels:[Disable, Pull-up, Pull-down];
												vertical:false;
												dependencies:GPIOPEPIN11MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT;
												groupId:Group11;
                                                filterExp:PE_dot11==1;!>
#endif //(NUCODEGEN_GPIO_PE_PIN11_MODE == NUCODEGEN_GPIO_PE_MODE_INPUT)

#if (NUCODEGEN_GPIO_PE_PIN11_MODE == NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN)
#define NUCODEGEN_GPIO_PE_PIN11_PUSEL			<!id:GPIOPEPIN11PUSELRadio2;
												type:radio;
												label:Select pin 11 pull-up or disable;
												data:GPIO_PUSEL_DISABLE;
												default:GPIO_PUSEL_DISABLE;
												sort:false;
												enum:[GPIO_PUSEL_DISABLE, GPIO_PUSEL_PULL_UP];
												optionLabels:[Disable, Pull-up];
												vertical:false;
												dependencies:GPIOPEPIN11MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN;
												groupId:Group11;
                                                filterExp:PE_dot11==1;!>
#endif
#endif //NUCODEGEN_GPIO_PE_PIN11_EN

#define NUCODEGEN_GPIO_PE_PIN12_EN				<!id:GPIOPEPIN12Checkbox;
												type:checkbox;
												label:Enable pin 12 setting;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:none;
												dependenciesOption:none;
                                                groupId:Group12;
                                                groupName:GPIO_PE pin 12 configuration;
                                                filterExp:PE_dot12==1;!>
#if NUCODEGEN_GPIO_PE_PIN12_EN
#define NUCODEGEN_GPIO_PE_PIN12_MODE			<!id:GPIOPEPIN12MODERadio;
												type:radio;
												label:Select pin 12 mode;
												data:NUCODEGEN_GPIO_PE_MODE_INPUT;
												default:NUCODEGEN_GPIO_PE_MODE_INPUT;
												sort:false;
												enum:[NUCODEGEN_GPIO_PE_MODE_INPUT, NUCODEGEN_GPIO_PE_MODE_OUTPUT, NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN, NUCODEGEN_GPIO_PE_MODE_QUASI];
												optionLabels:[Input, Output, Open drain, Quasi];
												vertical:false;
												dependencies:GPIOPEPIN12Checkbox;
                                                dependenciesOption:1;
												groupId:Group12;
                                                filterExp:PE_dot12==1;!>

#define NUCODEGEN_GPIO_PE_PIN12_DINOFF			<!id:GPIOPEPIN12DINOFFCheckbox;
												type:checkbox;
												label:Disable pin 12 digital input path;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN12Checkbox;
                                                dependenciesOption:1;
												groupId:Group12;
                                                filterExp:PE_dot12==1;!>

#define NUCODEGEN_GPIO_PE_PIN12_DOUT			<!id:GPIOPEPIN12DOUTRadio;
												type:radio;
												label:Set pin 12 out data;
												data:1;
												default:1;
												sort:false;
												enum:[0, 1];
												optionLabels:[Low, High];
												vertical:false;
												dependencies:GPIOPEPIN12MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OUTPUT|NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group12;
                                                filterExp:PE_dot12==1;!>

#define NUCODEGEN_GPIO_PE_PIN12_DATMSK			<!id:GPIOPEPIN12DATMSKCheckbox;
												type:checkbox;
												label:Enable pin 12 DOUT mask;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN12MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OUTPUT|NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group12;
                                                filterExp:PE_dot12==1;!>

#define NUCODEGEN_GPIO_PE_PIN12_DBEN			<!id:GPIOPEPIN12DBENCheckbox;
												type:checkbox;
												label:Enable pin 12 de-bounce;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN12MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group12;
                                                filterExp:PE_dot12==1;!>

#define NUCODEGEN_GPIO_PE_PIN12_INTTYPE			<!id:GPIOPEPIN12INTTYPERadio;
												type:radio;
												label:Select pin 12 edge or level interrupt;
												data:GPIO_INTTYPE_EDGE;
												default:GPIO_INTTYPE_EDGE;
												sort:false;
												enum:[GPIO_INTTYPE_EDGE, GPIO_INTTYPE_LEVEL];
												optionLabels:[Edge, Level];
												vertical:false;
												dependencies:GPIOPEPIN12MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group12;
                                                filterExp:PE_dot12==1;!>

#define NUCODEGEN_GPIO_PE_PIN12_FLIEN			<!id:GPIOPEPIN12FLIENCheckbox;
												type:checkbox;
												label:Enable falling or low interrupt;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN12MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group12;
                                                filterExp:PE_dot12==1;!>

#define NUCODEGEN_GPIO_PE_PIN12_RHIEN			<!id:GPIOPEPIN12RHIENCheckbox;
												type:checkbox;
												label:Enable rising or high interrupt;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN12MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group12;
                                                filterExp:PE_dot12==1;!>

#define NUCODEGEN_GPIO_PE_PIN12_SLEW			<!id:GPIOPEPIN12SLEWRadio;
												type:radio;
												label:Select pin 12 slew rate;
												data:GPIO_SLEWCTL_NORMAL;
												default:GPIO_SLEWCTL_NORMAL;
												sort:false;
												enum:[GPIO_SLEWCTL_NORMAL, GPIO_SLEWCTL_HIGH];
												optionLabels:[Normal, High];
												vertical:false;
												dependencies:GPIOPEPIN12MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OUTPUT|NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group12;
                                                filterExp:PE_dot12==1;!>

#if (NUCODEGEN_GPIO_PE_PIN12_MODE == NUCODEGEN_GPIO_PE_MODE_INPUT)
#define NUCODEGEN_GPIO_PE_PIN12_PUSEL			<!id:GPIOPEPIN12PUSELRadio;
												type:radio;
												label:Select pin 12 pull-up or pull-down;
												data:GPIO_PUSEL_DISABLE;
												default:GPIO_PUSEL_DISABLE;
												sort:false;
												enum:[GPIO_PUSEL_DISABLE, GPIO_PUSEL_PULL_UP, GPIO_PUSEL_PULL_DOWN];
												optionLabels:[Disable, Pull-up, Pull-down];
												vertical:false;
												dependencies:GPIOPEPIN12MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT;
												groupId:Group12;
                                                filterExp:PE_dot12==1;!>
#endif //(NUCODEGEN_GPIO_PE_PIN12_MODE == NUCODEGEN_GPIO_PE_MODE_INPUT)

#if (NUCODEGEN_GPIO_PE_PIN12_MODE == NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN)
#define NUCODEGEN_GPIO_PE_PIN12_PUSEL			<!id:GPIOPEPIN12PUSELRadio2;
												type:radio;
												label:Select pin 12 pull-up or disable;
												data:GPIO_PUSEL_DISABLE;
												default:GPIO_PUSEL_DISABLE;
												sort:false;
												enum:[GPIO_PUSEL_DISABLE, GPIO_PUSEL_PULL_UP];
												optionLabels:[Disable, Pull-up];
												vertical:false;
												dependencies:GPIOPEPIN12MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN;
												groupId:Group12;
                                                filterExp:PE_dot12==1;!>
#endif
#endif //NUCODEGEN_GPIO_PE_PIN12_EN

#define NUCODEGEN_GPIO_PE_PIN13_EN				<!id:GPIOPEPIN13Checkbox;
												type:checkbox;
												label:Enable pin 13 setting;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:none;
												dependenciesOption:none;
                                                groupId:Group13;
                                                groupName:GPIO_PE pin 13 configuration;
                                                filterExp:PE_dot13==1;!>
#if NUCODEGEN_GPIO_PE_PIN13_EN
#define NUCODEGEN_GPIO_PE_PIN13_MODE			<!id:GPIOPEPIN13MODERadio;
												type:radio;
												label:Select pin 13 mode;
												data:NUCODEGEN_GPIO_PE_MODE_INPUT;
												default:NUCODEGEN_GPIO_PE_MODE_INPUT;
												sort:false;
												enum:[NUCODEGEN_GPIO_PE_MODE_INPUT, NUCODEGEN_GPIO_PE_MODE_OUTPUT, NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN, NUCODEGEN_GPIO_PE_MODE_QUASI];
												optionLabels:[Input, Output, Open drain, Quasi];
												vertical:false;
												dependencies:GPIOPEPIN13Checkbox;
                                                dependenciesOption:1;
												groupId:Group13;
                                                filterExp:PE_dot13==1;!>

#define NUCODEGEN_GPIO_PE_PIN13_DINOFF			<!id:GPIOPEPIN13DINOFFCheckbox;
												type:checkbox;
												label:Disable pin 13 digital input path;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN13Checkbox;
                                                dependenciesOption:1;
												groupId:Group13;
                                                filterExp:PE_dot13==1;!>

#define NUCODEGEN_GPIO_PE_PIN13_DOUT			<!id:GPIOPEPIN13DOUTRadio;
												type:radio;
												label:Set pin 13 out data;
												data:1;
												default:1;
												sort:false;
												enum:[0, 1];
												optionLabels:[Low, High];
												vertical:false;
												dependencies:GPIOPEPIN13MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OUTPUT|NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group13;
                                                filterExp:PE_dot13==1;!>

#define NUCODEGEN_GPIO_PE_PIN13_DATMSK			<!id:GPIOPEPIN13DATMSKCheckbox;
												type:checkbox;
												label:Enable pin 13 DOUT mask;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN13MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OUTPUT|NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group13;
                                                filterExp:PE_dot13==1;!>

#define NUCODEGEN_GPIO_PE_PIN13_DBEN			<!id:GPIOPEPIN13DBENCheckbox;
												type:checkbox;
												label:Enable pin 13 de-bounce;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN13MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group13;
                                                filterExp:PE_dot13==1;!>

#define NUCODEGEN_GPIO_PE_PIN13_INTTYPE			<!id:GPIOPEPIN13INTTYPERadio;
												type:radio;
												label:Select pin 13 edge or level interrupt;
												data:GPIO_INTTYPE_EDGE;
												default:GPIO_INTTYPE_EDGE;
												sort:false;
												enum:[GPIO_INTTYPE_EDGE, GPIO_INTTYPE_LEVEL];
												optionLabels:[Edge, Level];
												vertical:false;
												dependencies:GPIOPEPIN13MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group13;
                                                filterExp:PE_dot13==1;!>

#define NUCODEGEN_GPIO_PE_PIN13_FLIEN			<!id:GPIOPEPIN13FLIENCheckbox;
												type:checkbox;
												label:Enable falling or low interrupt;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN13MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group13;
                                                filterExp:PE_dot13==1;!>

#define NUCODEGEN_GPIO_PE_PIN13_RHIEN			<!id:GPIOPEPIN13RHIENCheckbox;
												type:checkbox;
												label:Enable rising or high interrupt;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN13MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group13;
                                                filterExp:PE_dot13==1;!>

#define NUCODEGEN_GPIO_PE_PIN13_SLEW			<!id:GPIOPEPIN13SLEWRadio;
												type:radio;
												label:Select pin 13 slew rate;
												data:GPIO_SLEWCTL_NORMAL;
												default:GPIO_SLEWCTL_NORMAL;
												sort:false;
												enum:[GPIO_SLEWCTL_NORMAL, GPIO_SLEWCTL_HIGH];
												optionLabels:[Normal, High];
												vertical:false;
												dependencies:GPIOPEPIN13MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OUTPUT|NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group13;
                                                filterExp:PE_dot13==1;!>

#if (NUCODEGEN_GPIO_PE_PIN13_MODE == NUCODEGEN_GPIO_PE_MODE_INPUT)
#define NUCODEGEN_GPIO_PE_PIN13_PUSEL			<!id:GPIOPEPIN13PUSELRadio;
												type:radio;
												label:Select pin 13 pull-up or pull-down;
												data:GPIO_PUSEL_DISABLE;
												default:GPIO_PUSEL_DISABLE;
												sort:false;
												enum:[GPIO_PUSEL_DISABLE, GPIO_PUSEL_PULL_UP, GPIO_PUSEL_PULL_DOWN];
												optionLabels:[Disable, Pull-up, Pull-down];
												vertical:false;
												dependencies:GPIOPEPIN13MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT;
												groupId:Group13;
                                                filterExp:PE_dot13==1;!>
#endif //(NUCODEGEN_GPIO_PE_PIN13_MODE == NUCODEGEN_GPIO_PE_MODE_INPUT)

#if (NUCODEGEN_GPIO_PE_PIN13_MODE == NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN)
#define NUCODEGEN_GPIO_PE_PIN13_PUSEL			<!id:GPIOPEPIN13PUSELRadio2;
												type:radio;
												label:Select pin 13 pull-up or disable;
												data:GPIO_PUSEL_DISABLE;
												default:GPIO_PUSEL_DISABLE;
												sort:false;
												enum:[GPIO_PUSEL_DISABLE, GPIO_PUSEL_PULL_UP];
												optionLabels:[Disable, Pull-up];
												vertical:false;
												dependencies:GPIOPEPIN13MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN;
												groupId:Group13;
                                                filterExp:PE_dot13==1;!>
#endif
#endif //NUCODEGEN_GPIO_PE_PIN13_EN

#define NUCODEGEN_GPIO_PE_PIN14_EN				<!id:GPIOPEPIN14Checkbox;
												type:checkbox;
												label:Enable pin 14 setting;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:none;
												dependenciesOption:none;
                                                groupId:Group14;
                                                groupName:GPIO_PE pin 14 configuration;
                                                filterExp:PE_dot14==1;!>
#if NUCODEGEN_GPIO_PE_PIN14_EN
#define NUCODEGEN_GPIO_PE_PIN14_MODE			<!id:GPIOPEPIN14MODERadio;
												type:radio;
												label:Select pin 14 mode;
												data:NUCODEGEN_GPIO_PE_MODE_INPUT;
												default:NUCODEGEN_GPIO_PE_MODE_INPUT;
												sort:false;
												enum:[NUCODEGEN_GPIO_PE_MODE_INPUT, NUCODEGEN_GPIO_PE_MODE_OUTPUT, NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN, NUCODEGEN_GPIO_PE_MODE_QUASI];
												optionLabels:[Input, Output, Open drain, Quasi];
												vertical:false;
												dependencies:GPIOPEPIN14Checkbox;
                                                dependenciesOption:1;
												groupId:Group14;
                                                filterExp:PE_dot14==1;!>

#define NUCODEGEN_GPIO_PE_PIN14_DINOFF			<!id:GPIOPEPIN14DINOFFCheckbox;
												type:checkbox;
												label:Disable pin 14 digital input path;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN14Checkbox;
                                                dependenciesOption:1;
												groupId:Group14;
                                                filterExp:PE_dot14==1;!>

#define NUCODEGEN_GPIO_PE_PIN14_DOUT			<!id:GPIOPEPIN14DOUTRadio;
												type:radio;
												label:Set pin 14 out data;
												data:1;
												default:1;
												sort:false;
												enum:[0, 1];
												optionLabels:[Low, High];
												vertical:false;
												dependencies:GPIOPEPIN14MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OUTPUT|NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group14;
                                                filterExp:PE_dot14==1;!>

#define NUCODEGEN_GPIO_PE_PIN14_DATMSK			<!id:GPIOPEPIN14DATMSKCheckbox;
												type:checkbox;
												label:Enable pin 14 DOUT mask;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN14MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OUTPUT|NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group14;
                                                filterExp:PE_dot14==1;!>

#define NUCODEGEN_GPIO_PE_PIN14_DBEN			<!id:GPIOPEPIN14DBENCheckbox;
												type:checkbox;
												label:Enable pin 14 de-bounce;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN14MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group14;
                                                filterExp:PE_dot14==1;!>

#define NUCODEGEN_GPIO_PE_PIN14_INTTYPE			<!id:GPIOPEPIN14INTTYPERadio;
												type:radio;
												label:Select pin 14 edge or level interrupt;
												data:GPIO_INTTYPE_EDGE;
												default:GPIO_INTTYPE_EDGE;
												sort:false;
												enum:[GPIO_INTTYPE_EDGE, GPIO_INTTYPE_LEVEL];
												optionLabels:[Edge, Level];
												vertical:false;
												dependencies:GPIOPEPIN14MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group14;
                                                filterExp:PE_dot14==1;!>

#define NUCODEGEN_GPIO_PE_PIN14_FLIEN			<!id:GPIOPEPIN14FLIENCheckbox;
												type:checkbox;
												label:Enable falling or low interrupt;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN14MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group14;
                                                filterExp:PE_dot14==1;!>

#define NUCODEGEN_GPIO_PE_PIN14_RHIEN			<!id:GPIOPEPIN14RHIENCheckbox;
												type:checkbox;
												label:Enable rising or high interrupt;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN14MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group14;
                                                filterExp:PE_dot14==1;!>

#define NUCODEGEN_GPIO_PE_PIN14_SLEW			<!id:GPIOPEPIN14SLEWRadio;
												type:radio;
												label:Select pin 14 slew rate;
												data:GPIO_SLEWCTL_NORMAL;
												default:GPIO_SLEWCTL_NORMAL;
												sort:false;
												enum:[GPIO_SLEWCTL_NORMAL, GPIO_SLEWCTL_HIGH];
												optionLabels:[Normal, High];
												vertical:false;
												dependencies:GPIOPEPIN14MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OUTPUT|NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group14;
                                                filterExp:PE_dot14==1;!>

#if (NUCODEGEN_GPIO_PE_PIN14_MODE == NUCODEGEN_GPIO_PE_MODE_INPUT)
#define NUCODEGEN_GPIO_PE_PIN14_PUSEL			<!id:GPIOPEPIN14PUSELRadio;
												type:radio;
												label:Select pin 14 pull-up or pull-down;
												data:GPIO_PUSEL_DISABLE;
												default:GPIO_PUSEL_DISABLE;
												sort:false;
												enum:[GPIO_PUSEL_DISABLE, GPIO_PUSEL_PULL_UP, GPIO_PUSEL_PULL_DOWN];
												optionLabels:[Disable, Pull-up, Pull-down];
												vertical:false;
												dependencies:GPIOPEPIN14MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT;
												groupId:Group14;
                                                filterExp:PE_dot14==1;!>
#endif //(NUCODEGEN_GPIO_PE_PIN14_MODE == NUCODEGEN_GPIO_PE_MODE_INPUT)

#if (NUCODEGEN_GPIO_PE_PIN14_MODE == NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN)
#define NUCODEGEN_GPIO_PE_PIN14_PUSEL			<!id:GPIOPEPIN14PUSELRadio2;
												type:radio;
												label:Select pin 14 pull-up or disable;
												data:GPIO_PUSEL_DISABLE;
												default:GPIO_PUSEL_DISABLE;
												sort:false;
												enum:[GPIO_PUSEL_DISABLE, GPIO_PUSEL_PULL_UP];
												optionLabels:[Disable, Pull-up];
												vertical:false;
												dependencies:GPIOPEPIN14MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN;
												groupId:Group14;
                                                filterExp:PE_dot14==1;!>
#endif
#endif //NUCODEGEN_GPIO_PE_PIN14_EN

#define NUCODEGEN_GPIO_PE_PIN15_EN				<!id:GPIOPEPIN15Checkbox;
												type:checkbox;
												label:Enable pin 15 setting;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:none;
												dependenciesOption:none;
                                                groupId:Group15;
                                                groupName:GPIO_PE pin 15 configuration;
                                                filterExp:PE_dot15==1;!>
#if NUCODEGEN_GPIO_PE_PIN15_EN
#define NUCODEGEN_GPIO_PE_PIN15_MODE			<!id:GPIOPEPIN15MODERadio;
												type:radio;
												label:Select pin 15 mode;
												data:NUCODEGEN_GPIO_PE_MODE_INPUT;
												default:NUCODEGEN_GPIO_PE_MODE_INPUT;
												sort:false;
												enum:[NUCODEGEN_GPIO_PE_MODE_INPUT, NUCODEGEN_GPIO_PE_MODE_OUTPUT, NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN, NUCODEGEN_GPIO_PE_MODE_QUASI];
												optionLabels:[Input, Output, Open drain, Quasi];
												vertical:false;
												dependencies:GPIOPEPIN15Checkbox;
                                                dependenciesOption:1;
												groupId:Group15;
                                                filterExp:PE_dot15==1;!>

#define NUCODEGEN_GPIO_PE_PIN15_DINOFF			<!id:GPIOPEPIN15DINOFFCheckbox;
												type:checkbox;
												label:Disable pin 15 digital input path;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN15Checkbox;
                                                dependenciesOption:1;
												groupId:Group15;
                                                filterExp:PE_dot15==1;!>

#define NUCODEGEN_GPIO_PE_PIN15_DOUT			<!id:GPIOPEPIN15DOUTRadio;
												type:radio;
												label:Set pin 15 out data;
												data:1;
												default:1;
												sort:false;
												enum:[0, 1];
												optionLabels:[Low, High];
												vertical:false;
												dependencies:GPIOPEPIN15MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OUTPUT|NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group15;
                                                filterExp:PE_dot15==1;!>

#define NUCODEGEN_GPIO_PE_PIN15_DATMSK			<!id:GPIOPEPIN15DATMSKCheckbox;
												type:checkbox;
												label:Enable pin 15 DOUT mask;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN15MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OUTPUT|NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group15;
                                                filterExp:PE_dot15==1;!>

#define NUCODEGEN_GPIO_PE_PIN15_DBEN			<!id:GPIOPEPIN15DBENCheckbox;
												type:checkbox;
												label:Enable pin 15 de-bounce;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN15MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group15;
                                                filterExp:PE_dot15==1;!>

#define NUCODEGEN_GPIO_PE_PIN15_INTTYPE			<!id:GPIOPEPIN15INTTYPERadio;
												type:radio;
												label:Select pin 15 edge or level interrupt;
												data:GPIO_INTTYPE_EDGE;
												default:GPIO_INTTYPE_EDGE;
												sort:false;
												enum:[GPIO_INTTYPE_EDGE, GPIO_INTTYPE_LEVEL];
												optionLabels:[Edge, Level];
												vertical:false;
												dependencies:GPIOPEPIN15MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group15;
                                                filterExp:PE_dot15==1;!>

#define NUCODEGEN_GPIO_PE_PIN15_FLIEN			<!id:GPIOPEPIN15FLIENCheckbox;
												type:checkbox;
												label:Enable falling or low interrupt;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN15MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group15;
                                                filterExp:PE_dot15==1;!>

#define NUCODEGEN_GPIO_PE_PIN15_RHIEN			<!id:GPIOPEPIN15RHIENCheckbox;
												type:checkbox;
												label:Enable rising or high interrupt;
												data:0;
												default:0;
												enum:[1];
												optionLabels:[<br>];
												dependencies:GPIOPEPIN15MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group15;
                                                filterExp:PE_dot15==1;!>

#define NUCODEGEN_GPIO_PE_PIN15_SLEW			<!id:GPIOPEPIN15SLEWRadio;
												type:radio;
												label:Select pin 15 slew rate;
												data:GPIO_SLEWCTL_NORMAL;
												default:GPIO_SLEWCTL_NORMAL;
												sort:false;
												enum:[GPIO_SLEWCTL_NORMAL, GPIO_SLEWCTL_HIGH];
												optionLabels:[Normal, High];
												vertical:false;
												dependencies:GPIOPEPIN15MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OUTPUT|NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN|NUCODEGEN_GPIO_PE_MODE_QUASI;
												groupId:Group15;
                                                filterExp:PE_dot15==1;!>

#if (NUCODEGEN_GPIO_PE_PIN15_MODE == NUCODEGEN_GPIO_PE_MODE_INPUT)
#define NUCODEGEN_GPIO_PE_PIN15_PUSEL			<!id:GPIOPEPIN15PUSELRadio;
												type:radio;
												label:Select pin 15 pull-up or pull-down;
												data:GPIO_PUSEL_DISABLE;
												default:GPIO_PUSEL_DISABLE;
												sort:false;
												enum:[GPIO_PUSEL_DISABLE, GPIO_PUSEL_PULL_UP, GPIO_PUSEL_PULL_DOWN];
												optionLabels:[Disable, Pull-up, Pull-down];
												vertical:false;
												dependencies:GPIOPEPIN15MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_INPUT;
												groupId:Group15;
                                                filterExp:PE_dot15==1;!>
#endif //(NUCODEGEN_GPIO_PE_PIN15_MODE == NUCODEGEN_GPIO_PE_MODE_INPUT)

#if (NUCODEGEN_GPIO_PE_PIN15_MODE == NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN)
#define NUCODEGEN_GPIO_PE_PIN15_PUSEL			<!id:GPIOPEPIN15PUSELRadio2;
												type:radio;
												label:Select pin 15 pull-up or disable;
												data:GPIO_PUSEL_DISABLE;
												default:GPIO_PUSEL_DISABLE;
												sort:false;
												enum:[GPIO_PUSEL_DISABLE, GPIO_PUSEL_PULL_UP];
												optionLabels:[Disable, Pull-up];
												vertical:false;
												dependencies:GPIOPEPIN15MODERadio;
                                                dependenciesOption:NUCODEGEN_GPIO_PE_MODE_OPEN_DRAIN;
												groupId:Group15;
                                                filterExp:PE_dot15==1;!>
#endif
#endif //NUCODEGEN_GPIO_PE_PIN15_EN

#define NUCODEGEN_GPIO_PE_CLR_DB_ICLKON			<!id:GPIOPECLRDBICLKONCheckboxBoolean;
												type:checkboxBoolean;
												label:Clear GPIO_PE de-bounce circuit interrupt clock on;
												data:false;
												default:false;
												enum:[true];
												optionLabels:[<br>];
												dependencies:none;
												dependenciesOption:none;
                                                groupId:Group;
                                                groupName:GPIO_PE common configuration;
												filterExp:type=="M252_G" or type=="M252_E";!>

#define NUCODEGEN_GPIO_PE_INT					<!id:GPIOPEINTCheckboxBoolean;
												type:checkboxBoolean;
												label:Enable GPIO_PE interrupt handler;
												data:false;
												default:false;
												enum:[true];
												optionLabels:[<br>];
												dependencies:none;
												dependenciesOption:none;
                                                groupId:Group;
												filterExp:type=="M252_G" or type=="M252_E";!>
