]> rtime.felk.cvut.cz Git - arc.git/commitdiff
Merge with 48a2197fe19996f9fe6be942757d15f974c0d12c
authormahi <devnull@localhost>
Mon, 3 Sep 2012 18:20:26 +0000 (20:20 +0200)
committermahi <devnull@localhost>
Mon, 3 Sep 2012 18:20:26 +0000 (20:20 +0200)
14 files changed:
boards/board_common.mk
boards/mpc5516it/board_mpc5516it.arxml [new file with mode: 0644]
boards/mpc5516it/build_config.mk
include/Os.h
system/SchM/SchM.c
system/SchM/SchM.h
system/SchM/SchM_Can.h [moved from include/SchM_EcuM.h with 83% similarity]
system/SchM/SchM_CanIf.h [new file with mode: 0644]
system/SchM/SchM_CanTp.h [moved from include/SchM_CanTp.h with 89% similarity]
system/SchM/SchM_EcuM.h [new file with mode: 0644]
system/SchM/SchM_Fee.h [new file with mode: 0644]
system/SchM/SchM_Fls.h [new file with mode: 0644]
system/SchM/SchM_NvM.h [new file with mode: 0644]
system/SchM/SchM_cfg.h

index 8a10973f7cbf39ed4c08d99ccff295247c72759d..a4a6be7946534b2cf05e48dff8a0e9d7df604d60 100644 (file)
@@ -113,6 +113,11 @@ vpath-$(USE_NVM) += $(ROOTDIR)/system/Crc
 obj-$(USE_NVM) += Crc_32.o\r
 obj-$(USE_NVM) += Crc_16.o\r
 \r
+# SchM\r
+inc-$(USE_SCHM) += $(ROOTDIR)/system/SchM\r
+vpath-$(USE_SCHM) += $(ROOTDIR)/system/SchM\r
+obj-$(USE_SCHM) += SchM.o\r
+\r
 # J1939Tp\r
 obj-$(USE_J1939TP) += J1939Tp.o\r
 obj-$(USE_J1939TP) += J1939Tp_LCfg.o\r
diff --git a/boards/mpc5516it/board_mpc5516it.arxml b/boards/mpc5516it/board_mpc5516it.arxml
new file mode 100644 (file)
index 0000000..00057da
--- /dev/null
@@ -0,0 +1,1733 @@
+<?xml version="1.0" encoding="UTF-8"?>\r
+<AUTOSAR xmlns="http://autosar.org/3.1.5" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://autosar.org/3.1.5 autosar_3-1-5.xsd">\r
+  <TOP-LEVEL-PACKAGES>\r
+    <AR-PACKAGE>\r
+      <SHORT-NAME>board_mpc5516it</SHORT-NAME>\r
+      <ELEMENTS>\r
+        <ECU-CONFIGURATION UUID="648c53b5-9641-4cd5-90c9-805eb89b6bc4">\r
+          <SHORT-NAME>board_mpc5516it</SHORT-NAME>\r
+          <ADMIN-DATA>\r
+            <DOC-REVISIONS>\r
+              <DOC-REVISION />\r
+            </DOC-REVISIONS>\r
+            <SDGS>\r
+              <SDG GID="Arccore::EcuOptions">\r
+                <SD GID="MCU">MPC551x</SD>\r
+                <SD GID="GENDIR">${RESOURCE_LOC}</SD>\r
+              </SDG>\r
+            </SDGS>\r
+          </ADMIN-DATA>\r
+          <ECU-SW-COMPOSITION-REF DEST="ECU-SW-COMPOSITION">/board_mpc5516it/SwComposition_board_mpc5516it</ECU-SW-COMPOSITION-REF>\r
+          <MODULE-REFS>\r
+            <MODULE-REF DEST="MODULE-CONFIGURATION">/board_mpc5516it/Dio</MODULE-REF>\r
+            <MODULE-REF DEST="MODULE-CONFIGURATION">/board_mpc5516it/Mcu</MODULE-REF>\r
+            <MODULE-REF DEST="MODULE-CONFIGURATION">/board_mpc5516it/Port</MODULE-REF>\r
+            <MODULE-REF DEST="MODULE-CONFIGURATION">/board_mpc5516it/EcuM</MODULE-REF>\r
+          </MODULE-REFS>\r
+        </ECU-CONFIGURATION>\r
+        <ECU-SW-COMPOSITION UUID="56574a22-5b8c-40d2-8986-8b5a121f8e21">\r
+          <SHORT-NAME>SwComposition_board_mpc5516it</SHORT-NAME>\r
+        </ECU-SW-COMPOSITION>\r
+        <MODULE-CONFIGURATION UUID="de718a54-1bc1-4dc0-88ef-d90ecec33b7c">\r
+          <SHORT-NAME>Dio</SHORT-NAME>\r
+          <ADMIN-DATA>\r
+            <SDGS>\r
+              <SDG />\r
+              <SDG GID="Arccore::ModuleOptions">\r
+                <SD GID="GENERATE_AND_VALIDATE">true</SD>\r
+                <SD GID="ARCCORE_EDITOR_VERSION">2.0.0</SD>\r
+              </SDG>\r
+            </SDGS>\r
+          </ADMIN-DATA>\r
+          <DEFINITION-REF DEST="MODULE-DEF">/ArcCore/Dio</DEFINITION-REF>\r
+          <CONTAINERS>\r
+            <CONTAINER UUID="5d9a2bdf-88b2-4afa-9995-2d4c42ac303d">\r
+              <SHORT-NAME>DioGeneral</SHORT-NAME>\r
+              <DEFINITION-REF DEST="PARAM-CONF-CONTAINER-DEF">/ArcCore/Dio/DioGeneral</DEFINITION-REF>\r
+              <PARAMETER-VALUES>\r
+                <BOOLEAN-VALUE>\r
+                  <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Dio/DioGeneral/DioDevErrorDetect</DEFINITION-REF>\r
+                  <VALUE>true</VALUE>\r
+                </BOOLEAN-VALUE>\r
+                <BOOLEAN-VALUE>\r
+                  <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Dio/DioGeneral/DioVersionInfoApi</DEFINITION-REF>\r
+                  <VALUE>true</VALUE>\r
+                </BOOLEAN-VALUE>\r
+              </PARAMETER-VALUES>\r
+            </CONTAINER>\r
+            <CONTAINER UUID="70389048-7f93-448e-8796-1cc10159fde0">\r
+              <SHORT-NAME>LED_PORT</SHORT-NAME>\r
+              <ADMIN-DATA>\r
+                <SDGS>\r
+                  <SDG GID="Arccore::IdentifiableOptions" />\r
+                </SDGS>\r
+              </ADMIN-DATA>\r
+              <DEFINITION-REF DEST="PARAM-CONF-CONTAINER-DEF">/ArcCore/Dio/DioPort</DEFINITION-REF>\r
+              <PARAMETER-VALUES>\r
+                <INTEGER-VALUE>\r
+                  <DEFINITION-REF DEST="INTEGER-PARAM-DEF">/ArcCore/Dio/DioPort/DioPortId</DEFINITION-REF>\r
+                  <VALUE>0</VALUE>\r
+                </INTEGER-VALUE>\r
+                <STRING-VALUE>\r
+                  <DEFINITION-REF DEST="STRING-PARAM-DEF">/ArcCore/Dio/DioPort/ArcCoreDioPhysicalPort</DEFINITION-REF>\r
+                  <VALUE>DIO_PORT_D</VALUE>\r
+                </STRING-VALUE>\r
+              </PARAMETER-VALUES>\r
+              <SUB-CONTAINERS>\r
+                <CONTAINER UUID="bb5c5466-9542-46a1-9035-32b03ca317eb">\r
+                  <SHORT-NAME>LEDS_LED4</SHORT-NAME>\r
+                  <ADMIN-DATA>\r
+                    <SDGS>\r
+                      <SDG GID="Arccore::IdentifiableOptions" />\r
+                    </SDGS>\r
+                  </ADMIN-DATA>\r
+                  <DEFINITION-REF DEST="PARAM-CONF-CONTAINER-DEF">/ArcCore/Dio/DioPort/DioChannel</DEFINITION-REF>\r
+                  <PARAMETER-VALUES>\r
+                    <INTEGER-VALUE>\r
+                      <DEFINITION-REF DEST="INTEGER-PARAM-DEF">/ArcCore/Dio/DioPort/DioChannel/DioChannelId</DEFINITION-REF>\r
+                      <VALUE>52</VALUE>\r
+                    </INTEGER-VALUE>\r
+                  </PARAMETER-VALUES>\r
+                </CONTAINER>\r
+                <CONTAINER UUID="1cd257d5-4890-414b-948a-f7177260349d">\r
+                  <SHORT-NAME>LEDS_LED5</SHORT-NAME>\r
+                  <ADMIN-DATA>\r
+                    <SDGS>\r
+                      <SDG GID="Arccore::IdentifiableOptions" />\r
+                    </SDGS>\r
+                  </ADMIN-DATA>\r
+                  <DEFINITION-REF DEST="PARAM-CONF-CONTAINER-DEF">/ArcCore/Dio/DioPort/DioChannel</DEFINITION-REF>\r
+                  <PARAMETER-VALUES>\r
+                    <INTEGER-VALUE>\r
+                      <DEFINITION-REF DEST="INTEGER-PARAM-DEF">/ArcCore/Dio/DioPort/DioChannel/DioChannelId</DEFINITION-REF>\r
+                      <VALUE>53</VALUE>\r
+                    </INTEGER-VALUE>\r
+                  </PARAMETER-VALUES>\r
+                </CONTAINER>\r
+                <CONTAINER UUID="fc2e1375-9142-4dda-96ba-12b7ed0c23ae">\r
+                  <SHORT-NAME>LED_GRP_PTR</SHORT-NAME>\r
+                  <ADMIN-DATA>\r
+                    <SDGS>\r
+                      <SDG GID="Arccore::IdentifiableOptions" />\r
+                    </SDGS>\r
+                  </ADMIN-DATA>\r
+                  <DEFINITION-REF DEST="PARAM-CONF-CONTAINER-DEF">/ArcCore/Dio/DioPort/DioChannelGroup</DEFINITION-REF>\r
+                  <PARAMETER-VALUES>\r
+                    <INTEGER-VALUE>\r
+                      <DEFINITION-REF DEST="INTEGER-PARAM-DEF">/ArcCore/Dio/DioPort/DioChannelGroup/DioPortMask</DEFINITION-REF>\r
+                      <VALUE>48</VALUE>\r
+                    </INTEGER-VALUE>\r
+                    <INTEGER-VALUE>\r
+                      <DEFINITION-REF DEST="DERIVED-INTEGER-PARAM-DEF">/ArcCore/Dio/DioPort/DioChannelGroup/DioPortOffset</DEFINITION-REF>\r
+                      <VALUE>0</VALUE>\r
+                    </INTEGER-VALUE>\r
+                  </PARAMETER-VALUES>\r
+                </CONTAINER>\r
+              </SUB-CONTAINERS>\r
+            </CONTAINER>\r
+            <CONTAINER UUID="8ab8ead7-d7be-4c84-be71-6980a8f426f6">\r
+              <SHORT-NAME>SPI_HOLD</SHORT-NAME>\r
+              <ADMIN-DATA>\r
+                <SDGS>\r
+                  <SDG GID="Arccore::IdentifiableOptions" />\r
+                </SDGS>\r
+              </ADMIN-DATA>\r
+              <DEFINITION-REF DEST="PARAM-CONF-CONTAINER-DEF">/ArcCore/Dio/DioPort</DEFINITION-REF>\r
+              <PARAMETER-VALUES>\r
+                <INTEGER-VALUE>\r
+                  <DEFINITION-REF DEST="INTEGER-PARAM-DEF">/ArcCore/Dio/DioPort/DioPortId</DEFINITION-REF>\r
+                  <VALUE>0</VALUE>\r
+                </INTEGER-VALUE>\r
+                <STRING-VALUE>\r
+                  <DEFINITION-REF DEST="STRING-PARAM-DEF">/ArcCore/Dio/DioPort/ArcCoreDioPhysicalPort</DEFINITION-REF>\r
+                  <VALUE>DIO_PORT_G</VALUE>\r
+                </STRING-VALUE>\r
+              </PARAMETER-VALUES>\r
+              <SUB-CONTAINERS>\r
+                <CONTAINER UUID="e7c20696-0c6d-43d7-ae7e-b2bcd26a483f">\r
+                  <SHORT-NAME>SPI_A_HOLD_M95256</SHORT-NAME>\r
+                  <ADMIN-DATA>\r
+                    <SDGS>\r
+                      <SDG GID="Arccore::IdentifiableOptions" />\r
+                    </SDGS>\r
+                  </ADMIN-DATA>\r
+                  <DEFINITION-REF DEST="PARAM-CONF-CONTAINER-DEF">/ArcCore/Dio/DioPort/DioChannel</DEFINITION-REF>\r
+                  <PARAMETER-VALUES>\r
+                    <INTEGER-VALUE>\r
+                      <DEFINITION-REF DEST="INTEGER-PARAM-DEF">/ArcCore/Dio/DioPort/DioChannel/DioChannelId</DEFINITION-REF>\r
+                      <VALUE>97</VALUE>\r
+                    </INTEGER-VALUE>\r
+                  </PARAMETER-VALUES>\r
+                </CONTAINER>\r
+                <CONTAINER UUID="7fc4cf00-edcc-4d2d-90d5-c739cdf0f2b5">\r
+                  <SHORT-NAME>SPI_B_HOLD_M95256</SHORT-NAME>\r
+                  <ADMIN-DATA>\r
+                    <SDGS>\r
+                      <SDG GID="Arccore::IdentifiableOptions" />\r
+                    </SDGS>\r
+                  </ADMIN-DATA>\r
+                  <DEFINITION-REF DEST="PARAM-CONF-CONTAINER-DEF">/ArcCore/Dio/DioPort/DioChannel</DEFINITION-REF>\r
+                  <PARAMETER-VALUES>\r
+                    <INTEGER-VALUE>\r
+                      <DEFINITION-REF DEST="INTEGER-PARAM-DEF">/ArcCore/Dio/DioPort/DioChannel/DioChannelId</DEFINITION-REF>\r
+                      <VALUE>102</VALUE>\r
+                    </INTEGER-VALUE>\r
+                  </PARAMETER-VALUES>\r
+                </CONTAINER>\r
+                <CONTAINER UUID="4603d58c-0e72-4ea9-b54a-372a4875ba53">\r
+                  <SHORT-NAME>SPI_A_HOLD_S25FL016</SHORT-NAME>\r
+                  <ADMIN-DATA>\r
+                    <SDGS>\r
+                      <SDG GID="Arccore::IdentifiableOptions" />\r
+                    </SDGS>\r
+                  </ADMIN-DATA>\r
+                  <DEFINITION-REF DEST="PARAM-CONF-CONTAINER-DEF">/ArcCore/Dio/DioPort/DioChannel</DEFINITION-REF>\r
+                  <PARAMETER-VALUES>\r
+                    <INTEGER-VALUE>\r
+                      <DEFINITION-REF DEST="INTEGER-PARAM-DEF">/ArcCore/Dio/DioPort/DioChannel/DioChannelId</DEFINITION-REF>\r
+                      <VALUE>101</VALUE>\r
+                    </INTEGER-VALUE>\r
+                  </PARAMETER-VALUES>\r
+                </CONTAINER>\r
+              </SUB-CONTAINERS>\r
+            </CONTAINER>\r
+            <CONTAINER UUID="ee51423c-93df-4741-80cb-a5a21eb72290">\r
+              <SHORT-NAME>MISC_PORT</SHORT-NAME>\r
+              <ADMIN-DATA>\r
+                <SDGS>\r
+                  <SDG GID="Arccore::IdentifiableOptions" />\r
+                </SDGS>\r
+              </ADMIN-DATA>\r
+              <DEFINITION-REF DEST="PARAM-CONF-CONTAINER-DEF">/ArcCore/Dio/DioPort</DEFINITION-REF>\r
+              <PARAMETER-VALUES>\r
+                <INTEGER-VALUE>\r
+                  <DEFINITION-REF DEST="INTEGER-PARAM-DEF">/ArcCore/Dio/DioPort/DioPortId</DEFINITION-REF>\r
+                  <VALUE>0</VALUE>\r
+                </INTEGER-VALUE>\r
+                <STRING-VALUE>\r
+                  <DEFINITION-REF DEST="STRING-PARAM-DEF">/ArcCore/Dio/DioPort/ArcCoreDioPhysicalPort</DEFINITION-REF>\r
+                  <VALUE>DIO_PORT_E</VALUE>\r
+                </STRING-VALUE>\r
+              </PARAMETER-VALUES>\r
+              <SUB-CONTAINERS>\r
+                <CONTAINER UUID="be334253-413e-4918-ac37-01546e979a20">\r
+                  <SHORT-NAME>S1</SHORT-NAME>\r
+                  <ADMIN-DATA>\r
+                    <SDGS>\r
+                      <SDG GID="Arccore::IdentifiableOptions">\r
+                        <SD GID="@ARCCORE_COMMENT">Push switch S1</SD>\r
+                      </SDG>\r
+                    </SDGS>\r
+                  </ADMIN-DATA>\r
+                  <DEFINITION-REF DEST="PARAM-CONF-CONTAINER-DEF">/ArcCore/Dio/DioPort/DioChannel</DEFINITION-REF>\r
+                  <PARAMETER-VALUES>\r
+                    <INTEGER-VALUE>\r
+                      <DEFINITION-REF DEST="INTEGER-PARAM-DEF">/ArcCore/Dio/DioPort/DioChannel/DioChannelId</DEFINITION-REF>\r
+                      <VALUE>95</VALUE>\r
+                    </INTEGER-VALUE>\r
+                  </PARAMETER-VALUES>\r
+                </CONTAINER>\r
+              </SUB-CONTAINERS>\r
+            </CONTAINER>\r
+            <CONTAINER UUID="6884d6f0-7a44-438f-8901-67daca95e5bb">\r
+              <SHORT-NAME>PLAY</SHORT-NAME>\r
+              <ADMIN-DATA>\r
+                <SDGS>\r
+                  <SDG GID="Arccore::IdentifiableOptions" />\r
+                </SDGS>\r
+              </ADMIN-DATA>\r
+              <DEFINITION-REF DEST="PARAM-CONF-CONTAINER-DEF">/ArcCore/Dio/DioPort</DEFINITION-REF>\r
+              <PARAMETER-VALUES>\r
+                <INTEGER-VALUE>\r
+                  <DEFINITION-REF DEST="INTEGER-PARAM-DEF">/ArcCore/Dio/DioPort/DioPortId</DEFINITION-REF>\r
+                  <VALUE>0</VALUE>\r
+                </INTEGER-VALUE>\r
+                <STRING-VALUE>\r
+                  <DEFINITION-REF DEST="STRING-PARAM-DEF">/ArcCore/Dio/DioPort/ArcCoreDioPhysicalPort</DEFINITION-REF>\r
+                  <VALUE>DIO_PORT_F</VALUE>\r
+                </STRING-VALUE>\r
+              </PARAMETER-VALUES>\r
+              <SUB-CONTAINERS>\r
+                <CONTAINER UUID="2448913f-2be5-411d-92c5-44a5da67fb2d">\r
+                  <SHORT-NAME>OUTIN_0</SHORT-NAME>\r
+                  <ADMIN-DATA>\r
+                    <SDGS>\r
+                      <SDG GID="Arccore::IdentifiableOptions">\r
+                        <SD GID="@ARCCORE_COMMENT">PF[0] Used for IoHwAb to play with</SD>\r
+                      </SDG>\r
+                    </SDGS>\r
+                  </ADMIN-DATA>\r
+                  <DEFINITION-REF DEST="PARAM-CONF-CONTAINER-DEF">/ArcCore/Dio/DioPort/DioChannel</DEFINITION-REF>\r
+                  <PARAMETER-VALUES>\r
+                    <INTEGER-VALUE>\r
+                      <DEFINITION-REF DEST="INTEGER-PARAM-DEF">/ArcCore/Dio/DioPort/DioChannel/DioChannelId</DEFINITION-REF>\r
+                      <VALUE>80</VALUE>\r
+                    </INTEGER-VALUE>\r
+                  </PARAMETER-VALUES>\r
+                </CONTAINER>\r
+                <CONTAINER UUID="bb62fd40-7cc5-4a9c-882f-4187ef449007">\r
+                  <SHORT-NAME>OUTIN_1</SHORT-NAME>\r
+                  <ADMIN-DATA>\r
+                    <SDGS>\r
+                      <SDG GID="Arccore::IdentifiableOptions">\r
+                        <SD GID="@ARCCORE_COMMENT">PF[1] Used for IoHwAb to play with</SD>\r
+                      </SDG>\r
+                    </SDGS>\r
+                  </ADMIN-DATA>\r
+                  <DEFINITION-REF DEST="PARAM-CONF-CONTAINER-DEF">/ArcCore/Dio/DioPort/DioChannel</DEFINITION-REF>\r
+                  <PARAMETER-VALUES>\r
+                    <INTEGER-VALUE>\r
+                      <DEFINITION-REF DEST="INTEGER-PARAM-DEF">/ArcCore/Dio/DioPort/DioChannel/DioChannelId</DEFINITION-REF>\r
+                      <VALUE>81</VALUE>\r
+                    </INTEGER-VALUE>\r
+                  </PARAMETER-VALUES>\r
+                </CONTAINER>\r
+              </SUB-CONTAINERS>\r
+            </CONTAINER>\r
+          </CONTAINERS>\r
+        </MODULE-CONFIGURATION>\r
+        <MODULE-CONFIGURATION UUID="dbfb7be7-37de-4087-b063-397be232ceea">\r
+          <SHORT-NAME>Mcu</SHORT-NAME>\r
+          <ADMIN-DATA>\r
+            <SDGS>\r
+              <SDG />\r
+              <SDG GID="Arccore::ModuleOptions">\r
+                <SD GID="GENERATE_AND_VALIDATE">true</SD>\r
+                <SD GID="ARCCORE_EDITOR_VERSION">2.0.0</SD>\r
+              </SDG>\r
+            </SDGS>\r
+          </ADMIN-DATA>\r
+          <DEFINITION-REF DEST="MODULE-DEF">/ArcCore/Mcu</DEFINITION-REF>\r
+          <CONTAINERS>\r
+            <CONTAINER UUID="0ab2bb62-5561-4f6c-a204-9e5452c8cc90">\r
+              <SHORT-NAME>McuGeneralConfiguration</SHORT-NAME>\r
+              <DEFINITION-REF DEST="PARAM-CONF-CONTAINER-DEF">/ArcCore/Mcu/McuGeneralConfiguration</DEFINITION-REF>\r
+              <PARAMETER-VALUES>\r
+                <BOOLEAN-VALUE>\r
+                  <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Mcu/McuGeneralConfiguration/McuDevErrorDetect</DEFINITION-REF>\r
+                  <VALUE>true</VALUE>\r
+                </BOOLEAN-VALUE>\r
+                <BOOLEAN-VALUE>\r
+                  <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Mcu/McuGeneralConfiguration/McuPerformResetApi</DEFINITION-REF>\r
+                  <VALUE>true</VALUE>\r
+                </BOOLEAN-VALUE>\r
+                <BOOLEAN-VALUE>\r
+                  <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Mcu/McuGeneralConfiguration/McuVersionInfoApi</DEFINITION-REF>\r
+                  <VALUE>true</VALUE>\r
+                </BOOLEAN-VALUE>\r
+              </PARAMETER-VALUES>\r
+            </CONTAINER>\r
+            <CONTAINER UUID="f21be304-420e-421a-a055-df1afa68324a">\r
+              <SHORT-NAME>McuModuleConfiguration</SHORT-NAME>\r
+              <DEFINITION-REF DEST="PARAM-CONF-CONTAINER-DEF">/ArcCore/Mcu/McuModuleConfiguration</DEFINITION-REF>\r
+              <PARAMETER-VALUES>\r
+                <ENUMERATION-VALUE>\r
+                  <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Mcu/McuModuleConfiguration/McuClockSrcFailureNotification</DEFINITION-REF>\r
+                  <VALUE>DISABLED</VALUE>\r
+                </ENUMERATION-VALUE>\r
+                <INTEGER-VALUE>\r
+                  <DEFINITION-REF DEST="DERIVED-INTEGER-PARAM-DEF">/ArcCore/Mcu/McuModuleConfiguration/McuNumberOfMcuModes</DEFINITION-REF>\r
+                  <VALUE>0</VALUE>\r
+                </INTEGER-VALUE>\r
+                <INTEGER-VALUE>\r
+                  <DEFINITION-REF DEST="DERIVED-INTEGER-PARAM-DEF">/ArcCore/Mcu/McuModuleConfiguration/McuRamSectors</DEFINITION-REF>\r
+                  <VALUE>1</VALUE>\r
+                </INTEGER-VALUE>\r
+                <INTEGER-VALUE>\r
+                  <DEFINITION-REF DEST="INTEGER-PARAM-DEF">/ArcCore/Mcu/McuModuleConfiguration/McuResetSetting</DEFINITION-REF>\r
+                  <VALUE>0</VALUE>\r
+                </INTEGER-VALUE>\r
+              </PARAMETER-VALUES>\r
+              <SUB-CONTAINERS>\r
+                <CONTAINER UUID="8dff9544-cfaa-4d5d-8ed1-bb18e658fe8e">\r
+                  <SHORT-NAME>McuClockSettingConfig</SHORT-NAME>\r
+                  <DEFINITION-REF DEST="PARAM-CONF-CONTAINER-DEF">/ArcCore/Mcu/McuModuleConfiguration/McuClockSettingConfig</DEFINITION-REF>\r
+                  <REFERENCE-VALUES>\r
+                    <REFERENCE-VALUE>\r
+                      <DEFINITION-REF DEST="REFERENCE-PARAM-DEF">/ArcCore/Mcu/McuModuleConfiguration/McuClockSettingConfig/McuDefaultClockReference</DEFINITION-REF>\r
+                      <VALUE-REF DEST="CONTAINER">/board_mpc5516it/Mcu/McuModuleConfiguration/McuClockSettingConfig/EXT_REF_80MHZ</VALUE-REF>\r
+                    </REFERENCE-VALUE>\r
+                  </REFERENCE-VALUES>\r
+                  <SUB-CONTAINERS>\r
+                    <CONTAINER UUID="f1ac9efa-fe7a-4a4b-965b-719faa35a2a3">\r
+                      <SHORT-NAME>EXT_REF_80MHZ</SHORT-NAME>\r
+                      <ADMIN-DATA>\r
+                        <SDGS>\r
+                          <SDG GID="Arccore::IdentifiableOptions" />\r
+                        </SDGS>\r
+                      </ADMIN-DATA>\r
+                      <DEFINITION-REF DEST="PARAM-CONF-CONTAINER-DEF">/ArcCore/Mcu/McuModuleConfiguration/McuClockSettingConfig/McuClockReferencePoint</DEFINITION-REF>\r
+                      <PARAMETER-VALUES>\r
+                        <FLOAT-VALUE>\r
+                          <DEFINITION-REF DEST="FLOAT-PARAM-DEF">/ArcCore/Mcu/McuModuleConfiguration/McuClockSettingConfig/McuClockReferencePoint/McuClockReferencePointFrequency</DEFINITION-REF>\r
+                          <VALUE>8000000.0</VALUE>\r
+                        </FLOAT-VALUE>\r
+                        <INTEGER-VALUE>\r
+                          <DEFINITION-REF DEST="INTEGER-PARAM-DEF">/ArcCore/Mcu/McuModuleConfiguration/McuClockSettingConfig/McuClockReferencePoint/McuClockReferencePointPllEprediv</DEFINITION-REF>\r
+                          <VALUE>1</VALUE>\r
+                        </INTEGER-VALUE>\r
+                        <INTEGER-VALUE>\r
+                          <DEFINITION-REF DEST="INTEGER-PARAM-DEF">/ArcCore/Mcu/McuModuleConfiguration/McuClockSettingConfig/McuClockReferencePoint/McuClockReferencePointPllEmfd</DEFINITION-REF>\r
+                          <VALUE>104</VALUE>\r
+                        </INTEGER-VALUE>\r
+                        <INTEGER-VALUE>\r
+                          <DEFINITION-REF DEST="INTEGER-PARAM-DEF">/ArcCore/Mcu/McuModuleConfiguration/McuClockSettingConfig/McuClockReferencePoint/McuClockReferencePointPllErfd</DEFINITION-REF>\r
+                          <VALUE>5</VALUE>\r
+                        </INTEGER-VALUE>\r
+                      </PARAMETER-VALUES>\r
+                    </CONTAINER>\r
+                    <CONTAINER UUID="5e7f1629-02bc-4f44-8dff-f23458377126">\r
+                      <SHORT-NAME>EXT_REF_66MHZ</SHORT-NAME>\r
+                      <ADMIN-DATA>\r
+                        <SDGS>\r
+                          <SDG GID="Arccore::IdentifiableOptions" />\r
+                        </SDGS>\r
+                      </ADMIN-DATA>\r
+                      <DEFINITION-REF DEST="PARAM-CONF-CONTAINER-DEF">/ArcCore/Mcu/McuModuleConfiguration/McuClockSettingConfig/McuClockReferencePoint</DEFINITION-REF>\r
+                      <PARAMETER-VALUES>\r
+                        <FLOAT-VALUE>\r
+                          <DEFINITION-REF DEST="FLOAT-PARAM-DEF">/ArcCore/Mcu/McuModuleConfiguration/McuClockSettingConfig/McuClockReferencePoint/McuClockReferencePointFrequency</DEFINITION-REF>\r
+                          <VALUE>1.6E7</VALUE>\r
+                        </FLOAT-VALUE>\r
+                        <INTEGER-VALUE>\r
+                          <DEFINITION-REF DEST="INTEGER-PARAM-DEF">/ArcCore/Mcu/McuModuleConfiguration/McuClockSettingConfig/McuClockReferencePoint/McuClockReferencePointPllEprediv</DEFINITION-REF>\r
+                          <VALUE>3</VALUE>\r
+                        </INTEGER-VALUE>\r
+                        <INTEGER-VALUE>\r
+                          <DEFINITION-REF DEST="INTEGER-PARAM-DEF">/ArcCore/Mcu/McuModuleConfiguration/McuClockSettingConfig/McuClockReferencePoint/McuClockReferencePointPllEmfd</DEFINITION-REF>\r
+                          <VALUE>83</VALUE>\r
+                        </INTEGER-VALUE>\r
+                        <INTEGER-VALUE>\r
+                          <DEFINITION-REF DEST="INTEGER-PARAM-DEF">/ArcCore/Mcu/McuModuleConfiguration/McuClockSettingConfig/McuClockReferencePoint/McuClockReferencePointPllErfd</DEFINITION-REF>\r
+                          <VALUE>5</VALUE>\r
+                        </INTEGER-VALUE>\r
+                      </PARAMETER-VALUES>\r
+                    </CONTAINER>\r
+                    <CONTAINER UUID="49b20ef4-5b28-4241-aaf7-be4837412fc5">\r
+                      <SHORT-NAME>XOSC_CAN</SHORT-NAME>\r
+                      <ADMIN-DATA>\r
+                        <SDGS>\r
+                          <SDG GID="Arccore::IdentifiableOptions" />\r
+                        </SDGS>\r
+                      </ADMIN-DATA>\r
+                      <DEFINITION-REF DEST="PARAM-CONF-CONTAINER-DEF">/ArcCore/Mcu/McuModuleConfiguration/McuClockSettingConfig/McuClockReferencePoint</DEFINITION-REF>\r
+                      <PARAMETER-VALUES>\r
+                        <FLOAT-VALUE>\r
+                          <DEFINITION-REF DEST="FLOAT-PARAM-DEF">/ArcCore/Mcu/McuModuleConfiguration/McuClockSettingConfig/McuClockReferencePoint/McuClockReferencePointFrequency</DEFINITION-REF>\r
+                          <VALUE>8000000.0</VALUE>\r
+                        </FLOAT-VALUE>\r
+                        <INTEGER-VALUE>\r
+                          <DEFINITION-REF DEST="INTEGER-PARAM-DEF">/ArcCore/Mcu/McuModuleConfiguration/McuClockSettingConfig/McuClockReferencePoint/McuClockReferencePointPllEprediv</DEFINITION-REF>\r
+                          <VALUE>0</VALUE>\r
+                        </INTEGER-VALUE>\r
+                        <INTEGER-VALUE>\r
+                          <DEFINITION-REF DEST="INTEGER-PARAM-DEF">/ArcCore/Mcu/McuModuleConfiguration/McuClockSettingConfig/McuClockReferencePoint/McuClockReferencePointPllEmfd</DEFINITION-REF>\r
+                          <VALUE>0</VALUE>\r
+                        </INTEGER-VALUE>\r
+                        <INTEGER-VALUE>\r
+                          <DEFINITION-REF DEST="INTEGER-PARAM-DEF">/ArcCore/Mcu/McuModuleConfiguration/McuClockSettingConfig/McuClockReferencePoint/McuClockReferencePointPllErfd</DEFINITION-REF>\r
+                          <VALUE>0</VALUE>\r
+                        </INTEGER-VALUE>\r
+                      </PARAMETER-VALUES>\r
+                    </CONTAINER>\r
+                  </SUB-CONTAINERS>\r
+                </CONTAINER>\r
+                <CONTAINER UUID="edd643af-7788-4a0c-bf48-bf4b686db735">\r
+                  <SHORT-NAME>McuModeSettingConf</SHORT-NAME>\r
+                  <DEFINITION-REF DEST="PARAM-CONF-CONTAINER-DEF">/ArcCore/Mcu/McuModuleConfiguration/McuModeSettingConf</DEFINITION-REF>\r
+                  <PARAMETER-VALUES>\r
+                    <INTEGER-VALUE>\r
+                      <DEFINITION-REF DEST="INTEGER-PARAM-DEF">/ArcCore/Mcu/McuModuleConfiguration/McuModeSettingConf/McuMode</DEFINITION-REF>\r
+                      <VALUE>0</VALUE>\r
+                    </INTEGER-VALUE>\r
+                  </PARAMETER-VALUES>\r
+                </CONTAINER>\r
+              </SUB-CONTAINERS>\r
+            </CONTAINER>\r
+          </CONTAINERS>\r
+        </MODULE-CONFIGURATION>\r
+        <MODULE-CONFIGURATION UUID="3e5897b8-4af8-4a71-9de6-f999f6a67e61">\r
+          <SHORT-NAME>Port</SHORT-NAME>\r
+          <ADMIN-DATA>\r
+            <SDGS>\r
+              <SDG />\r
+              <SDG GID="Arccore::ModuleOptions">\r
+                <SD GID="GENERATE_AND_VALIDATE">true</SD>\r
+                <SD GID="ARCCORE_EDITOR_VERSION">2.0.0</SD>\r
+              </SDG>\r
+            </SDGS>\r
+          </ADMIN-DATA>\r
+          <DEFINITION-REF DEST="MODULE-DEF">/ArcCore/Port</DEFINITION-REF>\r
+          <CONTAINERS>\r
+            <CONTAINER UUID="5cf89b5f-7998-4820-a1ab-f7bcf4c4f4ef">\r
+              <SHORT-NAME>PortConfigSet</SHORT-NAME>\r
+              <DEFINITION-REF DEST="PARAM-CONF-CONTAINER-DEF">/ArcCore/Port/PortConfigSet</DEFINITION-REF>\r
+              <SUB-CONTAINERS>\r
+                <CONTAINER UUID="1740d414-498c-4693-8228-9a7d2fba99f9">\r
+                  <SHORT-NAME>Misc</SHORT-NAME>\r
+                  <ADMIN-DATA>\r
+                    <SDGS>\r
+                      <SDG GID="Arccore::IdentifiableOptions" />\r
+                    </SDGS>\r
+                  </ADMIN-DATA>\r
+                  <DEFINITION-REF DEST="PARAM-CONF-CONTAINER-DEF">/ArcCore/Port/PortConfigSet/PortContainer</DEFINITION-REF>\r
+                  <SUB-CONTAINERS>\r
+                    <CONTAINER UUID="fa67df68-90a6-4771-a01d-fd93c65ac391">\r
+                      <SHORT-NAME>BOOTCFG</SHORT-NAME>\r
+                      <ADMIN-DATA>\r
+                        <SDGS>\r
+                          <SDG GID="Arccore::IdentifiableOptions" />\r
+                        </SDGS>\r
+                      </ADMIN-DATA>\r
+                      <DEFINITION-REF DEST="PARAM-CONF-CONTAINER-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin</DEFINITION-REF>\r
+                      <PARAMETER-VALUES>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinPullMode</DEFINITION-REF>\r
+                          <VALUE>PULL_NONE</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinDirection</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_IN</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinDirectionChangeable</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinHysteresisEnabled</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinOpenDrainEnabled</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <INTEGER-VALUE>\r
+                          <DEFINITION-REF DEST="INTEGER-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinId</DEFINITION-REF>\r
+                          <VALUE>50</VALUE>\r
+                        </INTEGER-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinSlewRate</DEFINITION-REF>\r
+                          <VALUE>SLEW_RATE_MIN</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinLevelValue</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_LEVEL_LOW</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinMode</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_MODE_OTHER</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                      </PARAMETER-VALUES>\r
+                    </CONTAINER>\r
+                    <CONTAINER UUID="a0c2497b-fdfc-44d0-a538-43065b7fcabb">\r
+                      <SHORT-NAME>PF[15]</SHORT-NAME>\r
+                      <ADMIN-DATA>\r
+                        <SDGS>\r
+                          <SDG GID="Arccore::IdentifiableOptions">\r
+                            <SD GID="@ARCCORE_COMMENT">S1 Push Switch</SD>\r
+                          </SDG>\r
+                        </SDGS>\r
+                      </ADMIN-DATA>\r
+                      <DEFINITION-REF DEST="PARAM-CONF-CONTAINER-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin</DEFINITION-REF>\r
+                      <PARAMETER-VALUES>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinPullMode</DEFINITION-REF>\r
+                          <VALUE>PULL_NONE</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinDirection</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_IN</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinDirectionChangeable</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinHysteresisEnabled</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinOpenDrainEnabled</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <INTEGER-VALUE>\r
+                          <DEFINITION-REF DEST="INTEGER-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinId</DEFINITION-REF>\r
+                          <VALUE>95</VALUE>\r
+                        </INTEGER-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinSlewRate</DEFINITION-REF>\r
+                          <VALUE>SLEW_RATE_MIN</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinLevelValue</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_LEVEL_LOW</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinMode</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_MODE_DIO</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                      </PARAMETER-VALUES>\r
+                    </CONTAINER>\r
+                    <CONTAINER UUID="01eab2fd-ad42-411c-8b47-e1794c7c78ba">\r
+                      <SHORT-NAME>PF[0]</SHORT-NAME>\r
+                      <ADMIN-DATA>\r
+                        <SDGS>\r
+                          <SDG GID="Arccore::IdentifiableOptions" />\r
+                        </SDGS>\r
+                      </ADMIN-DATA>\r
+                      <DEFINITION-REF DEST="PARAM-CONF-CONTAINER-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin</DEFINITION-REF>\r
+                      <PARAMETER-VALUES>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinPullMode</DEFINITION-REF>\r
+                          <VALUE>PULL_NONE</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinDirection</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_OUT</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinDirectionChangeable</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinHysteresisEnabled</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinOpenDrainEnabled</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <INTEGER-VALUE>\r
+                          <DEFINITION-REF DEST="INTEGER-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinId</DEFINITION-REF>\r
+                          <VALUE>80</VALUE>\r
+                        </INTEGER-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinSlewRate</DEFINITION-REF>\r
+                          <VALUE>SLEW_RATE_MIN</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinLevelValue</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_LEVEL_LOW</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinMode</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_MODE_DIO</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                      </PARAMETER-VALUES>\r
+                    </CONTAINER>\r
+                  </SUB-CONTAINERS>\r
+                </CONTAINER>\r
+                <CONTAINER UUID="2f15131f-aea1-405b-8abb-98a218ed9855">\r
+                  <SHORT-NAME>SPI_A</SHORT-NAME>\r
+                  <ADMIN-DATA>\r
+                    <SDGS>\r
+                      <SDG GID="Arccore::IdentifiableOptions">\r
+                        <SD GID="@ARCCORE_COMMENT">E2 and Flash. CS1 for E2 and CS2 for flash</SD>\r
+                      </SDG>\r
+                    </SDGS>\r
+                  </ADMIN-DATA>\r
+                  <DEFINITION-REF DEST="PARAM-CONF-CONTAINER-DEF">/ArcCore/Port/PortConfigSet/PortContainer</DEFINITION-REF>\r
+                  <SUB-CONTAINERS>\r
+                    <CONTAINER UUID="78b185c8-bdbf-4b40-a81e-c92808218492">\r
+                      <SHORT-NAME>SIN_A</SHORT-NAME>\r
+                      <ADMIN-DATA>\r
+                        <SDGS>\r
+                          <SDG GID="Arccore::IdentifiableOptions" />\r
+                        </SDGS>\r
+                      </ADMIN-DATA>\r
+                      <DEFINITION-REF DEST="PARAM-CONF-CONTAINER-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin</DEFINITION-REF>\r
+                      <PARAMETER-VALUES>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinPullMode</DEFINITION-REF>\r
+                          <VALUE>PULL_NONE</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinDirection</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_IN</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinDirectionChangeable</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinHysteresisEnabled</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinOpenDrainEnabled</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <INTEGER-VALUE>\r
+                          <DEFINITION-REF DEST="INTEGER-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinId</DEFINITION-REF>\r
+                          <VALUE>69</VALUE>\r
+                        </INTEGER-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinSlewRate</DEFINITION-REF>\r
+                          <VALUE>SLEW_RATE_MAX</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinLevelValue</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_LEVEL_LOW</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinMode</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_MODE_SPI</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                      </PARAMETER-VALUES>\r
+                    </CONTAINER>\r
+                    <CONTAINER UUID="41f01582-bdb9-480d-b3d2-04195c6043f3">\r
+                      <SHORT-NAME>SOUT_A</SHORT-NAME>\r
+                      <ADMIN-DATA>\r
+                        <SDGS>\r
+                          <SDG GID="Arccore::IdentifiableOptions" />\r
+                        </SDGS>\r
+                      </ADMIN-DATA>\r
+                      <DEFINITION-REF DEST="PARAM-CONF-CONTAINER-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin</DEFINITION-REF>\r
+                      <PARAMETER-VALUES>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinPullMode</DEFINITION-REF>\r
+                          <VALUE>PULL_NONE</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinDirection</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_OUT</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinDirectionChangeable</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinHysteresisEnabled</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinOpenDrainEnabled</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <INTEGER-VALUE>\r
+                          <DEFINITION-REF DEST="INTEGER-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinId</DEFINITION-REF>\r
+                          <VALUE>68</VALUE>\r
+                        </INTEGER-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinSlewRate</DEFINITION-REF>\r
+                          <VALUE>SLEW_RATE_MAX</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinLevelValue</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_LEVEL_LOW</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinMode</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_MODE_SPI</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                      </PARAMETER-VALUES>\r
+                    </CONTAINER>\r
+                    <CONTAINER UUID="1cbb3209-a8ed-4964-a865-3b8f74cb80b4">\r
+                      <SHORT-NAME>SCK_A</SHORT-NAME>\r
+                      <ADMIN-DATA>\r
+                        <SDGS>\r
+                          <SDG GID="Arccore::IdentifiableOptions" />\r
+                        </SDGS>\r
+                      </ADMIN-DATA>\r
+                      <DEFINITION-REF DEST="PARAM-CONF-CONTAINER-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin</DEFINITION-REF>\r
+                      <PARAMETER-VALUES>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinPullMode</DEFINITION-REF>\r
+                          <VALUE>PULL_NONE</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinDirection</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_OUT</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinDirectionChangeable</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinHysteresisEnabled</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinOpenDrainEnabled</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <INTEGER-VALUE>\r
+                          <DEFINITION-REF DEST="INTEGER-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinId</DEFINITION-REF>\r
+                          <VALUE>67</VALUE>\r
+                        </INTEGER-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinSlewRate</DEFINITION-REF>\r
+                          <VALUE>SLEW_RATE_MIN</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinLevelValue</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_LEVEL_LOW</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinMode</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_MODE_SPI</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                      </PARAMETER-VALUES>\r
+                    </CONTAINER>\r
+                    <CONTAINER UUID="f9f8be22-04c1-4f11-814f-04691e066841">\r
+                      <SHORT-NAME>PCS_A[1]</SHORT-NAME>\r
+                      <ADMIN-DATA>\r
+                        <SDGS>\r
+                          <SDG GID="Arccore::IdentifiableOptions">\r
+                            <SD GID="@ARCCORE_COMMENT">CS for M95256</SD>\r
+                          </SDG>\r
+                        </SDGS>\r
+                      </ADMIN-DATA>\r
+                      <DEFINITION-REF DEST="PARAM-CONF-CONTAINER-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin</DEFINITION-REF>\r
+                      <PARAMETER-VALUES>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinPullMode</DEFINITION-REF>\r
+                          <VALUE>PULL_NONE</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinDirection</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_OUT</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinDirectionChangeable</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinHysteresisEnabled</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinOpenDrainEnabled</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <INTEGER-VALUE>\r
+                          <DEFINITION-REF DEST="INTEGER-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinId</DEFINITION-REF>\r
+                          <VALUE>65</VALUE>\r
+                        </INTEGER-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinSlewRate</DEFINITION-REF>\r
+                          <VALUE>SLEW_RATE_MAX</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinLevelValue</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_LEVEL_LOW</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinMode</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_MODE_SPI</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                      </PARAMETER-VALUES>\r
+                    </CONTAINER>\r
+                    <CONTAINER UUID="919c81e4-3daf-4548-b36c-04f1effbb0e7">\r
+                      <SHORT-NAME>PCS_A[2]</SHORT-NAME>\r
+                      <ADMIN-DATA>\r
+                        <SDGS>\r
+                          <SDG GID="Arccore::IdentifiableOptions">\r
+                            <SD GID="@ARCCORE_COMMENT">CS for S25FL016</SD>\r
+                          </SDG>\r
+                        </SDGS>\r
+                      </ADMIN-DATA>\r
+                      <DEFINITION-REF DEST="PARAM-CONF-CONTAINER-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin</DEFINITION-REF>\r
+                      <PARAMETER-VALUES>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinPullMode</DEFINITION-REF>\r
+                          <VALUE>PULL_NONE</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinDirection</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_OUT</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinDirectionChangeable</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinHysteresisEnabled</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinOpenDrainEnabled</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <INTEGER-VALUE>\r
+                          <DEFINITION-REF DEST="INTEGER-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinId</DEFINITION-REF>\r
+                          <VALUE>64</VALUE>\r
+                        </INTEGER-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinSlewRate</DEFINITION-REF>\r
+                          <VALUE>SLEW_RATE_MAX</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinLevelValue</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_LEVEL_LOW</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinMode</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_MODE_SPI</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                      </PARAMETER-VALUES>\r
+                    </CONTAINER>\r
+                    <CONTAINER UUID="7e36a153-e61b-4f4b-bf48-775f94d5bb51">\r
+                      <SHORT-NAME>PG[1]</SHORT-NAME>\r
+                      <ADMIN-DATA>\r
+                        <SDGS>\r
+                          <SDG GID="Arccore::IdentifiableOptions">\r
+                            <SD GID="@ARCCORE_COMMENT">HOLD pin for E2 (pull HIGH)</SD>\r
+                          </SDG>\r
+                        </SDGS>\r
+                      </ADMIN-DATA>\r
+                      <DEFINITION-REF DEST="PARAM-CONF-CONTAINER-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin</DEFINITION-REF>\r
+                      <PARAMETER-VALUES>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinPullMode</DEFINITION-REF>\r
+                          <VALUE>PULL_NONE</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinDirection</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_OUT</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinDirectionChangeable</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinHysteresisEnabled</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinOpenDrainEnabled</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <INTEGER-VALUE>\r
+                          <DEFINITION-REF DEST="INTEGER-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinId</DEFINITION-REF>\r
+                          <VALUE>97</VALUE>\r
+                        </INTEGER-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinSlewRate</DEFINITION-REF>\r
+                          <VALUE>SLEW_RATE_MAX</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinLevelValue</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_LEVEL_HIGH</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinMode</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_MODE_DIO</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                      </PARAMETER-VALUES>\r
+                    </CONTAINER>\r
+                    <CONTAINER UUID="f50ff4c2-3c7e-487e-8a79-0ff0a495ed91">\r
+                      <SHORT-NAME>PG[5]</SHORT-NAME>\r
+                      <ADMIN-DATA>\r
+                        <SDGS>\r
+                          <SDG GID="Arccore::IdentifiableOptions">\r
+                            <SD GID="@ARCCORE_COMMENT">HOLD for flash( Pull HIGH)</SD>\r
+                          </SDG>\r
+                        </SDGS>\r
+                      </ADMIN-DATA>\r
+                      <DEFINITION-REF DEST="PARAM-CONF-CONTAINER-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin</DEFINITION-REF>\r
+                      <PARAMETER-VALUES>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinPullMode</DEFINITION-REF>\r
+                          <VALUE>PULL_NONE</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinDirection</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_OUT</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinDirectionChangeable</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinHysteresisEnabled</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinOpenDrainEnabled</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <INTEGER-VALUE>\r
+                          <DEFINITION-REF DEST="INTEGER-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinId</DEFINITION-REF>\r
+                          <VALUE>101</VALUE>\r
+                        </INTEGER-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinSlewRate</DEFINITION-REF>\r
+                          <VALUE>SLEW_RATE_MAX</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinLevelValue</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_LEVEL_HIGH</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinMode</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_MODE_DIO</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                      </PARAMETER-VALUES>\r
+                    </CONTAINER>\r
+                  </SUB-CONTAINERS>\r
+                </CONTAINER>\r
+                <CONTAINER UUID="4c38b10d-8cb1-412b-895f-748083061775">\r
+                  <SHORT-NAME>SPI_B</SHORT-NAME>\r
+                  <ADMIN-DATA>\r
+                    <SDGS>\r
+                      <SDG GID="Arccore::IdentifiableOptions" />\r
+                    </SDGS>\r
+                  </ADMIN-DATA>\r
+                  <DEFINITION-REF DEST="PARAM-CONF-CONTAINER-DEF">/ArcCore/Port/PortConfigSet/PortContainer</DEFINITION-REF>\r
+                  <SUB-CONTAINERS>\r
+                    <CONTAINER UUID="53c39411-5783-4024-b201-3b0787de51ea">\r
+                      <SHORT-NAME>SIN_B</SHORT-NAME>\r
+                      <ADMIN-DATA>\r
+                        <SDGS>\r
+                          <SDG GID="Arccore::IdentifiableOptions" />\r
+                        </SDGS>\r
+                      </ADMIN-DATA>\r
+                      <DEFINITION-REF DEST="PARAM-CONF-CONTAINER-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin</DEFINITION-REF>\r
+                      <PARAMETER-VALUES>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinPullMode</DEFINITION-REF>\r
+                          <VALUE>PULL_NONE</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinDirection</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_IN</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinDirectionChangeable</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinHysteresisEnabled</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinOpenDrainEnabled</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <INTEGER-VALUE>\r
+                          <DEFINITION-REF DEST="INTEGER-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinId</DEFINITION-REF>\r
+                          <VALUE>63</VALUE>\r
+                        </INTEGER-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinSlewRate</DEFINITION-REF>\r
+                          <VALUE>SLEW_RATE_MIN</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinLevelValue</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_LEVEL_LOW</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinMode</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_MODE_SPI</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                      </PARAMETER-VALUES>\r
+                    </CONTAINER>\r
+                    <CONTAINER UUID="5fe0516e-1bcd-486c-92c2-4718418ad0c1">\r
+                      <SHORT-NAME>SOUT_B</SHORT-NAME>\r
+                      <ADMIN-DATA>\r
+                        <SDGS>\r
+                          <SDG GID="Arccore::IdentifiableOptions" />\r
+                        </SDGS>\r
+                      </ADMIN-DATA>\r
+                      <DEFINITION-REF DEST="PARAM-CONF-CONTAINER-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin</DEFINITION-REF>\r
+                      <PARAMETER-VALUES>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinPullMode</DEFINITION-REF>\r
+                          <VALUE>PULL_NONE</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinDirection</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_OUT</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinDirectionChangeable</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinHysteresisEnabled</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinOpenDrainEnabled</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <INTEGER-VALUE>\r
+                          <DEFINITION-REF DEST="INTEGER-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinId</DEFINITION-REF>\r
+                          <VALUE>62</VALUE>\r
+                        </INTEGER-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinSlewRate</DEFINITION-REF>\r
+                          <VALUE>SLEW_RATE_MIN</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinLevelValue</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_LEVEL_LOW</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinMode</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_MODE_SPI</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                      </PARAMETER-VALUES>\r
+                    </CONTAINER>\r
+                    <CONTAINER UUID="153fbcb1-c546-42b2-bb43-f3dac65cdefc">\r
+                      <SHORT-NAME>SCK_B</SHORT-NAME>\r
+                      <ADMIN-DATA>\r
+                        <SDGS>\r
+                          <SDG GID="Arccore::IdentifiableOptions" />\r
+                        </SDGS>\r
+                      </ADMIN-DATA>\r
+                      <DEFINITION-REF DEST="PARAM-CONF-CONTAINER-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin</DEFINITION-REF>\r
+                      <PARAMETER-VALUES>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinPullMode</DEFINITION-REF>\r
+                          <VALUE>PULL_NONE</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinDirection</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_OUT</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinDirectionChangeable</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinHysteresisEnabled</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinOpenDrainEnabled</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <INTEGER-VALUE>\r
+                          <DEFINITION-REF DEST="INTEGER-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinId</DEFINITION-REF>\r
+                          <VALUE>61</VALUE>\r
+                        </INTEGER-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinSlewRate</DEFINITION-REF>\r
+                          <VALUE>SLEW_RATE_MIN</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinLevelValue</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_LEVEL_LOW</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinMode</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_MODE_SPI</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                      </PARAMETER-VALUES>\r
+                    </CONTAINER>\r
+                    <CONTAINER UUID="ef7abd3e-6e61-44c7-9dca-bccd27f7c7d3">\r
+                      <SHORT-NAME>PCS_B[0]</SHORT-NAME>\r
+                      <ADMIN-DATA>\r
+                        <SDGS>\r
+                          <SDG GID="Arccore::IdentifiableOptions" />\r
+                        </SDGS>\r
+                      </ADMIN-DATA>\r
+                      <DEFINITION-REF DEST="PARAM-CONF-CONTAINER-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin</DEFINITION-REF>\r
+                      <PARAMETER-VALUES>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinPullMode</DEFINITION-REF>\r
+                          <VALUE>PULL_NONE</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinDirection</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_OUT</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinDirectionChangeable</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinHysteresisEnabled</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinOpenDrainEnabled</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <INTEGER-VALUE>\r
+                          <DEFINITION-REF DEST="INTEGER-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinId</DEFINITION-REF>\r
+                          <VALUE>60</VALUE>\r
+                        </INTEGER-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinSlewRate</DEFINITION-REF>\r
+                          <VALUE>SLEW_RATE_MAX</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinLevelValue</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_LEVEL_LOW</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinMode</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_MODE_SPI</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                      </PARAMETER-VALUES>\r
+                    </CONTAINER>\r
+                    <CONTAINER UUID="d827d96d-1eac-495d-9d91-46ff1293dc4c">\r
+                      <SHORT-NAME>PG[6]</SHORT-NAME>\r
+                      <ADMIN-DATA>\r
+                        <SDGS>\r
+                          <SDG GID="Arccore::IdentifiableOptions">\r
+                            <SD GID="@ARCCORE_COMMENT">HOLD</SD>\r
+                          </SDG>\r
+                        </SDGS>\r
+                      </ADMIN-DATA>\r
+                      <DEFINITION-REF DEST="PARAM-CONF-CONTAINER-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin</DEFINITION-REF>\r
+                      <PARAMETER-VALUES>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinPullMode</DEFINITION-REF>\r
+                          <VALUE>PULL_NONE</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinDirection</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_OUT</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinDirectionChangeable</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinHysteresisEnabled</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinOpenDrainEnabled</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <INTEGER-VALUE>\r
+                          <DEFINITION-REF DEST="INTEGER-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinId</DEFINITION-REF>\r
+                          <VALUE>102</VALUE>\r
+                        </INTEGER-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinSlewRate</DEFINITION-REF>\r
+                          <VALUE>SLEW_RATE_MIN</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinLevelValue</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_LEVEL_HIGH</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinMode</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_MODE_DIO</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                      </PARAMETER-VALUES>\r
+                    </CONTAINER>\r
+                  </SUB-CONTAINERS>\r
+                </CONTAINER>\r
+                <CONTAINER UUID="af797d85-17ae-4538-8c96-4a2d18370fa4">\r
+                  <SHORT-NAME>LIN_B</SHORT-NAME>\r
+                  <ADMIN-DATA>\r
+                    <SDGS>\r
+                      <SDG GID="Arccore::IdentifiableOptions" />\r
+                    </SDGS>\r
+                  </ADMIN-DATA>\r
+                  <DEFINITION-REF DEST="PARAM-CONF-CONTAINER-DEF">/ArcCore/Port/PortConfigSet/PortContainer</DEFINITION-REF>\r
+                  <SUB-CONTAINERS>\r
+                    <CONTAINER UUID="5b6dcf9f-f36b-49e6-b9bc-ce43b235206e">\r
+                      <SHORT-NAME>TXD_B</SHORT-NAME>\r
+                      <ADMIN-DATA>\r
+                        <SDGS>\r
+                          <SDG GID="Arccore::IdentifiableOptions" />\r
+                        </SDGS>\r
+                      </ADMIN-DATA>\r
+                      <DEFINITION-REF DEST="PARAM-CONF-CONTAINER-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin</DEFINITION-REF>\r
+                      <PARAMETER-VALUES>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinPullMode</DEFINITION-REF>\r
+                          <VALUE>PULL_NONE</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinDirection</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_OUT</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinDirectionChangeable</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinHysteresisEnabled</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinOpenDrainEnabled</DEFINITION-REF>\r
+                          <VALUE>true</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <INTEGER-VALUE>\r
+                          <DEFINITION-REF DEST="INTEGER-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinId</DEFINITION-REF>\r
+                          <VALUE>56</VALUE>\r
+                        </INTEGER-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinSlewRate</DEFINITION-REF>\r
+                          <VALUE>SLEW_RATE_MAX</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinLevelValue</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_LEVEL_LOW</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinMode</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_MODE_OTHER_1</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                      </PARAMETER-VALUES>\r
+                    </CONTAINER>\r
+                    <CONTAINER UUID="1144ecd1-4586-4d10-9a98-ac9d4b820c2c">\r
+                      <SHORT-NAME>RXD_B</SHORT-NAME>\r
+                      <ADMIN-DATA>\r
+                        <SDGS>\r
+                          <SDG GID="Arccore::IdentifiableOptions" />\r
+                        </SDGS>\r
+                      </ADMIN-DATA>\r
+                      <DEFINITION-REF DEST="PARAM-CONF-CONTAINER-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin</DEFINITION-REF>\r
+                      <PARAMETER-VALUES>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinPullMode</DEFINITION-REF>\r
+                          <VALUE>PULL_NONE</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinDirection</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_IN</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinDirectionChangeable</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinHysteresisEnabled</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinOpenDrainEnabled</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <INTEGER-VALUE>\r
+                          <DEFINITION-REF DEST="INTEGER-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinId</DEFINITION-REF>\r
+                          <VALUE>57</VALUE>\r
+                        </INTEGER-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinSlewRate</DEFINITION-REF>\r
+                          <VALUE>SLEW_RATE_MAX</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinLevelValue</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_LEVEL_LOW</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinMode</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_MODE_OTHER_1</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                      </PARAMETER-VALUES>\r
+                    </CONTAINER>\r
+                  </SUB-CONTAINERS>\r
+                </CONTAINER>\r
+                <CONTAINER UUID="17593bea-0e41-47dc-9100-cc417f3d8033">\r
+                  <SHORT-NAME>LED</SHORT-NAME>\r
+                  <ADMIN-DATA>\r
+                    <SDGS>\r
+                      <SDG GID="Arccore::IdentifiableOptions">\r
+                        <SD GID="@ARCCORE_COMMENT">Should define user LEDs LD4 and LD5</SD>\r
+                      </SDG>\r
+                    </SDGS>\r
+                  </ADMIN-DATA>\r
+                  <DEFINITION-REF DEST="PARAM-CONF-CONTAINER-DEF">/ArcCore/Port/PortConfigSet/PortContainer</DEFINITION-REF>\r
+                  <SUB-CONTAINERS>\r
+                    <CONTAINER UUID="d1303274-35c0-47d9-94ae-3d93d7cb2403">\r
+                      <SHORT-NAME>PD[4]</SHORT-NAME>\r
+                      <ADMIN-DATA>\r
+                        <SDGS>\r
+                          <SDG GID="Arccore::IdentifiableOptions" />\r
+                        </SDGS>\r
+                      </ADMIN-DATA>\r
+                      <DEFINITION-REF DEST="PARAM-CONF-CONTAINER-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin</DEFINITION-REF>\r
+                      <PARAMETER-VALUES>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinPullMode</DEFINITION-REF>\r
+                          <VALUE>PULL_NONE</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinDirection</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_OUT</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinDirectionChangeable</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinHysteresisEnabled</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinOpenDrainEnabled</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <INTEGER-VALUE>\r
+                          <DEFINITION-REF DEST="INTEGER-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinId</DEFINITION-REF>\r
+                          <VALUE>52</VALUE>\r
+                        </INTEGER-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinSlewRate</DEFINITION-REF>\r
+                          <VALUE>SLEW_RATE_MIN</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinLevelValue</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_LEVEL_LOW</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinMode</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_MODE_DIO</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                      </PARAMETER-VALUES>\r
+                    </CONTAINER>\r
+                    <CONTAINER UUID="61034d2f-245a-4827-ae71-27f80ff1c6d4">\r
+                      <SHORT-NAME>PD[5]</SHORT-NAME>\r
+                      <ADMIN-DATA>\r
+                        <SDGS>\r
+                          <SDG GID="Arccore::IdentifiableOptions" />\r
+                        </SDGS>\r
+                      </ADMIN-DATA>\r
+                      <DEFINITION-REF DEST="PARAM-CONF-CONTAINER-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin</DEFINITION-REF>\r
+                      <PARAMETER-VALUES>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinPullMode</DEFINITION-REF>\r
+                          <VALUE>PULL_NONE</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinDirection</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_OUT</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinDirectionChangeable</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinHysteresisEnabled</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinOpenDrainEnabled</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <INTEGER-VALUE>\r
+                          <DEFINITION-REF DEST="INTEGER-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinId</DEFINITION-REF>\r
+                          <VALUE>53</VALUE>\r
+                        </INTEGER-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinSlewRate</DEFINITION-REF>\r
+                          <VALUE>SLEW_RATE_MIN</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinLevelValue</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_LEVEL_LOW</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinMode</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_MODE_DIO</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                      </PARAMETER-VALUES>\r
+                    </CONTAINER>\r
+                  </SUB-CONTAINERS>\r
+                </CONTAINER>\r
+                <CONTAINER UUID="3ac3513f-08ba-4dbd-988f-d5cad6b86646">\r
+                  <SHORT-NAME>CAN_A</SHORT-NAME>\r
+                  <ADMIN-DATA>\r
+                    <SDGS>\r
+                      <SDG GID="Arccore::IdentifiableOptions">\r
+                        <SD GID="@ARCCORE_COMMENT">The board just contains 1 CAN connector. Connected to CAN_A</SD>\r
+                      </SDG>\r
+                    </SDGS>\r
+                  </ADMIN-DATA>\r
+                  <DEFINITION-REF DEST="PARAM-CONF-CONTAINER-DEF">/ArcCore/Port/PortConfigSet/PortContainer</DEFINITION-REF>\r
+                  <SUB-CONTAINERS>\r
+                    <CONTAINER UUID="e9ea5a02-d2d9-4556-9a44-b982c3ac60c0">\r
+                      <SHORT-NAME>CNTX_A</SHORT-NAME>\r
+                      <ADMIN-DATA>\r
+                        <SDGS>\r
+                          <SDG GID="Arccore::IdentifiableOptions" />\r
+                        </SDGS>\r
+                      </ADMIN-DATA>\r
+                      <DEFINITION-REF DEST="PARAM-CONF-CONTAINER-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin</DEFINITION-REF>\r
+                      <PARAMETER-VALUES>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinPullMode</DEFINITION-REF>\r
+                          <VALUE>PULL_NONE</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinDirection</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_OUT</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinDirectionChangeable</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinHysteresisEnabled</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinOpenDrainEnabled</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <INTEGER-VALUE>\r
+                          <DEFINITION-REF DEST="INTEGER-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinId</DEFINITION-REF>\r
+                          <VALUE>48</VALUE>\r
+                        </INTEGER-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinSlewRate</DEFINITION-REF>\r
+                          <VALUE>SLEW_RATE_MIN</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinLevelValue</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_LEVEL_LOW</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinMode</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_MODE_CAN</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                      </PARAMETER-VALUES>\r
+                    </CONTAINER>\r
+                    <CONTAINER UUID="54c33959-51f0-4f00-9b03-a4f4abe273b3">\r
+                      <SHORT-NAME>CNRX_A</SHORT-NAME>\r
+                      <ADMIN-DATA>\r
+                        <SDGS>\r
+                          <SDG GID="Arccore::IdentifiableOptions" />\r
+                        </SDGS>\r
+                      </ADMIN-DATA>\r
+                      <DEFINITION-REF DEST="PARAM-CONF-CONTAINER-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin</DEFINITION-REF>\r
+                      <PARAMETER-VALUES>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinPullMode</DEFINITION-REF>\r
+                          <VALUE>PULL_NONE</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinDirection</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_IN</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinDirectionChangeable</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinHysteresisEnabled</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinOpenDrainEnabled</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <INTEGER-VALUE>\r
+                          <DEFINITION-REF DEST="INTEGER-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinId</DEFINITION-REF>\r
+                          <VALUE>49</VALUE>\r
+                        </INTEGER-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinSlewRate</DEFINITION-REF>\r
+                          <VALUE>SLEW_RATE_MIN</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinLevelValue</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_LEVEL_LOW</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinMode</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_MODE_CAN</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                      </PARAMETER-VALUES>\r
+                    </CONTAINER>\r
+                  </SUB-CONTAINERS>\r
+                </CONTAINER>\r
+                <CONTAINER UUID="d0f52e19-2f0c-4427-802c-0af263505366">\r
+                  <SHORT-NAME>SerialPort</SHORT-NAME>\r
+                  <ADMIN-DATA>\r
+                    <SDGS>\r
+                      <SDG GID="Arccore::IdentifiableOptions" />\r
+                    </SDGS>\r
+                  </ADMIN-DATA>\r
+                  <DEFINITION-REF DEST="PARAM-CONF-CONTAINER-DEF">/ArcCore/Port/PortConfigSet/PortContainer</DEFINITION-REF>\r
+                  <SUB-CONTAINERS>\r
+                    <CONTAINER UUID="6d961ced-d519-4de1-89fd-f347a2efed00">\r
+                      <SHORT-NAME>RXD_D</SHORT-NAME>\r
+                      <ADMIN-DATA>\r
+                        <SDGS>\r
+                          <SDG GID="Arccore::IdentifiableOptions" />\r
+                        </SDGS>\r
+                      </ADMIN-DATA>\r
+                      <DEFINITION-REF DEST="PARAM-CONF-CONTAINER-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin</DEFINITION-REF>\r
+                      <PARAMETER-VALUES>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinPullMode</DEFINITION-REF>\r
+                          <VALUE>PULL_NONE</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinDirection</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_IN</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinDirectionChangeable</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinHysteresisEnabled</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinOpenDrainEnabled</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <INTEGER-VALUE>\r
+                          <DEFINITION-REF DEST="INTEGER-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinId</DEFINITION-REF>\r
+                          <VALUE>93</VALUE>\r
+                        </INTEGER-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinSlewRate</DEFINITION-REF>\r
+                          <VALUE>SLEW_RATE_MIN</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinLevelValue</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_LEVEL_LOW</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinMode</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_MODE_OTHER_2</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                      </PARAMETER-VALUES>\r
+                    </CONTAINER>\r
+                    <CONTAINER UUID="498e6f32-da69-4918-8c77-dfda63e7a3bd">\r
+                      <SHORT-NAME>TXD_D</SHORT-NAME>\r
+                      <ADMIN-DATA>\r
+                        <SDGS>\r
+                          <SDG GID="Arccore::IdentifiableOptions" />\r
+                        </SDGS>\r
+                      </ADMIN-DATA>\r
+                      <DEFINITION-REF DEST="PARAM-CONF-CONTAINER-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin</DEFINITION-REF>\r
+                      <PARAMETER-VALUES>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinPullMode</DEFINITION-REF>\r
+                          <VALUE>PULL_NONE</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinDirection</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_OUT</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinDirectionChangeable</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinHysteresisEnabled</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <BOOLEAN-VALUE>\r
+                          <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinOpenDrainEnabled</DEFINITION-REF>\r
+                          <VALUE>false</VALUE>\r
+                        </BOOLEAN-VALUE>\r
+                        <INTEGER-VALUE>\r
+                          <DEFINITION-REF DEST="INTEGER-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinId</DEFINITION-REF>\r
+                          <VALUE>92</VALUE>\r
+                        </INTEGER-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinSlewRate</DEFINITION-REF>\r
+                          <VALUE>SLEW_RATE_MIN</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinLevelValue</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_LEVEL_LOW</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                        <ENUMERATION-VALUE>\r
+                          <DEFINITION-REF DEST="ENUMERATION-PARAM-DEF">/ArcCore/Port/PortConfigSet/PortContainer/PortPin/PortPinMode</DEFINITION-REF>\r
+                          <VALUE>PORT_PIN_MODE_OTHER_2</VALUE>\r
+                        </ENUMERATION-VALUE>\r
+                      </PARAMETER-VALUES>\r
+                    </CONTAINER>\r
+                  </SUB-CONTAINERS>\r
+                </CONTAINER>\r
+              </SUB-CONTAINERS>\r
+            </CONTAINER>\r
+            <CONTAINER UUID="dd3a7ccd-9c9b-4d50-b7af-58afb7b9e137">\r
+              <SHORT-NAME>PortGeneral</SHORT-NAME>\r
+              <DEFINITION-REF DEST="PARAM-CONF-CONTAINER-DEF">/ArcCore/Port/PortGeneral</DEFINITION-REF>\r
+              <PARAMETER-VALUES>\r
+                <BOOLEAN-VALUE>\r
+                  <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortGeneral/PortDevErrorDetect</DEFINITION-REF>\r
+                  <VALUE>true</VALUE>\r
+                </BOOLEAN-VALUE>\r
+                <BOOLEAN-VALUE>\r
+                  <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortGeneral/PortSetPinDirectionApi</DEFINITION-REF>\r
+                  <VALUE>true</VALUE>\r
+                </BOOLEAN-VALUE>\r
+                <BOOLEAN-VALUE>\r
+                  <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortGeneral/PortSetPinModeApi</DEFINITION-REF>\r
+                  <VALUE>true</VALUE>\r
+                </BOOLEAN-VALUE>\r
+                <BOOLEAN-VALUE>\r
+                  <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/Port/PortGeneral/PortVersionInfoApi</DEFINITION-REF>\r
+                  <VALUE>true</VALUE>\r
+                </BOOLEAN-VALUE>\r
+              </PARAMETER-VALUES>\r
+            </CONTAINER>\r
+          </CONTAINERS>\r
+        </MODULE-CONFIGURATION>\r
+        <MODULE-CONFIGURATION UUID="ed211179-bf2b-4083-81b1-1053739458b0">\r
+          <SHORT-NAME>EcuM</SHORT-NAME>\r
+          <ADMIN-DATA>\r
+            <SDGS>\r
+              <SDG />\r
+              <SDG GID="Arccore::ModuleOptions">\r
+                <SD GID="GENERATE_AND_VALIDATE">true</SD>\r
+                <SD GID="ARCCORE_EDITOR_VERSION">2.0.2</SD>\r
+              </SDG>\r
+            </SDGS>\r
+          </ADMIN-DATA>\r
+          <DEFINITION-REF DEST="MODULE-DEF">/ArcCore/EcuM</DEFINITION-REF>\r
+          <CONTAINERS>\r
+            <CONTAINER UUID="b1564e99-d948-4202-85d7-1d7b516d0047">\r
+              <SHORT-NAME>EcuMGeneral</SHORT-NAME>\r
+              <DEFINITION-REF DEST="PARAM-CONF-CONTAINER-DEF">/ArcCore/EcuM/EcuMGeneral</DEFINITION-REF>\r
+              <PARAMETER-VALUES>\r
+                <BOOLEAN-VALUE>\r
+                  <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/EcuM/EcuMGeneral/EcuMDevErrorDetect</DEFINITION-REF>\r
+                  <VALUE>false</VALUE>\r
+                </BOOLEAN-VALUE>\r
+                <BOOLEAN-VALUE>\r
+                  <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/EcuM/EcuMGeneral/EcuMIncludeNvramMgr</DEFINITION-REF>\r
+                  <VALUE>false</VALUE>\r
+                </BOOLEAN-VALUE>\r
+                <BOOLEAN-VALUE>\r
+                  <DEFINITION-REF DEST="BOOLEAN-PARAM-DEF">/ArcCore/EcuM/EcuMGeneral/EcuMVersionInfoApi</DEFINITION-REF>\r
+                  <VALUE>false</VALUE>\r
+                </BOOLEAN-VALUE>\r
+                <FLOAT-VALUE>\r
+                  <DEFINITION-REF DEST="FLOAT-PARAM-DEF">/ArcCore/EcuM/EcuMGeneral/EcuMMainFunctionPeriod</DEFINITION-REF>\r
+                  <VALUE>0.2</VALUE>\r
+                </FLOAT-VALUE>\r
+              </PARAMETER-VALUES>\r
+            </CONTAINER>\r
+            <CONTAINER UUID="8991f1dd-8416-4401-8f7b-4859c3e2a5b0">\r
+              <SHORT-NAME>EcuMConfiguration</SHORT-NAME>\r
+              <DEFINITION-REF DEST="PARAM-CONF-CONTAINER-DEF">/ArcCore/EcuM/EcuMConfiguration</DEFINITION-REF>\r
+              <PARAMETER-VALUES>\r
+                <FLOAT-VALUE>\r
+                  <DEFINITION-REF DEST="FLOAT-PARAM-DEF">/ArcCore/EcuM/EcuMConfiguration/EcuMNvramReadallTimeout</DEFINITION-REF>\r
+                  <VALUE>10.0</VALUE>\r
+                </FLOAT-VALUE>\r
+                <FLOAT-VALUE>\r
+                  <DEFINITION-REF DEST="FLOAT-PARAM-DEF">/ArcCore/EcuM/EcuMConfiguration/EcuMRunMinimumDuration</DEFINITION-REF>\r
+                  <VALUE>10.0</VALUE>\r
+                </FLOAT-VALUE>\r
+                <FLOAT-VALUE>\r
+                  <DEFINITION-REF DEST="FLOAT-PARAM-DEF">/ArcCore/EcuM/EcuMConfiguration/EcuMNvramWriteallTimeout</DEFINITION-REF>\r
+                  <VALUE>10.0</VALUE>\r
+                </FLOAT-VALUE>\r
+              </PARAMETER-VALUES>\r
+              <SUB-CONTAINERS>\r
+                <CONTAINER UUID="8ade5dca-9412-4f57-a6bb-4d9a4c21951b">\r
+                  <SHORT-NAME>User_1</SHORT-NAME>\r
+                  <DEFINITION-REF DEST="PARAM-CONF-CONTAINER-DEF">/ArcCore/EcuM/EcuMConfiguration/EcuMUserConfig</DEFINITION-REF>\r
+                </CONTAINER>\r
+              </SUB-CONTAINERS>\r
+            </CONTAINER>\r
+          </CONTAINERS>\r
+        </MODULE-CONFIGURATION>\r
+      </ELEMENTS>\r
+    </AR-PACKAGE>\r
+  </TOP-LEVEL-PACKAGES>\r
+</AUTOSAR>\r
+\r
index bcb802528ad06c57366de9ae7bebb4761c41b665..fdde1b885942adaf219fb9f4fc52e3ccba674f75 100644 (file)
@@ -17,7 +17,7 @@ MOD_AVAIL+=CANIF CANTP LINIF COM DCM DEM DET ECUM IOHWAB KERNEL PDUR WDGM RTE J1
 # Network management\r
 MOD_AVAIL+=COMM NM CANNM CANSM EA LINSM\r
 # Additional\r
-MOD_AVAIL+= RAMLOG \r
+MOD_AVAIL+= RAMLOG SCHM\r
 # CRC\r
 MOD_AVAIL+=CRC32 CRC16\r
 # Required modules\r
index 107a41493da9663ee3e28874291adc665e4ef59b..671e9af8eebea8d06cacd389b27ee039a0f9dc36 100644 (file)
@@ -88,6 +88,9 @@ typedef TaskStateType *TaskStateRefType;
 \r
 #define INVALID_OSAPPLICATION (-1)\r
 \r
+#define TASK(_task)            void _task( void )\r
+\r
+\r
 /* TODO, I have no idea what this should be*/\r
 #if (OS_USE_APPLICATIONS == STD_ON)\r
 typedef sint32 ApplicationType;\r
index a619af9c1dadc975b01ead5c6863650a62a71fa0..1bae0464cd28f7b19850349aa0164e509dc6c887 100644 (file)
  * -------------------------------- Arctic Core ------------------------------*/\r
 \r
 \r
+/* ----------------------------[information]----------------------------------*/\r
+/*\r
+ * Author: mahi\r
+ *\r
+ * Part of Release:\r
+ *   3.1.5\r
+ *\r
+ * Description:\r
+ *   Implements the SchM module\r
+ *\r
+ * Support:\r
+ *   General                             Have Support\r
+ *   -------------------------------------------\r
+ *   SCHM_DEV_ERROR_DETECT             N\r
+ *   SCHM_VERSION_INFO_API             N\r
+ *\r
+ *   General                             Have Support\r
+ *   -------------------------------------------\r
+ *   SCHM_POSITION_IN_TASK             N\r
+ *   SCHM_MAINFUNCTION_REF             N\r
+ *   SCHM_MAPPED_TO_TASK               N\r
+ *   .....\r
+ *\r
+ * Implementation Notes:\r
+ *   There are a lot of examples in SchM about scheduling and it\r
+ *   all seems very complicated. What is boils down to is that\r
+ *   the BSW MainFunctions have different requirements. Most modules\r
+ *   have only periodic needs for timeouts and other things. But there\r
+ *   are also module that needs extra iterations at certain points in time, to\r
+ *   be really efficient.\r
+ *\r
+ *\r
+ *   BSW Module Code:\r
+ *    SchM_Enter_NvM(EXCLUSIVE_AREA_0);\r
+ *    ..Do stuff...\r
+ *    SchM_Enter_NvM(EXCLUSIVE_AREA_0);\r
+ *\r
+ *   but today we have Irq_Save(state), Irq_Restore(state).\r
+ *   ArcCore Irq_Save/Irq_Restore is almost the same as SuspendAllInterrupts/ResumeAllInterrupts,\r
+ *   since they can both be nested and saves state. But the OSEK (Susp../Resume..) can't do it locally, it\r
+ *   assumes some kind of local FIFO, that is bad.\r
+ *\r
+ *\r
+ * BSW Modules with generated mainfunction period times. Checked Only 3.1.5\r
+ *\r
+ *          Specification                        Studio   Core=Generator\r
+ *  --------------------------------------------------------------------------------------\r
+ *  Adc     N/A *1\r
+ *  Can     CanMainFunctionReadPerdiod             No      No\r
+ *          CanMainFunctionWritePerdiod\r
+ *          ..\r
+ *  CanIf   Have No mainf                          N/A\r
+ *  CanNm   CanNmMainFunctionPeriod                Yes     Accessible in struct.. not as define\r
+ *  CanSm   Have mainf. but no period              Yes*2   Nothing is generated\r
+ *  CanTp   CanTpMainFunctionPeriod                Yes     CANTP_MAIN_FUNCTION_PERIOD_TIME_MS\r
+ *  CanTrcv Have mainf. but no period              N/A\r
+ *  Com     Have mainf. but no period              No*3\r
+ *  ComM    ComMMainFunctionPeriod                 Yes     Accessible in struct.. not as define\r
+ *  Dcm     Have MainF. DcmTaskTime                Yes     DCM_MAIN_FUNCTION_PERIOD_TIME_MS\r
+ *  Dem     Have MainF. DemTaskTime                                No\r
+ *  EcuM    Have MainF.EcuMMainFunctionPeriod      Yes     ECUM_MAIN_FUNCTION_PERIOD\r
+ *  Ea      Have MainF. ON_PRE_CONDITION (ie not cyclic)\r
+ *  Eep     Have MainF. VARIABLE_CYCLIC\r
+ *  Fee     Have MainF. ON_PRE_CONDITION\r
+ *  Fls     Have MainF. FIXED_CYCLIC\r
+ *  IoHwAb  Have no mainfunction\r
+ *  ..\r
+ *  Nm      Have MainF. FIXED_CYCLIC ,            No\r
+ *          NmCycletimeMainFunction\r
+ *  NvM     Have MainF. VARIABLE_CYCLIC                          No\r
+ *  PduR    Have no MainF.\r
+ *  Spi     Have MainF. FIXED_CYCLIC, no period\r
+ *  WdgM    Have MainF. WdgMTriggerCycle           *4\r
+ *\r
+ * *1 No MainFunction\r
+ * *2 What is it used for?\r
+ * *3 Com have lots of timing... it's related to what? (reads timer?)\r
+ * *4 Probably not.\r
+ *\r
+ * ----->>>>\r
+ *\r
+ * Conclusion:\r
+ * * Support in generator is extremely limited.\r
+ * * Support in specification is limited\r
+ * * Support in studio is limited\r
+ *\r
+ *  Write scheduling information directly in the SchM_<mod>.h files.\r
+ *  OR\r
+ *  Write scheduling information in SchM_cfg.h....better (keeps information in one place)\r
+ *\r
+ *     #if defined(USE_SCHM)\r
+ *     assert( SCHM_TIMER(x) == <period> )\r
+ *     #endif\r
+ *\r
+ *  It seems it's mandatory to include SchM_<mod>.h for each BSW module.\r
+ *  So,\r
+ *  - <mod>.c ALWAYS include SchM_<mod.h>\r
+ *  - SchM.c have condidional include on SchM_<mod>.h, e.g must define it's MainFunctions.\r
+ *\r
+ *\r
+ *\r
+ */\r
 \r
+#include "SchM.h"\r
+#include "SchM_cfg.h"\r
 \r
 \r
+#if defined(USE_MCU)\r
+#include "Mcu.h"\r
+#endif\r
+#if defined(USE_GPT)\r
+#include "Gpt.h"\r
+#endif\r
 \r
+#if defined(USE_CAN)\r
+#include "Can.h"\r
+#include "SchM_Can.h"\r
+#else\r
+#define        SCHM_MAINFUNCTION_CAN_WRITE()\r
+#define        SCHM_MAINFUNCTION_CAN_READ()\r
+#define        SCHM_MAINFUNCTION_CAN_BUSOFF()\r
+#define        SCHM_MAINFUNCTION_CAN_ERROR()\r
+#define        SCHM_MAINFUNCTION_CAN_WAKEUP()\r
+#endif\r
 \r
+#if defined(USE_CANIF)\r
+#include "CanIf.h"\r
+#include "SchM_CanIf.h"\r
+#endif\r
 \r
+#if defined(USE_PDUR)\r
+#include "PduR.h"\r
+#include "SchM_PduR.h"\r
+#else\r
+#define SCHM_MAINFUNCTION_PDUR()\r
+#endif\r
+\r
+#if defined(USE_COM)\r
+#include "Com.h"\r
+#include "SchM_Com.h"\r
+#else\r
+#define SCHM_MAINFUNCTION_COMRX()\r
+#define SCHM_MAINFUNCTION_COMTX()\r
+#endif\r
+\r
+#if defined(USE_CANTP)\r
+#include "CanTp.h"\r
+#include "SchM_CanTp.h"\r
+#else\r
+#define SCHM_MAINFUNCTION_CANTP()\r
+#endif\r
+\r
+#if defined(USE_J1939TP)\r
+#include "J1939Tp.h"\r
+#include "SchM_J1939TP.h"\r
+#else\r
+#define SCHM_MAINFUNCTION_J1939TP()\r
+#endif\r
+\r
+\r
+#if defined(USE_DCM)\r
+#include "Dcm.h"\r
+#include "SchM_Dcm.h"\r
+#else\r
+#define SCHM_MAINFUNCTION_DCM()\r
+#endif\r
+\r
+#if defined(USE_DEM)\r
+#include "Dem.h"\r
+#include "SchM_Dem.h"\r
+#else\r
+#define SCHM_MAINFUNCTION_DEM()\r
+#endif\r
+\r
+#if defined(USE_PWM)\r
+#include "Pwm.h"\r
+#include "SchM_Pwm.h"\r
+#else\r
+#define SCHM_MAINFUNCTION_PWM()\r
+#endif\r
+\r
+\r
+#if defined(USE_IOHWAB)\r
+#include "IoHwAb.h"\r
+#include "SchM_IoHwAb.h"\r
+#else\r
+#define SCHM_MAINFUNCTION_IOWHAB()\r
+#endif\r
+\r
+#if defined(USE_FLS)\r
+#include "Fls.h"\r
+#include "SchM_Fls.h"\r
+#else\r
+#define SCHM_MAINFUNCTION_FLS()\r
+#endif\r
+\r
+#if defined(USE_ECUM)\r
+#include "EcuM.h"\r
+#include "SchM_EcuM.h"\r
+#else\r
+#define SCHM_MAINFUNCTION_ECUM()\r
+#endif\r
+\r
+#if defined(USE_EEP)\r
+#include "Eep.h"\r
+#include "SchM_Fls.h"\r
+#else\r
+#define SCHM_MAINFUNCTION_EEP()\r
+#endif\r
+\r
+#if defined(USE_FEE)\r
+#include "Fee.h"\r
+#include "SchM_Fee.h"\r
+#else\r
+#define SCHM_MAINFUNCTION_FEE()\r
+#endif\r
+\r
+#if defined(USE_EA)\r
+#include "Ea.h"\r
+#include "SchM_Ea.h"\r
+#else\r
+#define SCHM_MAINFUNCTION_EA()\r
+#endif\r
+\r
+#if defined(USE_NVM)\r
+#include "NvM.h"\r
+#include "SchM_NvM.h"\r
+#else\r
+#define SCHM_MAINFUNCTION_NVM()\r
+#endif\r
+\r
+#if defined(USE_COMM)\r
+#include "ComM.h"\r
+#include "SchM_ComM.h"\r
+#else\r
+#define SCHM_MAINFUNCTION_COMM()\r
+#endif\r
+\r
+#if defined(USE_NM)\r
+#include "Nm.h"\r
+#include "SchM_Nm.h"\r
+#else\r
+#define SCHM_MAINFUNCTION_NM()\r
+#endif\r
+\r
+#if defined(USE_CANNM)\r
+#include "CanNm.h"\r
+#include "SchM_CanNm.h"\r
+#else\r
+#define SCHM_MAINFUNCTION_CANNM()\r
+#endif\r
+\r
+#if defined(USE_CANSM)\r
+#include "CanSM.h"\r
+#include "SchM_CanSM.h"\r
+#else\r
+#define SCHM_MAINFUNCTION_CANSM()\r
+#endif\r
+\r
+#if defined(USE_UDPNM)\r
+#include "UdpNm.h"\r
+#endif\r
+\r
+#if defined(USE_LINSM)\r
+#include "LinSM.h"\r
+#endif\r
+\r
+#if defined(USE_SPI)\r
+#include "Spi.h"\r
+#include "SchM_Spi.h"\r
+#else\r
+#define SCHM_MAINFUNCTION_SPI()\r
+#endif\r
+\r
+#if defined(USE_WDG)\r
+#include "Wdg.h"\r
+#endif\r
+\r
+#if defined(USE_WDGM)\r
+#include "WdgM.h"\r
+#include "SchM_WdgM.h"\r
+#else\r
+#define SCHM_MAINFUNCTION_WDMG()\r
+#endif\r
+\r
+SCHM_DECLARE(ECUM);\r
+SCHM_DECLARE(NVM);\r
+SCHM_DECLARE(FEE);\r
+SCHM_DECLARE(EA);\r
+SCHM_DECLARE(FLS);\r
 \r
-#include "SchM.h"\r
 \r
 \r
 void SchM_Init( void ) {\r
-       \r
+\r
 }\r
+\r
 void SchM_Deinit( void ) {\r
-       \r
+\r
 }\r
 \r
 void SchM_GetVersionInfo( Std_VersionInfoType *versionInfo ) {\r
-       \r
+\r
+}\r
+\r
+\r
+static void runMemory( void ) {\r
+       SCHM_MAINFUNCTION_NVM();\r
+       SCHM_MAINFUNCTION_EA();\r
+       SCHM_MAINFUNCTION_FEE();\r
+       SCHM_MAINFUNCTION_EEP();\r
+       SCHM_MAINFUNCTION_FLS();\r
+       SCHM_MAINFUNCTION_SPI();\r
 }\r
 \r
-/*  \r
- * Implement\r
+/**\r
+ * Startup task.\r
  */\r
-// Critical sections\r
-// void SchM_Enter_<ModulePrefix>( uint8 instance, uint8 exclusiveArea )\r
-// void SchM_Exit_<ModulePrefix>( uint8 instance, uint8 exclusiveArea )\r
-\r
-// Triggers\r
-// SchM_ReturnType SchM_ActMainFunction_<ModulePrefix>( uint8 instance, uint8 activationPoint );\r
-// SchM_ReturnType SchM_CancelMainFunction_<ModulePrefix>( uint8 instance, uint8 activationPoint );\r
-\r
-/* \r
- * Callable functions in the <ModulePrefix>\r
- */ \r
-// <ModulePrefix>_MainFunction_<name>()\r
-// <ModulePrefix>_MainFunction_<name>()\r
+TASK(SchM_Startup){\r
+\r
+       /* At this point EcuM ==  ECUM_STATE_STARTUP_ONE */\r
+\r
+       /* Schedule memory task more often that usaul so that EcuM_StartupTwo() may return quicker */\r
+       ActivateTask(TASK_ID_SchM_BswService);\r
+       /* Set events on TASK_ID_BswService_Mem */\r
+       SetRelAlarm(ALARM_ID_Alarm_BswService, 10, 2);\r
+\r
+       /*\r
+        * Call EcuM_StartupTwo that do:\r
+        * - Startup RTE,\r
+        * - Wait for Nvm to complete\r
+        * - Call EcuM_AL_DriverInitThree() to initiate Nvm dependent modules.\r
+        */\r
+       EcuM_StartupTwo();\r
+\r
+       /* Start to schedule BSW parts */\r
+       SetRelAlarm(ALARM_ID_Alarm_BswService, 10, 5);\r
+\r
+       EcuM_RequestRUN(ECUM_USER_User_1);\r
+\r
+       ActivateTask(TASK_ID_Application);\r
+\r
+       TerminateTask();\r
+\r
+}\r
+\r
+\r
+TASK(SchM_BswService) {\r
+       EcuM_StateType  state;\r
+\r
+       EcuM_GetState(&state);\r
+\r
+       switch( state ) {\r
+       case ECUM_STATE_STARTUP_ONE:\r
+               /* Nothing to schedule */\r
+               break;\r
+       case ECUM_STATE_STARTUP_TWO:\r
+               runMemory();\r
+               break;\r
+       default:\r
+               runMemory();\r
+\r
+               SCHM_MAINFUNCTION_ECUM();\r
+\r
+               SCHM_MAINFUNCTION_CAN_WRITE();\r
+               SCHM_MAINFUNCTION_CAN_READ();\r
+               SCHM_MAINFUNCTION_CAN_BUSOFF();\r
+               SCHM_MAINFUNCTION_CAN_ERROR();\r
+               SCHM_MAINFUNCTION_CAN_WAKEUP();\r
+\r
+               SCHM_MAINFUNCTION_PDUR();\r
+\r
+               SCHM_MAINFUNCTION_COMRX();\r
+               SCHM_MAINFUNCTION_COMTX();\r
+\r
+               SCHM_MAINFUNCTION_CANTP();\r
+               SCHM_MAINFUNCTION_J1939TP();\r
+               SCHM_MAINFUNCTION_DCM();\r
+               SCHM_MAINFUNCTION_DEM();\r
+               SCHM_MAINFUNCTION_PWM();\r
+               SCHM_MAINFUNCTION_IOWHAB();\r
+               SCHM_MAINFUNCTION_COMM();\r
+               SCHM_MAINFUNCTION_NM();\r
+               SCHM_MAINFUNCTION_CANNM();\r
+               SCHM_MAINFUNCTION_CANSM();\r
+               SCHM_MAINFUNCTION_WDMG();\r
+               break;\r
+       }\r
+\r
+       TerminateTask();\r
+}\r
+\r
+void SchM_MainFunction( void ) {\r
+\r
+}\r
 \r
 \r
 \r
index 24c5218e0026bdb1b5015b2e5dd5982da6564a88..f1062ba9448b730ac04b68b7f3fc0c4d40946145 100644 (file)
  * -------------------------------- Arctic Core ------------------------------*/\r
 \r
 \r
-\r
-\r
-\r
-\r
-\r
-\r
 #ifndef SCHM_H_\r
 #define SCHM_H_\r
 \r
@@ -29,4 +23,29 @@ void SchM_Init( void );
 void SchM_Deinit( void );\r
 void SchM_GetVersionInfo( Std_VersionInfoType *versionInfo );\r
 \r
+#define SchM_Enter( _module, _exc_area ) \\r
+    SchM_Enter_EcuM ## _module ##  _exc_area\r
+\r
+#define SchM_Exit( _module, _exc_area ) \\r
+    SchM_Enter_EcuM ## _module ##  _exc_area\r
+\r
+\r
+#define CONCAT_(_x,_y) _x##_y\r
+\r
+\r
+typedef struct  {\r
+       uint32 timer;\r
+} SchM_InfoType;\r
+\r
+#define SCHM_DECLARE(_mod)     \\r
+               SchM_InfoType SchM_Info_ ## _mod\r
+\r
+#define SCHM_MAINFUNCTION(_mod,_func) \\r
+               if( (++SchM_Info_ ## _mod.timer % SCHM_MAINFUNCTION_CYCLE_ ## _mod )== 0 ) { \\r
+                       _func; \\r
+                       SchM_Info_ ## _mod.timer = 0; \\r
+               }\r
+\r
+\r
+\r
 #endif /*SCHM_H_*/\r
similarity index 83%
rename from include/SchM_EcuM.h
rename to system/SchM/SchM_Can.h
index 67a73676573a8f99bb68ac689e5980b069ef45e8..4fda7b5d28e30b7acb6ad7a7443d37901fcc6315 100644 (file)
  * for more details.\r
  * -------------------------------- Arctic Core ------------------------------*/\r
 \r
+#ifndef SCHM_CAN_H_\r
+#define SCHM_CAN_H_\r
 \r
 \r
-/** @addtogroup SchM\r
- *  @{ */\r
 \r
-/** @file SchM_EcuM.h\r
- */\r
-\r
-\r
-#ifndef SCHM_ECUM_H_\r
-#define SCHM_ECUM_H_\r
-\r
-\r
-#endif /* SCHM_ECUM_H_ */\r
+#endif /* SCHM_CAN_H_ */\r
diff --git a/system/SchM/SchM_CanIf.h b/system/SchM/SchM_CanIf.h
new file mode 100644 (file)
index 0000000..d9aaa8e
--- /dev/null
@@ -0,0 +1,20 @@
+/* -------------------------------- Arctic Core ------------------------------\r
+ * Arctic Core - the open source AUTOSAR platform http://arccore.com\r
+ *\r
+ * Copyright (C) 2009  ArcCore AB <contact@arccore.com>\r
+ *\r
+ * This source code is free software; you can redistribute it and/or modify it\r
+ * under the terms of the GNU General Public License version 2 as published by the\r
+ * Free Software Foundation; See <http://www.gnu.org/licenses/old-licenses/gpl-2.0.txt>.\r
+ *\r
+ * This program is distributed in the hope that it will be useful, but\r
+ * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY\r
+ * or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License\r
+ * for more details.\r
+ * -------------------------------- Arctic Core ------------------------------*/\r
+\r
+#ifndef SCHM_CANIF_H_\r
+#define SCHM_CANIF_H_\r
+\r
+\r
+#endif /* SCHM_CANIF_H_ */\r
similarity index 89%
rename from include/SchM_CanTp.h
rename to system/SchM/SchM_CanTp.h
index b416e032136d7e7664ff781fff330e8db132d483..718aa84173c3a5364f16736bfdf67c889c2df126 100644 (file)
  * for more details.\r
  * -------------------------------- Arctic Core ------------------------------*/\r
 \r
-\r
-\r
-/** @addtogroup TBD\r
- *  @{ */\r
-\r
-/** @file schM_CanTp.h\r
- * TBD.\r
- */\r
-\r
-\r
 #ifndef SCHM_CANTP_H_\r
 #define SCHM_CANTP_H_\r
 \r
diff --git a/system/SchM/SchM_EcuM.h b/system/SchM/SchM_EcuM.h
new file mode 100644 (file)
index 0000000..0a8bc44
--- /dev/null
@@ -0,0 +1,47 @@
+/* -------------------------------- Arctic Core ------------------------------\r
+ * Arctic Core - the open source AUTOSAR platform http://arccore.com\r
+ *\r
+ * Copyright (C) 2009  ArcCore AB <contact@arccore.com>\r
+ *\r
+ * This source code is free software; you can redistribute it and/or modify it\r
+ * under the terms of the GNU General Public License version 2 as published by the\r
+ * Free Software Foundation; See <http://www.gnu.org/licenses/old-licenses/gpl-2.0.txt>.\r
+ *\r
+ * This program is distributed in the hope that it will be useful, but\r
+ * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY\r
+ * or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License\r
+ * for more details.\r
+ * -------------------------------- Arctic Core ------------------------------*/\r
+\r
+\r
+#ifndef SCHM_ECUM_H_\r
+#define SCHM_ECUM_H_\r
+\r
+/*\r
+ * "Prototypes"\r
+ */\r
+#define SchM_Enter_EcuM(_area) CONCAT_(SchM_Enter_EcuM_,_area)\r
+#define SchM_Exit_EcuM(_area) CONCAT_(SchM_Exit_EcuM_,_area)\r
+\r
+/*\r
+ * Exclusive Areas\r
+ */\r
+\r
+/* Lock interrupts */\r
+#define EXCLUSIVE_AREA_0       0\r
+\r
+#define SchM_Enter_EcuM_0 DisableAllInterrupts\r
+#define SchM_Exit_EcuM_0  ResumeAllInterrupts\r
+\r
+#define SCHM_MAINFUNCTION_ECUM()       SCHM_MAINFUNCTION(ECUM,EcuM_MainFunction())\r
+\r
+\r
+/* Skip "instance", req INTEGR058 */\r
+#if 0\r
+#define SchM_Enter_EcuM(uint8 exclusiveArea )\r
+#define SchM_Exit_EcuM(uint8 exclusiveArea )\r
+#define SchM_ActMainFunction_EcuM(uint8 exclusiveArea )\r
+#define SchM_CancelMainFunction_EcuM( uint8 exclusiveArea )\r
+#endif\r
+\r
+#endif /* SCHM_ECUM_H_ */\r
diff --git a/system/SchM/SchM_Fee.h b/system/SchM/SchM_Fee.h
new file mode 100644 (file)
index 0000000..21712ab
--- /dev/null
@@ -0,0 +1,23 @@
+/* -------------------------------- Arctic Core ------------------------------\r
+ * Arctic Core - the open source AUTOSAR platform http://arccore.com\r
+ *\r
+ * Copyright (C) 2009  ArcCore AB <contact@arccore.com>\r
+ *\r
+ * This source code is free software; you can redistribute it and/or modify it\r
+ * under the terms of the GNU General Public License version 2 as published by the\r
+ * Free Software Foundation; See <http://www.gnu.org/licenses/old-licenses/gpl-2.0.txt>.\r
+ *\r
+ * This program is distributed in the hope that it will be useful, but\r
+ * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY\r
+ * or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License\r
+ * for more details.\r
+ * -------------------------------- Arctic Core ------------------------------*/\r
+\r
+\r
+\r
+#ifndef SCHM_FEE_H_\r
+#define SCHM_FEE_H_\r
+\r
+#define SCHM_MAINFUNCTION_FEE()        SCHM_MAINFUNCTION(FEE,Fee_MainFunction())\r
+\r
+#endif /* SCHM_FEE_H_ */\r
diff --git a/system/SchM/SchM_Fls.h b/system/SchM/SchM_Fls.h
new file mode 100644 (file)
index 0000000..d125cf5
--- /dev/null
@@ -0,0 +1,23 @@
+/* -------------------------------- Arctic Core ------------------------------\r
+ * Arctic Core - the open source AUTOSAR platform http://arccore.com\r
+ *\r
+ * Copyright (C) 2009  ArcCore AB <contact@arccore.com>\r
+ *\r
+ * This source code is free software; you can redistribute it and/or modify it\r
+ * under the terms of the GNU General Public License version 2 as published by the\r
+ * Free Software Foundation; See <http://www.gnu.org/licenses/old-licenses/gpl-2.0.txt>.\r
+ *\r
+ * This program is distributed in the hope that it will be useful, but\r
+ * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY\r
+ * or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License\r
+ * for more details.\r
+ * -------------------------------- Arctic Core ------------------------------*/\r
+\r
+\r
+\r
+#ifndef SCHM_FLS_H_\r
+#define SCHM_FLS_H_\r
+\r
+#define SCHM_MAINFUNCTION_FLS()        SCHM_MAINFUNCTION(FLS,Fls_MainFunction())\r
+\r
+#endif /* SCHM_FLS_H_ */\r
diff --git a/system/SchM/SchM_NvM.h b/system/SchM/SchM_NvM.h
new file mode 100644 (file)
index 0000000..2a691ec
--- /dev/null
@@ -0,0 +1,22 @@
+/* -------------------------------- Arctic Core ------------------------------\r
+ * Arctic Core - the open source AUTOSAR platform http://arccore.com\r
+ *\r
+ * Copyright (C) 2009  ArcCore AB <contact@arccore.com>\r
+ *\r
+ * This source code is free software; you can redistribute it and/or modify it\r
+ * under the terms of the GNU General Public License version 2 as published by the\r
+ * Free Software Foundation; See <http://www.gnu.org/licenses/old-licenses/gpl-2.0.txt>.\r
+ *\r
+ * This program is distributed in the hope that it will be useful, but\r
+ * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY\r
+ * or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License\r
+ * for more details.\r
+ * -------------------------------- Arctic Core ------------------------------*/\r
+\r
+\r
+#ifndef SCHM_NVM_H_\r
+#define SCHM_NVM_H_\r
+\r
+#define SCHM_MAINFUNCTION_NVM()        SCHM_MAINFUNCTION(NVM,NvM_MainFunction())\r
+\r
+#endif /* SCHM_NVM_H_ */\r
index e1f212539d003c6ab586679f05255db0adb09f43..4c418b24b421480ac3798427da5ed646c1813ca8 100644 (file)
  * -------------------------------- Arctic Core ------------------------------*/\r
 \r
 \r
+#ifndef SCHM_CFG_H_\r
+#define SCHM_CFG_H_\r
 \r
 \r
+#define SCHM_MF_MEM_PERIOD             20\r
+\r
+/*\r
+ * Scheduling BSW\r
+ */\r
+#define SCHM_CYCLE_MAIN                                (5)\r
+\r
+#define SCHM_MAINFUNCTION_CYCLE_ADC     SCHM_CYCLE_MAIN\r
+#define SCHM_MAINFUNCTION_CYCLE_CAN     SCHM_CYCLE_MAIN\r
+#define SCHM_MAINFUNCTION_CYCLE_CANNM   SCHM_CYCLE_MAIN\r
+#define SCHM_MAINFUNCTION_CYCLE_CANSM   SCHM_CYCLE_MAIN\r
+#define SCHM_MAINFUNCTION_CYCLE_CANTP   SCHM_CYCLE_MAIN\r
+#define SCHM_MAINFUNCTION_CYCLE_CANTRCV SCHM_CYCLE_MAIN\r
+#define SCHM_MAINFUNCTION_CYCLE_COM     SCHM_CYCLE_MAIN\r
+#define SCHM_MAINFUNCTION_CYCLE_COMM    SCHM_CYCLE_MAIN\r
+#define SCHM_MAINFUNCTION_CYCLE_DCM     SCHM_CYCLE_MAIN\r
+#define SCHM_MAINFUNCTION_CYCLE_DEM     SCHM_CYCLE_MAIN\r
+#define SCHM_MAINFUNCTION_CYCLE_ECUM    SCHM_CYCLE_MAIN\r
+#define SCHM_MAINFUNCTION_CYCLE_EA      SCHM_CYCLE_MAIN\r
+#define SCHM_MAINFUNCTION_CYCLE_EEP     SCHM_CYCLE_MAIN\r
+//#define SCHM_MAINFUNCTION_CYCLE_FEE     SCHM_CYCLE_MAIN\r
+//#define SCHM_MAINFUNCTION_CYCLE_FLS     SCHM_CYCLE_MAIN\r
+#define SCHM_MAINFUNCTION_CYCLE_IOHWAB  SCHM_CYCLE_MAIN\r
+#define SCHM_MAINFUNCTION_CYCLE_NM      SCHM_CYCLE_MAIN\r
+//#define SCHM_MAINFUNCTION_CYCLE_NvM     SCHM_CYCLE_MAIN\r
+#define SCHM_MAINFUNCTION_CYCLE_PDUR    SCHM_CYCLE_MAIN\r
+#define SCHM_MAINFUNCTION_CYCLE_SPI     SCHM_CYCLE_MAIN\r
+#define SCHM_MAINFUNCTION_CYCLE_WDGM    SCHM_CYCLE_MAIN\r
+\r
+/*\r
+ * Schedule BSW memory\r
+ */\r
+\r
+#define SCHM_MAINFUNCTION_CYCLE_NVM     SCHM_CYCLE_MAIN\r
+#define SCHM_MAINFUNCTION_CYCLE_FEE     SCHM_CYCLE_MAIN\r
+#define SCHM_MAINFUNCTION_CYCLE_FLS     SCHM_CYCLE_MAIN\r
 \r
 \r
-\r
-\r
-#ifndef SCHM_CFG_H_\r
-#define SCHM_CFG_H_\r
-\r
 #endif /*SCHM_CFG_H_*/\r