IfxPort_regdef.h 38 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786
  1. /**
  2. * \file IfxPort_regdef.h
  3. * \brief
  4. * \copyright Copyright (c) 2014 Infineon Technologies AG. All rights reserved.
  5. *
  6. * Version: TC23XADAS_UM_V1.0P1.R0
  7. * Specification: tc23xadas_um_sfrs_MCSFR.xml (Revision: UM_V1.0p1)
  8. * MAY BE CHANGED BY USER [yes/no]: No
  9. *
  10. * IMPORTANT NOTICE
  11. *
  12. * Infineon Technologies AG (Infineon) is supplying this file for use
  13. * exclusively with Infineon's microcontroller products. This file can be freely
  14. * distributed within development tools that are supporting such microcontroller
  15. * products.
  16. *
  17. * THIS SOFTWARE IS PROVIDED "AS IS". NO WARRANTIES, WHETHER EXPRESS, IMPLIED
  18. * OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, IMPLIED WARRANTIES OF
  19. * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE APPLY TO THIS SOFTWARE.
  20. * INFINEON SHALL NOT, IN ANY CIRCUMSTANCES, BE LIABLE FOR SPECIAL, INCIDENTAL,
  21. * OR CONSEQUENTIAL DAMAGES, FOR ANY REASON WHATSOEVER.
  22. *
  23. * \defgroup IfxLld_Port Port
  24. * \ingroup IfxLld
  25. *
  26. * \defgroup IfxLld_Port_Bitfields Bitfields
  27. * \ingroup IfxLld_Port
  28. *
  29. * \defgroup IfxLld_Port_union Union
  30. * \ingroup IfxLld_Port
  31. *
  32. * \defgroup IfxLld_Port_struct Struct
  33. * \ingroup IfxLld_Port
  34. *
  35. */
  36. #ifndef IFXPORT_REGDEF_H
  37. #define IFXPORT_REGDEF_H 1
  38. /******************************************************************************/
  39. #include "Ifx_TypesReg.h"
  40. /******************************************************************************/
  41. /** \addtogroup IfxLld_Port_Bitfields
  42. * \{ */
  43. /** \\brief Port Access Enable Register 0 */
  44. typedef struct _Ifx_P_ACCEN0_Bits
  45. {
  46. unsigned int EN0:1; /**< \brief [0:0] Access Enable for Master TAG ID n (rw) */
  47. unsigned int EN1:1; /**< \brief [1:1] Access Enable for Master TAG ID n (rw) */
  48. unsigned int EN2:1; /**< \brief [2:2] Access Enable for Master TAG ID n (rw) */
  49. unsigned int EN3:1; /**< \brief [3:3] Access Enable for Master TAG ID n (rw) */
  50. unsigned int EN4:1; /**< \brief [4:4] Access Enable for Master TAG ID n (rw) */
  51. unsigned int EN5:1; /**< \brief [5:5] Access Enable for Master TAG ID n (rw) */
  52. unsigned int EN6:1; /**< \brief [6:6] Access Enable for Master TAG ID n (rw) */
  53. unsigned int EN7:1; /**< \brief [7:7] Access Enable for Master TAG ID n (rw) */
  54. unsigned int EN8:1; /**< \brief [8:8] Access Enable for Master TAG ID n (rw) */
  55. unsigned int EN9:1; /**< \brief [9:9] Access Enable for Master TAG ID n (rw) */
  56. unsigned int EN10:1; /**< \brief [10:10] Access Enable for Master TAG ID n (rw) */
  57. unsigned int EN11:1; /**< \brief [11:11] Access Enable for Master TAG ID n (rw) */
  58. unsigned int EN12:1; /**< \brief [12:12] Access Enable for Master TAG ID n (rw) */
  59. unsigned int EN13:1; /**< \brief [13:13] Access Enable for Master TAG ID n (rw) */
  60. unsigned int EN14:1; /**< \brief [14:14] Access Enable for Master TAG ID n (rw) */
  61. unsigned int EN15:1; /**< \brief [15:15] Access Enable for Master TAG ID n (rw) */
  62. unsigned int EN16:1; /**< \brief [16:16] Access Enable for Master TAG ID n (rw) */
  63. unsigned int EN17:1; /**< \brief [17:17] Access Enable for Master TAG ID n (rw) */
  64. unsigned int EN18:1; /**< \brief [18:18] Access Enable for Master TAG ID n (rw) */
  65. unsigned int EN19:1; /**< \brief [19:19] Access Enable for Master TAG ID n (rw) */
  66. unsigned int EN20:1; /**< \brief [20:20] Access Enable for Master TAG ID n (rw) */
  67. unsigned int EN21:1; /**< \brief [21:21] Access Enable for Master TAG ID n (rw) */
  68. unsigned int EN22:1; /**< \brief [22:22] Access Enable for Master TAG ID n (rw) */
  69. unsigned int EN23:1; /**< \brief [23:23] Access Enable for Master TAG ID n (rw) */
  70. unsigned int EN24:1; /**< \brief [24:24] Access Enable for Master TAG ID n (rw) */
  71. unsigned int EN25:1; /**< \brief [25:25] Access Enable for Master TAG ID n (rw) */
  72. unsigned int EN26:1; /**< \brief [26:26] Access Enable for Master TAG ID n (rw) */
  73. unsigned int EN27:1; /**< \brief [27:27] Access Enable for Master TAG ID n (rw) */
  74. unsigned int EN28:1; /**< \brief [28:28] Access Enable for Master TAG ID n (rw) */
  75. unsigned int EN29:1; /**< \brief [29:29] Access Enable for Master TAG ID n (rw) */
  76. unsigned int EN30:1; /**< \brief [30:30] Access Enable for Master TAG ID n (rw) */
  77. unsigned int EN31:1; /**< \brief [31:31] Access Enable for Master TAG ID n (rw) */
  78. } Ifx_P_ACCEN0_Bits;
  79. /** \\brief Port Access Enable Register 1 */
  80. typedef struct _Ifx_P_ACCEN1_Bits
  81. {
  82. unsigned int reserved_0:32; /**< \brief \internal Reserved */
  83. } Ifx_P_ACCEN1_Bits;
  84. /** \\brief Port Emergency Stop Register */
  85. typedef struct _Ifx_P_ESR_Bits
  86. {
  87. unsigned int EN0:1; /**< \brief [0:0] Emergency Stop Enable for Port n Pin 0 (rw) */
  88. unsigned int EN1:1; /**< \brief [1:1] Emergency Stop Enable for Port n Pin 1 (rw) */
  89. unsigned int EN2:1; /**< \brief [2:2] Emergency Stop Enable for Port n Pin 2 (rw) */
  90. unsigned int EN3:1; /**< \brief [3:3] Emergency Stop Enable for Port n Pin 3 (rw) */
  91. unsigned int EN4:1; /**< \brief [4:4] Emergency Stop Enable for Port n Pin 4 (rw) */
  92. unsigned int EN5:1; /**< \brief [5:5] Emergency Stop Enable for Port n Pin 5 (rw) */
  93. unsigned int EN6:1; /**< \brief [6:6] Emergency Stop Enable for Port n Pin 6 (rw) */
  94. unsigned int EN7:1; /**< \brief [7:7] Emergency Stop Enable for Port n Pin 7 (rw) */
  95. unsigned int EN8:1; /**< \brief [8:8] Emergency Stop Enable for Port n Pin 8 (rw) */
  96. unsigned int EN9:1; /**< \brief [9:9] Emergency Stop Enable for Port n Pin 9 (rw) */
  97. unsigned int EN10:1; /**< \brief [10:10] Emergency Stop Enable for Port n Pin 10 (rw) */
  98. unsigned int EN11:1; /**< \brief [11:11] Emergency Stop Enable for Port n Pin 11 (rw) */
  99. unsigned int EN12:1; /**< \brief [12:12] Emergency Stop Enable for Port n Pin 12 (rw) */
  100. unsigned int EN13:1; /**< \brief [13:13] Emergency Stop Enable for Port n Pin 13 (rw) */
  101. unsigned int EN14:1; /**< \brief [14:14] Emergency Stop Enable for Port n Pin 14 (rw) */
  102. unsigned int EN15:1; /**< \brief [15:15] Emergency Stop Enable for Port n Pin 15 (rw) */
  103. unsigned int reserved_16:16; /**< \brief \internal Reserved */
  104. } Ifx_P_ESR_Bits;
  105. /** \\brief Identification Register */
  106. typedef struct _Ifx_P_ID_Bits
  107. {
  108. unsigned int MODREV:8; /**< \brief [7:0] Module Revision Number (r) */
  109. unsigned int MODTYPE:8; /**< \brief [15:8] Module Type (r) */
  110. unsigned int MODNUMBER:16; /**< \brief [31:16] Module Number Value (r) */
  111. } Ifx_P_ID_Bits;
  112. /** \\brief Port Input Register */
  113. typedef struct _Ifx_P_IN_Bits
  114. {
  115. unsigned int P0:1; /**< \brief [0:0] Port n Input Bit 0 (rh) */
  116. unsigned int P1:1; /**< \brief [1:1] Port n Input Bit 1 (rh) */
  117. unsigned int P2:1; /**< \brief [2:2] Port n Input Bit 2 (rh) */
  118. unsigned int P3:1; /**< \brief [3:3] Port n Input Bit 3 (rh) */
  119. unsigned int P4:1; /**< \brief [4:4] Port n Input Bit 4 (rh) */
  120. unsigned int P5:1; /**< \brief [5:5] Port n Input Bit 5 (rh) */
  121. unsigned int P6:1; /**< \brief [6:6] Port n Input Bit 6 (rh) */
  122. unsigned int P7:1; /**< \brief [7:7] Port n Input Bit 7 (rh) */
  123. unsigned int P8:1; /**< \brief [8:8] Port n Input Bit 8 (rh) */
  124. unsigned int P9:1; /**< \brief [9:9] Port n Input Bit 9 (rh) */
  125. unsigned int P10:1; /**< \brief [10:10] Port n Input Bit 10 (rh) */
  126. unsigned int P11:1; /**< \brief [11:11] Port n Input Bit 11 (rh) */
  127. unsigned int P12:1; /**< \brief [12:12] Port n Input Bit 12 (rh) */
  128. unsigned int P13:1; /**< \brief [13:13] Port n Input Bit 13 (rh) */
  129. unsigned int P14:1; /**< \brief [14:14] Port n Input Bit 14 (rh) */
  130. unsigned int P15:1; /**< \brief [15:15] Port n Input Bit 15 (rh) */
  131. unsigned int reserved_16:16; /**< \brief \internal Reserved */
  132. } Ifx_P_IN_Bits;
  133. /** \\brief Port Input/Output Control Register 0 */
  134. typedef struct _Ifx_P_IOCR0_Bits
  135. {
  136. unsigned int reserved_0:3; /**< \brief \internal Reserved */
  137. unsigned int PC0:5; /**< \brief [7:3] (rw) */
  138. unsigned int reserved_8:3; /**< \brief \internal Reserved */
  139. unsigned int PC1:5; /**< \brief [15:11] (rw) */
  140. unsigned int reserved_16:3; /**< \brief \internal Reserved */
  141. unsigned int PC2:5; /**< \brief [23:19] (rw) */
  142. unsigned int reserved_24:3; /**< \brief \internal Reserved */
  143. unsigned int PC3:5; /**< \brief [31:27] (rw) */
  144. } Ifx_P_IOCR0_Bits;
  145. /** \\brief Port Input/Output Control Register 12 */
  146. typedef struct _Ifx_P_IOCR12_Bits
  147. {
  148. unsigned int reserved_0:3; /**< \brief \internal Reserved */
  149. unsigned int PC12:5; /**< \brief [7:3] (rw) */
  150. unsigned int reserved_8:3; /**< \brief \internal Reserved */
  151. unsigned int PC13:5; /**< \brief [15:11] (rw) */
  152. unsigned int reserved_16:3; /**< \brief \internal Reserved */
  153. unsigned int PC14:5; /**< \brief [23:19] (rw) */
  154. unsigned int reserved_24:3; /**< \brief \internal Reserved */
  155. unsigned int PC15:5; /**< \brief [31:27] (rw) */
  156. } Ifx_P_IOCR12_Bits;
  157. /** \\brief Port Input/Output Control Register 4 */
  158. typedef struct _Ifx_P_IOCR4_Bits
  159. {
  160. unsigned int reserved_0:3; /**< \brief \internal Reserved */
  161. unsigned int PC4:5; /**< \brief [7:3] (rw) */
  162. unsigned int reserved_8:3; /**< \brief \internal Reserved */
  163. unsigned int PC5:5; /**< \brief [15:11] (rw) */
  164. unsigned int reserved_16:3; /**< \brief \internal Reserved */
  165. unsigned int PC6:5; /**< \brief [23:19] (rw) */
  166. unsigned int reserved_24:3; /**< \brief \internal Reserved */
  167. unsigned int PC7:5; /**< \brief [31:27] (rw) */
  168. } Ifx_P_IOCR4_Bits;
  169. /** \\brief Port Input/Output Control Register 8 */
  170. typedef struct _Ifx_P_IOCR8_Bits
  171. {
  172. unsigned int reserved_0:3; /**< \brief \internal Reserved */
  173. unsigned int PC8:5; /**< \brief [7:3] (rw) */
  174. unsigned int reserved_8:3; /**< \brief \internal Reserved */
  175. unsigned int PC9:5; /**< \brief [15:11] (rw) */
  176. unsigned int reserved_16:3; /**< \brief \internal Reserved */
  177. unsigned int PC10:5; /**< \brief [23:19] (rw) */
  178. unsigned int reserved_24:3; /**< \brief \internal Reserved */
  179. unsigned int PC11:5; /**< \brief [31:27] (rw) */
  180. } Ifx_P_IOCR8_Bits;
  181. /** \\brief Port Output Modification Clear Register 0 */
  182. typedef struct _Ifx_P_OMCR0_Bits
  183. {
  184. unsigned int reserved_0:16; /**< \brief \internal Reserved */
  185. unsigned int PCL0:1; /**< \brief [16:16] Port n Clear Bit 0 (w) */
  186. unsigned int PCL1:1; /**< \brief [17:17] Port n Clear Bit 1 (w) */
  187. unsigned int PCL2:1; /**< \brief [18:18] Port n Clear Bit 2 (w) */
  188. unsigned int PCL3:1; /**< \brief [19:19] Port n Clear Bit 3 (w) */
  189. unsigned int reserved_20:12; /**< \brief \internal Reserved */
  190. } Ifx_P_OMCR0_Bits;
  191. /** \\brief Port Output Modification Clear Register 12 */
  192. typedef struct _Ifx_P_OMCR12_Bits
  193. {
  194. unsigned int reserved_0:28; /**< \brief \internal Reserved */
  195. unsigned int PCL12:1; /**< \brief [28:28] Port n Clear Bit 12 (w) */
  196. unsigned int PCL13:1; /**< \brief [29:29] Port n Clear Bit 13 (w) */
  197. unsigned int PCL14:1; /**< \brief [30:30] Port n Clear Bit 14 (w) */
  198. unsigned int PCL15:1; /**< \brief [31:31] Port n Clear Bit 15 (w) */
  199. } Ifx_P_OMCR12_Bits;
  200. /** \\brief Port Output Modification Clear Register 4 */
  201. typedef struct _Ifx_P_OMCR4_Bits
  202. {
  203. unsigned int reserved_0:20; /**< \brief \internal Reserved */
  204. unsigned int PCL4:1; /**< \brief [20:20] Port n Clear Bit 4 (w) */
  205. unsigned int PCL5:1; /**< \brief [21:21] Port n Clear Bit 5 (w) */
  206. unsigned int PCL6:1; /**< \brief [22:22] Port n Clear Bit 6 (w) */
  207. unsigned int PCL7:1; /**< \brief [23:23] Port n Clear Bit 7 (w) */
  208. unsigned int reserved_24:8; /**< \brief \internal Reserved */
  209. } Ifx_P_OMCR4_Bits;
  210. /** \\brief Port Output Modification Clear Register 8 */
  211. typedef struct _Ifx_P_OMCR8_Bits
  212. {
  213. unsigned int reserved_0:24; /**< \brief \internal Reserved */
  214. unsigned int PCL8:1; /**< \brief [24:24] Port n Clear Bit 8 (w) */
  215. unsigned int PCL9:1; /**< \brief [25:25] Port n Clear Bit 9 (w) */
  216. unsigned int PCL10:1; /**< \brief [26:26] Port n Clear Bit 10 (w) */
  217. unsigned int PCL11:1; /**< \brief [27:27] Port n Clear Bit 11 (w) */
  218. unsigned int reserved_28:4; /**< \brief \internal Reserved */
  219. } Ifx_P_OMCR8_Bits;
  220. /** \\brief Port Output Modification Clear Register */
  221. typedef struct _Ifx_P_OMCR_Bits
  222. {
  223. unsigned int reserved_0:16; /**< \brief \internal Reserved */
  224. unsigned int PCL0:1; /**< \brief [16:16] Port n Clear Bit 0 (w) */
  225. unsigned int PCL1:1; /**< \brief [17:17] Port n Clear Bit 1 (w) */
  226. unsigned int PCL2:1; /**< \brief [18:18] Port n Clear Bit 2 (w) */
  227. unsigned int PCL3:1; /**< \brief [19:19] Port n Clear Bit 3 (w) */
  228. unsigned int PCL4:1; /**< \brief [20:20] Port n Clear Bit 4 (w) */
  229. unsigned int PCL5:1; /**< \brief [21:21] Port n Clear Bit 5 (w) */
  230. unsigned int PCL6:1; /**< \brief [22:22] Port n Clear Bit 6 (w) */
  231. unsigned int PCL7:1; /**< \brief [23:23] Port n Clear Bit 7 (w) */
  232. unsigned int PCL8:1; /**< \brief [24:24] Port n Clear Bit 8 (w) */
  233. unsigned int PCL9:1; /**< \brief [25:25] Port n Clear Bit 9 (w) */
  234. unsigned int PCL10:1; /**< \brief [26:26] Port n Clear Bit 10 (w) */
  235. unsigned int PCL11:1; /**< \brief [27:27] Port n Clear Bit 11 (w) */
  236. unsigned int PCL12:1; /**< \brief [28:28] Port n Clear Bit 12 (w) */
  237. unsigned int PCL13:1; /**< \brief [29:29] Port n Clear Bit 13 (w) */
  238. unsigned int PCL14:1; /**< \brief [30:30] Port n Clear Bit 14 (w) */
  239. unsigned int PCL15:1; /**< \brief [31:31] Port n Clear Bit 15 (w) */
  240. } Ifx_P_OMCR_Bits;
  241. /** \\brief Port Output Modification Register */
  242. typedef struct _Ifx_P_OMR_Bits
  243. {
  244. unsigned int PS0:1; /**< \brief [0:0] (w) */
  245. unsigned int PS1:1; /**< \brief [1:1] (w) */
  246. unsigned int PS2:1; /**< \brief [2:2] (w) */
  247. unsigned int PS3:1; /**< \brief [3:3] (w) */
  248. unsigned int PS4:1; /**< \brief [4:4] (w) */
  249. unsigned int PS5:1; /**< \brief [5:5] (w) */
  250. unsigned int PS6:1; /**< \brief [6:6] (w) */
  251. unsigned int PS7:1; /**< \brief [7:7] (w) */
  252. unsigned int PS8:1; /**< \brief [8:8] (w) */
  253. unsigned int PS9:1; /**< \brief [9:9] (w) */
  254. unsigned int PS10:1; /**< \brief [10:10] (w) */
  255. unsigned int PS11:1; /**< \brief [11:11] (w) */
  256. unsigned int PS12:1; /**< \brief [12:12] (w) */
  257. unsigned int PS13:1; /**< \brief [13:13] (w) */
  258. unsigned int PS14:1; /**< \brief [14:14] (w) */
  259. unsigned int PS15:1; /**< \brief [15:15] (w) */
  260. unsigned int PCL0:1; /**< \brief [16:16] (w) */
  261. unsigned int PCL1:1; /**< \brief [17:17] (w) */
  262. unsigned int PCL2:1; /**< \brief [18:18] (w) */
  263. unsigned int PCL3:1; /**< \brief [19:19] (w) */
  264. unsigned int PCL4:1; /**< \brief [20:20] (w) */
  265. unsigned int PCL5:1; /**< \brief [21:21] (w) */
  266. unsigned int PCL6:1; /**< \brief [22:22] (w) */
  267. unsigned int PCL7:1; /**< \brief [23:23] (w) */
  268. unsigned int PCL8:1; /**< \brief [24:24] (w) */
  269. unsigned int PCL9:1; /**< \brief [25:25] (w) */
  270. unsigned int PCL10:1; /**< \brief [26:26] (w) */
  271. unsigned int PCL11:1; /**< \brief [27:27] (w) */
  272. unsigned int PCL12:1; /**< \brief [28:28] (w) */
  273. unsigned int PCL13:1; /**< \brief [29:29] (w) */
  274. unsigned int PCL14:1; /**< \brief [30:30] (w) */
  275. unsigned int PCL15:1; /**< \brief [31:31] (w) */
  276. } Ifx_P_OMR_Bits;
  277. /** \\brief Port Output Modification Set Register 0 */
  278. typedef struct _Ifx_P_OMSR0_Bits
  279. {
  280. unsigned int PS0:1; /**< \brief [0:0] Port n Set Bit 0 (w) */
  281. unsigned int PS1:1; /**< \brief [1:1] Port n Set Bit 1 (w) */
  282. unsigned int PS2:1; /**< \brief [2:2] Port n Set Bit 2 (w) */
  283. unsigned int PS3:1; /**< \brief [3:3] Port n Set Bit 3 (w) */
  284. unsigned int reserved_4:28; /**< \brief \internal Reserved */
  285. } Ifx_P_OMSR0_Bits;
  286. /** \\brief Port Output Modification Set Register 12 */
  287. typedef struct _Ifx_P_OMSR12_Bits
  288. {
  289. unsigned int reserved_0:12; /**< \brief \internal Reserved */
  290. unsigned int PS12:1; /**< \brief [12:12] Port n Set Bit 12 (w) */
  291. unsigned int PS13:1; /**< \brief [13:13] Port n Set Bit 13 (w) */
  292. unsigned int PS14:1; /**< \brief [14:14] Port n Set Bit 14 (w) */
  293. unsigned int PS15:1; /**< \brief [15:15] Port n Set Bit 15 (w) */
  294. unsigned int reserved_16:16; /**< \brief \internal Reserved */
  295. } Ifx_P_OMSR12_Bits;
  296. /** \\brief Port Output Modification Set Register 4 */
  297. typedef struct _Ifx_P_OMSR4_Bits
  298. {
  299. unsigned int reserved_0:4; /**< \brief \internal Reserved */
  300. unsigned int PS4:1; /**< \brief [4:4] Port n Set Bit 4 (w) */
  301. unsigned int PS5:1; /**< \brief [5:5] Port n Set Bit 5 (w) */
  302. unsigned int PS6:1; /**< \brief [6:6] Port n Set Bit 6 (w) */
  303. unsigned int PS7:1; /**< \brief [7:7] Port n Set Bit 7 (w) */
  304. unsigned int reserved_8:24; /**< \brief \internal Reserved */
  305. } Ifx_P_OMSR4_Bits;
  306. /** \\brief Port Output Modification Set Register 8 */
  307. typedef struct _Ifx_P_OMSR8_Bits
  308. {
  309. unsigned int reserved_0:8; /**< \brief \internal Reserved */
  310. unsigned int PS8:1; /**< \brief [8:8] Port n Set Bit 8 (w) */
  311. unsigned int PS9:1; /**< \brief [9:9] Port n Set Bit 9 (w) */
  312. unsigned int PS10:1; /**< \brief [10:10] Port n Set Bit 10 (w) */
  313. unsigned int PS11:1; /**< \brief [11:11] Port n Set Bit 11 (w) */
  314. unsigned int reserved_12:20; /**< \brief \internal Reserved */
  315. } Ifx_P_OMSR8_Bits;
  316. /** \\brief Port Output Modification Set Register */
  317. typedef struct _Ifx_P_OMSR_Bits
  318. {
  319. unsigned int PS0:1; /**< \brief [0:0] Port n Set Bit 0 (w) */
  320. unsigned int PS1:1; /**< \brief [1:1] Port n Set Bit 1 (w) */
  321. unsigned int PS2:1; /**< \brief [2:2] Port n Set Bit 2 (w) */
  322. unsigned int PS3:1; /**< \brief [3:3] Port n Set Bit 3 (w) */
  323. unsigned int PS4:1; /**< \brief [4:4] Port n Set Bit 4 (w) */
  324. unsigned int PS5:1; /**< \brief [5:5] Port n Set Bit 5 (w) */
  325. unsigned int PS6:1; /**< \brief [6:6] Port n Set Bit 6 (w) */
  326. unsigned int PS7:1; /**< \brief [7:7] Port n Set Bit 7 (w) */
  327. unsigned int PS8:1; /**< \brief [8:8] Port n Set Bit 8 (w) */
  328. unsigned int PS9:1; /**< \brief [9:9] Port n Set Bit 9 (w) */
  329. unsigned int PS10:1; /**< \brief [10:10] Port n Set Bit 10 (w) */
  330. unsigned int PS11:1; /**< \brief [11:11] Port n Set Bit 11 (w) */
  331. unsigned int PS12:1; /**< \brief [12:12] Port n Set Bit 12 (w) */
  332. unsigned int PS13:1; /**< \brief [13:13] Port n Set Bit 13 (w) */
  333. unsigned int PS14:1; /**< \brief [14:14] Port n Set Bit 14 (w) */
  334. unsigned int PS15:1; /**< \brief [15:15] Port n Set Bit 15 (w) */
  335. unsigned int reserved_16:16; /**< \brief \internal Reserved */
  336. } Ifx_P_OMSR_Bits;
  337. /** \\brief Port Output Register */
  338. typedef struct _Ifx_P_OUT_Bits
  339. {
  340. unsigned int P0:1; /**< \brief [0:0] (rwh) */
  341. unsigned int P1:1; /**< \brief [1:1] (rwh) */
  342. unsigned int P2:1; /**< \brief [2:2] (rwh) */
  343. unsigned int P3:1; /**< \brief [3:3] (rwh) */
  344. unsigned int P4:1; /**< \brief [4:4] (rwh) */
  345. unsigned int P5:1; /**< \brief [5:5] (rwh) */
  346. unsigned int P6:1; /**< \brief [6:6] (rwh) */
  347. unsigned int P7:1; /**< \brief [7:7] (rwh) */
  348. unsigned int P8:1; /**< \brief [8:8] (rwh) */
  349. unsigned int P9:1; /**< \brief [9:9] (rwh) */
  350. unsigned int P10:1; /**< \brief [10:10] (rwh) */
  351. unsigned int P11:1; /**< \brief [11:11] (rwh) */
  352. unsigned int P12:1; /**< \brief [12:12] (rwh) */
  353. unsigned int P13:1; /**< \brief [13:13] (rwh) */
  354. unsigned int P14:1; /**< \brief [14:14] (rwh) */
  355. unsigned int P15:1; /**< \brief [15:15] (rwh) */
  356. unsigned int reserved_16:16; /**< \brief \internal Reserved */
  357. } Ifx_P_OUT_Bits;
  358. /** \\brief Port Pin Controller Select Register */
  359. typedef struct _Ifx_P_PCSR_Bits
  360. {
  361. unsigned int reserved_0:1; /**< \brief \internal Reserved */
  362. unsigned int SEL1:1; /**< \brief [1:1] Pin Controller Select for Pin 1 (rw) */
  363. unsigned int SEL2:1; /**< \brief [2:2] Pin Controller Select for Pin 2 (rw) */
  364. unsigned int reserved_3:6; /**< \brief \internal Reserved */
  365. unsigned int SEL9:1; /**< \brief [9:9] Pin Controller Select for Pin 9 (rw) */
  366. unsigned int SEL10:1; /**< \brief [10:10] Pin Controller Select for Pin 10 (rw) */
  367. unsigned int reserved_11:20; /**< \brief \internal Reserved */
  368. unsigned int LCK:1; /**< \brief [31:31] Lock Status (rh) */
  369. } Ifx_P_PCSR_Bits;
  370. /** \\brief Port Pin Function Decision Control Register */
  371. typedef struct _Ifx_P_PDISC_Bits
  372. {
  373. unsigned int PDIS0:1; /**< \brief [0:0] Pin Function Decision Control for Pin 0 (rw) */
  374. unsigned int PDIS1:1; /**< \brief [1:1] Pin Function Decision Control for Pin 1 (rw) */
  375. unsigned int PDIS2:1; /**< \brief [2:2] Pin Function Decision Control for Pin 2 (rw) */
  376. unsigned int PDIS3:1; /**< \brief [3:3] Pin Function Decision Control for Pin 3 (rw) */
  377. unsigned int PDIS4:1; /**< \brief [4:4] Pin Function Decision Control for Pin 4 (rw) */
  378. unsigned int PDIS5:1; /**< \brief [5:5] Pin Function Decision Control for Pin 5 (rw) */
  379. unsigned int PDIS6:1; /**< \brief [6:6] Pin Function Decision Control for Pin 6 (rw) */
  380. unsigned int PDIS7:1; /**< \brief [7:7] Pin Function Decision Control for Pin 7 (rw) */
  381. unsigned int PDIS8:1; /**< \brief [8:8] Pin Function Decision Control for Pin 8 (rw) */
  382. unsigned int PDIS9:1; /**< \brief [9:9] Pin Function Decision Control for Pin 9 (rw) */
  383. unsigned int PDIS10:1; /**< \brief [10:10] Pin Function Decision Control for Pin 10 (rw) */
  384. unsigned int PDIS11:1; /**< \brief [11:11] Pin Function Decision Control for Pin 11 (rw) */
  385. unsigned int PDIS12:1; /**< \brief [12:12] Pin Function Decision Control for Pin 12 (rw) */
  386. unsigned int PDIS13:1; /**< \brief [13:13] Pin Function Decision Control for Pin 13 (rw) */
  387. unsigned int PDIS14:1; /**< \brief [14:14] Pin Function Decision Control for Pin 14 (rw) */
  388. unsigned int PDIS15:1; /**< \brief [15:15] Pin Function Decision Control for Pin 15 (rw) */
  389. unsigned int reserved_16:16; /**< \brief \internal Reserved */
  390. } Ifx_P_PDISC_Bits;
  391. /** \\brief Port Pad Driver Mode 0 Register */
  392. typedef struct _Ifx_P_PDR0_Bits
  393. {
  394. unsigned int PD0:3; /**< \brief [2:0] (rw) */
  395. unsigned int PL0:1; /**< \brief [3:3] (rw) */
  396. unsigned int PD1:3; /**< \brief [6:4] (rw) */
  397. unsigned int PL1:1; /**< \brief [7:7] (rw) */
  398. unsigned int PD2:3; /**< \brief [10:8] (rw) */
  399. unsigned int PL2:1; /**< \brief [11:11] (rw) */
  400. unsigned int PD3:3; /**< \brief [14:12] (rw) */
  401. unsigned int PL3:1; /**< \brief [15:15] (rw) */
  402. unsigned int PD4:3; /**< \brief [18:16] (rw) */
  403. unsigned int PL4:1; /**< \brief [19:19] (rw) */
  404. unsigned int PD5:3; /**< \brief [22:20] (rw) */
  405. unsigned int PL5:1; /**< \brief [23:23] (rw) */
  406. unsigned int PD6:3; /**< \brief [26:24] (rw) */
  407. unsigned int PL6:1; /**< \brief [27:27] (rw) */
  408. unsigned int PD7:3; /**< \brief [30:28] (rw) */
  409. unsigned int PL7:1; /**< \brief [31:31] (rw) */
  410. } Ifx_P_PDR0_Bits;
  411. /** \\brief Port Pad Driver Mode 1 Register */
  412. typedef struct _Ifx_P_PDR1_Bits
  413. {
  414. unsigned int PD8:3; /**< \brief [2:0] (rw) */
  415. unsigned int PL8:1; /**< \brief [3:3] (rw) */
  416. unsigned int PD9:3; /**< \brief [6:4] (rw) */
  417. unsigned int PL9:1; /**< \brief [7:7] (rw) */
  418. unsigned int PD10:3; /**< \brief [10:8] (rw) */
  419. unsigned int PL10:1; /**< \brief [11:11] (rw) */
  420. unsigned int PD11:3; /**< \brief [14:12] (rw) */
  421. unsigned int PL11:1; /**< \brief [15:15] (rw) */
  422. unsigned int PD12:3; /**< \brief [18:16] (rw) */
  423. unsigned int PL12:1; /**< \brief [19:19] (rw) */
  424. unsigned int PD13:3; /**< \brief [22:20] (rw) */
  425. unsigned int PL13:1; /**< \brief [23:23] (rw) */
  426. unsigned int PD14:3; /**< \brief [26:24] (rw) */
  427. unsigned int PL14:1; /**< \brief [27:27] (rw) */
  428. unsigned int PD15:3; /**< \brief [30:28] (rw) */
  429. unsigned int PL15:1; /**< \brief [31:31] (rw) */
  430. } Ifx_P_PDR1_Bits;
  431. /** \} */
  432. /******************************************************************************/
  433. /******************************************************************************/
  434. /** \addtogroup IfxLld_Port_union
  435. * \{ */
  436. /** \\brief Port Access Enable Register 0 */
  437. typedef union
  438. {
  439. /** \brief Unsigned access */
  440. unsigned int U;
  441. /** \brief Signed access */
  442. signed int I;
  443. /** \brief Bitfield access */
  444. Ifx_P_ACCEN0_Bits B;
  445. } Ifx_P_ACCEN0;
  446. /** \\brief Port Access Enable Register 1 */
  447. typedef union
  448. {
  449. /** \brief Unsigned access */
  450. unsigned int U;
  451. /** \brief Signed access */
  452. signed int I;
  453. /** \brief Bitfield access */
  454. Ifx_P_ACCEN1_Bits B;
  455. } Ifx_P_ACCEN1;
  456. /** \\brief Port Emergency Stop Register */
  457. typedef union
  458. {
  459. /** \brief Unsigned access */
  460. unsigned int U;
  461. /** \brief Signed access */
  462. signed int I;
  463. /** \brief Bitfield access */
  464. Ifx_P_ESR_Bits B;
  465. } Ifx_P_ESR;
  466. /** \\brief Identification Register */
  467. typedef union
  468. {
  469. /** \brief Unsigned access */
  470. unsigned int U;
  471. /** \brief Signed access */
  472. signed int I;
  473. /** \brief Bitfield access */
  474. Ifx_P_ID_Bits B;
  475. } Ifx_P_ID;
  476. /** \\brief Port Input Register */
  477. typedef union
  478. {
  479. /** \brief Unsigned access */
  480. unsigned int U;
  481. /** \brief Signed access */
  482. signed int I;
  483. /** \brief Bitfield access */
  484. Ifx_P_IN_Bits B;
  485. } Ifx_P_IN;
  486. /** \\brief Port Input/Output Control Register 0 */
  487. typedef union
  488. {
  489. /** \brief Unsigned access */
  490. unsigned int U;
  491. /** \brief Signed access */
  492. signed int I;
  493. /** \brief Bitfield access */
  494. Ifx_P_IOCR0_Bits B;
  495. } Ifx_P_IOCR0;
  496. /** \\brief Port Input/Output Control Register 12 */
  497. typedef union
  498. {
  499. /** \brief Unsigned access */
  500. unsigned int U;
  501. /** \brief Signed access */
  502. signed int I;
  503. /** \brief Bitfield access */
  504. Ifx_P_IOCR12_Bits B;
  505. } Ifx_P_IOCR12;
  506. /** \\brief Port Input/Output Control Register 4 */
  507. typedef union
  508. {
  509. /** \brief Unsigned access */
  510. unsigned int U;
  511. /** \brief Signed access */
  512. signed int I;
  513. /** \brief Bitfield access */
  514. Ifx_P_IOCR4_Bits B;
  515. } Ifx_P_IOCR4;
  516. /** \\brief Port Input/Output Control Register 8 */
  517. typedef union
  518. {
  519. /** \brief Unsigned access */
  520. unsigned int U;
  521. /** \brief Signed access */
  522. signed int I;
  523. /** \brief Bitfield access */
  524. Ifx_P_IOCR8_Bits B;
  525. } Ifx_P_IOCR8;
  526. /** \\brief Port Output Modification Clear Register */
  527. typedef union
  528. {
  529. /** \brief Unsigned access */
  530. unsigned int U;
  531. /** \brief Signed access */
  532. signed int I;
  533. /** \brief Bitfield access */
  534. Ifx_P_OMCR_Bits B;
  535. } Ifx_P_OMCR;
  536. /** \\brief Port Output Modification Clear Register 0 */
  537. typedef union
  538. {
  539. /** \brief Unsigned access */
  540. unsigned int U;
  541. /** \brief Signed access */
  542. signed int I;
  543. /** \brief Bitfield access */
  544. Ifx_P_OMCR0_Bits B;
  545. } Ifx_P_OMCR0;
  546. /** \\brief Port Output Modification Clear Register 12 */
  547. typedef union
  548. {
  549. /** \brief Unsigned access */
  550. unsigned int U;
  551. /** \brief Signed access */
  552. signed int I;
  553. /** \brief Bitfield access */
  554. Ifx_P_OMCR12_Bits B;
  555. } Ifx_P_OMCR12;
  556. /** \\brief Port Output Modification Clear Register 4 */
  557. typedef union
  558. {
  559. /** \brief Unsigned access */
  560. unsigned int U;
  561. /** \brief Signed access */
  562. signed int I;
  563. /** \brief Bitfield access */
  564. Ifx_P_OMCR4_Bits B;
  565. } Ifx_P_OMCR4;
  566. /** \\brief Port Output Modification Clear Register 8 */
  567. typedef union
  568. {
  569. /** \brief Unsigned access */
  570. unsigned int U;
  571. /** \brief Signed access */
  572. signed int I;
  573. /** \brief Bitfield access */
  574. Ifx_P_OMCR8_Bits B;
  575. } Ifx_P_OMCR8;
  576. /** \\brief Port Output Modification Register */
  577. typedef union
  578. {
  579. /** \brief Unsigned access */
  580. unsigned int U;
  581. /** \brief Signed access */
  582. signed int I;
  583. /** \brief Bitfield access */
  584. Ifx_P_OMR_Bits B;
  585. } Ifx_P_OMR;
  586. /** \\brief Port Output Modification Set Register */
  587. typedef union
  588. {
  589. /** \brief Unsigned access */
  590. unsigned int U;
  591. /** \brief Signed access */
  592. signed int I;
  593. /** \brief Bitfield access */
  594. Ifx_P_OMSR_Bits B;
  595. } Ifx_P_OMSR;
  596. /** \\brief Port Output Modification Set Register 0 */
  597. typedef union
  598. {
  599. /** \brief Unsigned access */
  600. unsigned int U;
  601. /** \brief Signed access */
  602. signed int I;
  603. /** \brief Bitfield access */
  604. Ifx_P_OMSR0_Bits B;
  605. } Ifx_P_OMSR0;
  606. /** \\brief Port Output Modification Set Register 12 */
  607. typedef union
  608. {
  609. /** \brief Unsigned access */
  610. unsigned int U;
  611. /** \brief Signed access */
  612. signed int I;
  613. /** \brief Bitfield access */
  614. Ifx_P_OMSR12_Bits B;
  615. } Ifx_P_OMSR12;
  616. /** \\brief Port Output Modification Set Register 4 */
  617. typedef union
  618. {
  619. /** \brief Unsigned access */
  620. unsigned int U;
  621. /** \brief Signed access */
  622. signed int I;
  623. /** \brief Bitfield access */
  624. Ifx_P_OMSR4_Bits B;
  625. } Ifx_P_OMSR4;
  626. /** \\brief Port Output Modification Set Register 8 */
  627. typedef union
  628. {
  629. /** \brief Unsigned access */
  630. unsigned int U;
  631. /** \brief Signed access */
  632. signed int I;
  633. /** \brief Bitfield access */
  634. Ifx_P_OMSR8_Bits B;
  635. } Ifx_P_OMSR8;
  636. /** \\brief Port Output Register */
  637. typedef union
  638. {
  639. /** \brief Unsigned access */
  640. unsigned int U;
  641. /** \brief Signed access */
  642. signed int I;
  643. /** \brief Bitfield access */
  644. Ifx_P_OUT_Bits B;
  645. } Ifx_P_OUT;
  646. /** \\brief Port Pin Controller Select Register */
  647. typedef union
  648. {
  649. /** \brief Unsigned access */
  650. unsigned int U;
  651. /** \brief Signed access */
  652. signed int I;
  653. /** \brief Bitfield access */
  654. Ifx_P_PCSR_Bits B;
  655. } Ifx_P_PCSR;
  656. /** \\brief Port Pin Function Decision Control Register */
  657. typedef union
  658. {
  659. /** \brief Unsigned access */
  660. unsigned int U;
  661. /** \brief Signed access */
  662. signed int I;
  663. /** \brief Bitfield access */
  664. Ifx_P_PDISC_Bits B;
  665. } Ifx_P_PDISC;
  666. /** \\brief Port Pad Driver Mode 0 Register */
  667. typedef union
  668. {
  669. /** \brief Unsigned access */
  670. unsigned int U;
  671. /** \brief Signed access */
  672. signed int I;
  673. /** \brief Bitfield access */
  674. Ifx_P_PDR0_Bits B;
  675. } Ifx_P_PDR0;
  676. /** \\brief Port Pad Driver Mode 1 Register */
  677. typedef union
  678. {
  679. /** \brief Unsigned access */
  680. unsigned int U;
  681. /** \brief Signed access */
  682. signed int I;
  683. /** \brief Bitfield access */
  684. Ifx_P_PDR1_Bits B;
  685. } Ifx_P_PDR1;
  686. /** \} */
  687. /******************************************************************************/
  688. /******************************************************************************/
  689. /** \addtogroup IfxLld_Port_struct
  690. * \{ */
  691. /******************************************************************************/
  692. /** \name Object L0
  693. * \{ */
  694. /** \\brief Port object */
  695. typedef volatile struct _Ifx_P
  696. {
  697. Ifx_P_OUT OUT; /**< \brief 0, Port Output Register */
  698. Ifx_P_OMR OMR; /**< \brief 4, Port Output Modification Register */
  699. Ifx_P_ID ID; /**< \brief 8, Identification Register */
  700. unsigned char reserved_C[4]; /**< \brief C, \internal Reserved */
  701. Ifx_P_IOCR0 IOCR0; /**< \brief 10, Port Input/Output Control Register 0 */
  702. Ifx_P_IOCR4 IOCR4; /**< \brief 14, Port Input/Output Control Register 4 */
  703. Ifx_P_IOCR8 IOCR8; /**< \brief 18, Port Input/Output Control Register 8 */
  704. Ifx_P_IOCR12 IOCR12; /**< \brief 1C, Port Input/Output Control Register 12 */
  705. unsigned char reserved_20[4]; /**< \brief 20, \internal Reserved */
  706. Ifx_P_IN IN; /**< \brief 24, Port Input Register */
  707. unsigned char reserved_28[24]; /**< \brief 28, \internal Reserved */
  708. Ifx_P_PDR0 PDR0; /**< \brief 40, Port Pad Driver Mode 0 Register */
  709. Ifx_P_PDR1 PDR1; /**< \brief 44, Port Pad Driver Mode 1 Register */
  710. unsigned char reserved_48[8]; /**< \brief 48, \internal Reserved */
  711. Ifx_P_ESR ESR; /**< \brief 50, Port Emergency Stop Register */
  712. unsigned char reserved_54[12]; /**< \brief 54, \internal Reserved */
  713. Ifx_P_PDISC PDISC; /**< \brief 60, Port Pin Function Decision Control Register */
  714. Ifx_P_PCSR PCSR; /**< \brief 64, Port Pin Controller Select Register */
  715. unsigned char reserved_64[8]; /**< \brief 68, \internal Reserved */
  716. Ifx_P_OMSR0 OMSR0; /**< \brief 70, Port Output Modification Set Register 0 */
  717. Ifx_P_OMSR4 OMSR4; /**< \brief 74, Port Output Modification Set Register 4 */
  718. Ifx_P_OMSR8 OMSR8; /**< \brief 78, Port Output Modification Set Register 8 */
  719. Ifx_P_OMSR12 OMSR12; /**< \brief 7C, Port Output Modification Set Register 12 */
  720. Ifx_P_OMCR0 OMCR0; /**< \brief 80, Port Output Modification Clear Register 0 */
  721. Ifx_P_OMCR4 OMCR4; /**< \brief 84, Port Output Modification Clear Register 4 */
  722. Ifx_P_OMCR8 OMCR8; /**< \brief 88, Port Output Modification Clear Register 8 */
  723. Ifx_P_OMCR12 OMCR12; /**< \brief 8C, Port Output Modification Clear Register 12 */
  724. Ifx_P_OMSR OMSR; /**< \brief 90, Port Output Modification Set Register */
  725. Ifx_P_OMCR OMCR; /**< \brief 94, Port Output Modification Clear Register */
  726. unsigned char reserved_98[96]; /**< \brief 98, \internal Reserved */
  727. Ifx_P_ACCEN1 ACCEN1; /**< \brief F8, Port Access Enable Register 1 */
  728. Ifx_P_ACCEN0 ACCEN0; /**< \brief FC, Port Access Enable Register 0 */
  729. } Ifx_P;
  730. /** \} */
  731. /******************************************************************************/
  732. /** \} */
  733. /******************************************************************************/
  734. /******************************************************************************/
  735. #endif /* IFXPORT_REGDEF_H */