F2837xD_piectrl.h 36 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707
  1. //###########################################################################
  2. //
  3. // FILE: F2837xD_piectrl.h
  4. //
  5. // TITLE: PIECTRL Register Definitions.
  6. //
  7. //###########################################################################
  8. // $TI Release: F2837xD Support Library v3.05.00.00 $
  9. // $Release Date: Tue Jun 26 03:15:23 CDT 2018 $
  10. // $Copyright:
  11. // Copyright (C) 2013-2018 Texas Instruments Incorporated - http://www.ti.com/
  12. //
  13. // Redistribution and use in source and binary forms, with or without
  14. // modification, are permitted provided that the following conditions
  15. // are met:
  16. //
  17. // Redistributions of source code must retain the above copyright
  18. // notice, this list of conditions and the following disclaimer.
  19. //
  20. // Redistributions in binary form must reproduce the above copyright
  21. // notice, this list of conditions and the following disclaimer in the
  22. // documentation and/or other materials provided with the
  23. // distribution.
  24. //
  25. // Neither the name of Texas Instruments Incorporated nor the names of
  26. // its contributors may be used to endorse or promote products derived
  27. // from this software without specific prior written permission.
  28. //
  29. // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  30. // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  31. // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
  32. // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
  33. // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
  34. // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
  35. // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
  36. // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
  37. // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  38. // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
  39. // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  40. // $
  41. //###########################################################################
  42. #ifndef __F2837xD_PIECTRL_H__
  43. #define __F2837xD_PIECTRL_H__
  44. #ifdef __cplusplus
  45. extern "C" {
  46. #endif
  47. //---------------------------------------------------------------------------
  48. // PIECTRL Individual Register Bit Definitions:
  49. struct PIECTRL_BITS { // bits description
  50. Uint16 ENPIE:1; // 0 PIE Enable
  51. Uint16 PIEVECT:15; // 15:1 PIE Vector Address
  52. };
  53. union PIECTRL_REG {
  54. Uint16 all;
  55. struct PIECTRL_BITS bit;
  56. };
  57. struct PIEACK_BITS { // bits description
  58. Uint16 ACK1:1; // 0 Acknowledge PIE Interrupt Group 1
  59. Uint16 ACK2:1; // 1 Acknowledge PIE Interrupt Group 2
  60. Uint16 ACK3:1; // 2 Acknowledge PIE Interrupt Group 3
  61. Uint16 ACK4:1; // 3 Acknowledge PIE Interrupt Group 4
  62. Uint16 ACK5:1; // 4 Acknowledge PIE Interrupt Group 5
  63. Uint16 ACK6:1; // 5 Acknowledge PIE Interrupt Group 6
  64. Uint16 ACK7:1; // 6 Acknowledge PIE Interrupt Group 7
  65. Uint16 ACK8:1; // 7 Acknowledge PIE Interrupt Group 8
  66. Uint16 ACK9:1; // 8 Acknowledge PIE Interrupt Group 9
  67. Uint16 ACK10:1; // 9 Acknowledge PIE Interrupt Group 10
  68. Uint16 ACK11:1; // 10 Acknowledge PIE Interrupt Group 11
  69. Uint16 ACK12:1; // 11 Acknowledge PIE Interrupt Group 12
  70. Uint16 rsvd1:4; // 15:12 Reserved
  71. };
  72. union PIEACK_REG {
  73. Uint16 all;
  74. struct PIEACK_BITS bit;
  75. };
  76. struct PIEIER1_BITS { // bits description
  77. Uint16 INTx1:1; // 0 Enable for Interrupt 1.1
  78. Uint16 INTx2:1; // 1 Enable for Interrupt 1.2
  79. Uint16 INTx3:1; // 2 Enable for Interrupt 1.3
  80. Uint16 INTx4:1; // 3 Enable for Interrupt 1.4
  81. Uint16 INTx5:1; // 4 Enable for Interrupt 1.5
  82. Uint16 INTx6:1; // 5 Enable for Interrupt 1.6
  83. Uint16 INTx7:1; // 6 Enable for Interrupt 1.7
  84. Uint16 INTx8:1; // 7 Enable for Interrupt 1.8
  85. Uint16 INTx9:1; // 8 Enable for Interrupt 1.9
  86. Uint16 INTx10:1; // 9 Enable for Interrupt 1.10
  87. Uint16 INTx11:1; // 10 Enable for Interrupt 1.11
  88. Uint16 INTx12:1; // 11 Enable for Interrupt 1.12
  89. Uint16 INTx13:1; // 12 Enable for Interrupt 1.13
  90. Uint16 INTx14:1; // 13 Enable for Interrupt 1.14
  91. Uint16 INTx15:1; // 14 Enable for Interrupt 1.15
  92. Uint16 INTx16:1; // 15 Enable for Interrupt 1.16
  93. };
  94. union PIEIER1_REG {
  95. Uint16 all;
  96. struct PIEIER1_BITS bit;
  97. };
  98. struct PIEIFR1_BITS { // bits description
  99. Uint16 INTx1:1; // 0 Flag for Interrupt 1.1
  100. Uint16 INTx2:1; // 1 Flag for Interrupt 1.2
  101. Uint16 INTx3:1; // 2 Flag for Interrupt 1.3
  102. Uint16 INTx4:1; // 3 Flag for Interrupt 1.4
  103. Uint16 INTx5:1; // 4 Flag for Interrupt 1.5
  104. Uint16 INTx6:1; // 5 Flag for Interrupt 1.6
  105. Uint16 INTx7:1; // 6 Flag for Interrupt 1.7
  106. Uint16 INTx8:1; // 7 Flag for Interrupt 1.8
  107. Uint16 INTx9:1; // 8 Flag for Interrupt 1.9
  108. Uint16 INTx10:1; // 9 Flag for Interrupt 1.10
  109. Uint16 INTx11:1; // 10 Flag for Interrupt 1.11
  110. Uint16 INTx12:1; // 11 Flag for Interrupt 1.12
  111. Uint16 INTx13:1; // 12 Flag for Interrupt 1.13
  112. Uint16 INTx14:1; // 13 Flag for Interrupt 1.14
  113. Uint16 INTx15:1; // 14 Flag for Interrupt 1.15
  114. Uint16 INTx16:1; // 15 Flag for Interrupt 1.16
  115. };
  116. union PIEIFR1_REG {
  117. Uint16 all;
  118. struct PIEIFR1_BITS bit;
  119. };
  120. struct PIEIER2_BITS { // bits description
  121. Uint16 INTx1:1; // 0 Enable for Interrupt 2.1
  122. Uint16 INTx2:1; // 1 Enable for Interrupt 2.2
  123. Uint16 INTx3:1; // 2 Enable for Interrupt 2.3
  124. Uint16 INTx4:1; // 3 Enable for Interrupt 2.4
  125. Uint16 INTx5:1; // 4 Enable for Interrupt 2.5
  126. Uint16 INTx6:1; // 5 Enable for Interrupt 2.6
  127. Uint16 INTx7:1; // 6 Enable for Interrupt 2.7
  128. Uint16 INTx8:1; // 7 Enable for Interrupt 2.8
  129. Uint16 INTx9:1; // 8 Enable for Interrupt 2.9
  130. Uint16 INTx10:1; // 9 Enable for Interrupt 2.10
  131. Uint16 INTx11:1; // 10 Enable for Interrupt 2.11
  132. Uint16 INTx12:1; // 11 Enable for Interrupt 2.12
  133. Uint16 INTx13:1; // 12 Enable for Interrupt 2.13
  134. Uint16 INTx14:1; // 13 Enable for Interrupt 2.14
  135. Uint16 INTx15:1; // 14 Enable for Interrupt 2.15
  136. Uint16 INTx16:1; // 15 Enable for Interrupt 2.16
  137. };
  138. union PIEIER2_REG {
  139. Uint16 all;
  140. struct PIEIER2_BITS bit;
  141. };
  142. struct PIEIFR2_BITS { // bits description
  143. Uint16 INTx1:1; // 0 Flag for Interrupt 2.1
  144. Uint16 INTx2:1; // 1 Flag for Interrupt 2.2
  145. Uint16 INTx3:1; // 2 Flag for Interrupt 2.3
  146. Uint16 INTx4:1; // 3 Flag for Interrupt 2.4
  147. Uint16 INTx5:1; // 4 Flag for Interrupt 2.5
  148. Uint16 INTx6:1; // 5 Flag for Interrupt 2.6
  149. Uint16 INTx7:1; // 6 Flag for Interrupt 2.7
  150. Uint16 INTx8:1; // 7 Flag for Interrupt 2.8
  151. Uint16 INTx9:1; // 8 Flag for Interrupt 2.9
  152. Uint16 INTx10:1; // 9 Flag for Interrupt 2.10
  153. Uint16 INTx11:1; // 10 Flag for Interrupt 2.11
  154. Uint16 INTx12:1; // 11 Flag for Interrupt 2.12
  155. Uint16 INTx13:1; // 12 Flag for Interrupt 2.13
  156. Uint16 INTx14:1; // 13 Flag for Interrupt 2.14
  157. Uint16 INTx15:1; // 14 Flag for Interrupt 2.15
  158. Uint16 INTx16:1; // 15 Flag for Interrupt 2.16
  159. };
  160. union PIEIFR2_REG {
  161. Uint16 all;
  162. struct PIEIFR2_BITS bit;
  163. };
  164. struct PIEIER3_BITS { // bits description
  165. Uint16 INTx1:1; // 0 Enable for Interrupt 3.1
  166. Uint16 INTx2:1; // 1 Enable for Interrupt 3.2
  167. Uint16 INTx3:1; // 2 Enable for Interrupt 3.3
  168. Uint16 INTx4:1; // 3 Enable for Interrupt 3.4
  169. Uint16 INTx5:1; // 4 Enable for Interrupt 3.5
  170. Uint16 INTx6:1; // 5 Enable for Interrupt 3.6
  171. Uint16 INTx7:1; // 6 Enable for Interrupt 3.7
  172. Uint16 INTx8:1; // 7 Enable for Interrupt 3.8
  173. Uint16 INTx9:1; // 8 Enable for Interrupt 3.9
  174. Uint16 INTx10:1; // 9 Enable for Interrupt 3.10
  175. Uint16 INTx11:1; // 10 Enable for Interrupt 3.11
  176. Uint16 INTx12:1; // 11 Enable for Interrupt 3.12
  177. Uint16 INTx13:1; // 12 Enable for Interrupt 3.13
  178. Uint16 INTx14:1; // 13 Enable for Interrupt 3.14
  179. Uint16 INTx15:1; // 14 Enable for Interrupt 3.15
  180. Uint16 INTx16:1; // 15 Enable for Interrupt 3.16
  181. };
  182. union PIEIER3_REG {
  183. Uint16 all;
  184. struct PIEIER3_BITS bit;
  185. };
  186. struct PIEIFR3_BITS { // bits description
  187. Uint16 INTx1:1; // 0 Flag for Interrupt 3.1
  188. Uint16 INTx2:1; // 1 Flag for Interrupt 3.2
  189. Uint16 INTx3:1; // 2 Flag for Interrupt 3.3
  190. Uint16 INTx4:1; // 3 Flag for Interrupt 3.4
  191. Uint16 INTx5:1; // 4 Flag for Interrupt 3.5
  192. Uint16 INTx6:1; // 5 Flag for Interrupt 3.6
  193. Uint16 INTx7:1; // 6 Flag for Interrupt 3.7
  194. Uint16 INTx8:1; // 7 Flag for Interrupt 3.8
  195. Uint16 INTx9:1; // 8 Flag for Interrupt 3.9
  196. Uint16 INTx10:1; // 9 Flag for Interrupt 3.10
  197. Uint16 INTx11:1; // 10 Flag for Interrupt 3.11
  198. Uint16 INTx12:1; // 11 Flag for Interrupt 3.12
  199. Uint16 INTx13:1; // 12 Flag for Interrupt 3.13
  200. Uint16 INTx14:1; // 13 Flag for Interrupt 3.14
  201. Uint16 INTx15:1; // 14 Flag for Interrupt 3.15
  202. Uint16 INTx16:1; // 15 Flag for Interrupt 3.16
  203. };
  204. union PIEIFR3_REG {
  205. Uint16 all;
  206. struct PIEIFR3_BITS bit;
  207. };
  208. struct PIEIER4_BITS { // bits description
  209. Uint16 INTx1:1; // 0 Enable for Interrupt 4.1
  210. Uint16 INTx2:1; // 1 Enable for Interrupt 4.2
  211. Uint16 INTx3:1; // 2 Enable for Interrupt 4.3
  212. Uint16 INTx4:1; // 3 Enable for Interrupt 4.4
  213. Uint16 INTx5:1; // 4 Enable for Interrupt 4.5
  214. Uint16 INTx6:1; // 5 Enable for Interrupt 4.6
  215. Uint16 INTx7:1; // 6 Enable for Interrupt 4.7
  216. Uint16 INTx8:1; // 7 Enable for Interrupt 4.8
  217. Uint16 INTx9:1; // 8 Enable for Interrupt 4.9
  218. Uint16 INTx10:1; // 9 Enable for Interrupt 4.10
  219. Uint16 INTx11:1; // 10 Enable for Interrupt 4.11
  220. Uint16 INTx12:1; // 11 Enable for Interrupt 4.12
  221. Uint16 INTx13:1; // 12 Enable for Interrupt 4.13
  222. Uint16 INTx14:1; // 13 Enable for Interrupt 4.14
  223. Uint16 INTx15:1; // 14 Enable for Interrupt 4.15
  224. Uint16 INTx16:1; // 15 Enable for Interrupt 4.16
  225. };
  226. union PIEIER4_REG {
  227. Uint16 all;
  228. struct PIEIER4_BITS bit;
  229. };
  230. struct PIEIFR4_BITS { // bits description
  231. Uint16 INTx1:1; // 0 Flag for Interrupt 4.1
  232. Uint16 INTx2:1; // 1 Flag for Interrupt 4.2
  233. Uint16 INTx3:1; // 2 Flag for Interrupt 4.3
  234. Uint16 INTx4:1; // 3 Flag for Interrupt 4.4
  235. Uint16 INTx5:1; // 4 Flag for Interrupt 4.5
  236. Uint16 INTx6:1; // 5 Flag for Interrupt 4.6
  237. Uint16 INTx7:1; // 6 Flag for Interrupt 4.7
  238. Uint16 INTx8:1; // 7 Flag for Interrupt 4.8
  239. Uint16 INTx9:1; // 8 Flag for Interrupt 4.9
  240. Uint16 INTx10:1; // 9 Flag for Interrupt 4.10
  241. Uint16 INTx11:1; // 10 Flag for Interrupt 4.11
  242. Uint16 INTx12:1; // 11 Flag for Interrupt 4.12
  243. Uint16 INTx13:1; // 12 Flag for Interrupt 4.13
  244. Uint16 INTx14:1; // 13 Flag for Interrupt 4.14
  245. Uint16 INTx15:1; // 14 Flag for Interrupt 4.15
  246. Uint16 INTx16:1; // 15 Flag for Interrupt 4.16
  247. };
  248. union PIEIFR4_REG {
  249. Uint16 all;
  250. struct PIEIFR4_BITS bit;
  251. };
  252. struct PIEIER5_BITS { // bits description
  253. Uint16 INTx1:1; // 0 Enable for Interrupt 5.1
  254. Uint16 INTx2:1; // 1 Enable for Interrupt 5.2
  255. Uint16 INTx3:1; // 2 Enable for Interrupt 5.3
  256. Uint16 INTx4:1; // 3 Enable for Interrupt 5.4
  257. Uint16 INTx5:1; // 4 Enable for Interrupt 5.5
  258. Uint16 INTx6:1; // 5 Enable for Interrupt 5.6
  259. Uint16 INTx7:1; // 6 Enable for Interrupt 5.7
  260. Uint16 INTx8:1; // 7 Enable for Interrupt 5.8
  261. Uint16 INTx9:1; // 8 Enable for Interrupt 5.9
  262. Uint16 INTx10:1; // 9 Enable for Interrupt 5.10
  263. Uint16 INTx11:1; // 10 Enable for Interrupt 5.11
  264. Uint16 INTx12:1; // 11 Enable for Interrupt 5.12
  265. Uint16 INTx13:1; // 12 Enable for Interrupt 5.13
  266. Uint16 INTx14:1; // 13 Enable for Interrupt 5.14
  267. Uint16 INTx15:1; // 14 Enable for Interrupt 5.15
  268. Uint16 INTx16:1; // 15 Enable for Interrupt 5.16
  269. };
  270. union PIEIER5_REG {
  271. Uint16 all;
  272. struct PIEIER5_BITS bit;
  273. };
  274. struct PIEIFR5_BITS { // bits description
  275. Uint16 INTx1:1; // 0 Flag for Interrupt 5.1
  276. Uint16 INTx2:1; // 1 Flag for Interrupt 5.2
  277. Uint16 INTx3:1; // 2 Flag for Interrupt 5.3
  278. Uint16 INTx4:1; // 3 Flag for Interrupt 5.4
  279. Uint16 INTx5:1; // 4 Flag for Interrupt 5.5
  280. Uint16 INTx6:1; // 5 Flag for Interrupt 5.6
  281. Uint16 INTx7:1; // 6 Flag for Interrupt 5.7
  282. Uint16 INTx8:1; // 7 Flag for Interrupt 5.8
  283. Uint16 INTx9:1; // 8 Flag for Interrupt 5.9
  284. Uint16 INTx10:1; // 9 Flag for Interrupt 5.10
  285. Uint16 INTx11:1; // 10 Flag for Interrupt 5.11
  286. Uint16 INTx12:1; // 11 Flag for Interrupt 5.12
  287. Uint16 INTx13:1; // 12 Flag for Interrupt 5.13
  288. Uint16 INTx14:1; // 13 Flag for Interrupt 5.14
  289. Uint16 INTx15:1; // 14 Flag for Interrupt 5.15
  290. Uint16 INTx16:1; // 15 Flag for Interrupt 5.16
  291. };
  292. union PIEIFR5_REG {
  293. Uint16 all;
  294. struct PIEIFR5_BITS bit;
  295. };
  296. struct PIEIER6_BITS { // bits description
  297. Uint16 INTx1:1; // 0 Enable for Interrupt 6.1
  298. Uint16 INTx2:1; // 1 Enable for Interrupt 6.2
  299. Uint16 INTx3:1; // 2 Enable for Interrupt 6.3
  300. Uint16 INTx4:1; // 3 Enable for Interrupt 6.4
  301. Uint16 INTx5:1; // 4 Enable for Interrupt 6.5
  302. Uint16 INTx6:1; // 5 Enable for Interrupt 6.6
  303. Uint16 INTx7:1; // 6 Enable for Interrupt 6.7
  304. Uint16 INTx8:1; // 7 Enable for Interrupt 6.8
  305. Uint16 INTx9:1; // 8 Enable for Interrupt 6.9
  306. Uint16 INTx10:1; // 9 Enable for Interrupt 6.10
  307. Uint16 INTx11:1; // 10 Enable for Interrupt 6.11
  308. Uint16 INTx12:1; // 11 Enable for Interrupt 6.12
  309. Uint16 INTx13:1; // 12 Enable for Interrupt 6.13
  310. Uint16 INTx14:1; // 13 Enable for Interrupt 6.14
  311. Uint16 INTx15:1; // 14 Enable for Interrupt 6.15
  312. Uint16 INTx16:1; // 15 Enable for Interrupt 6.16
  313. };
  314. union PIEIER6_REG {
  315. Uint16 all;
  316. struct PIEIER6_BITS bit;
  317. };
  318. struct PIEIFR6_BITS { // bits description
  319. Uint16 INTx1:1; // 0 Flag for Interrupt 6.1
  320. Uint16 INTx2:1; // 1 Flag for Interrupt 6.2
  321. Uint16 INTx3:1; // 2 Flag for Interrupt 6.3
  322. Uint16 INTx4:1; // 3 Flag for Interrupt 6.4
  323. Uint16 INTx5:1; // 4 Flag for Interrupt 6.5
  324. Uint16 INTx6:1; // 5 Flag for Interrupt 6.6
  325. Uint16 INTx7:1; // 6 Flag for Interrupt 6.7
  326. Uint16 INTx8:1; // 7 Flag for Interrupt 6.8
  327. Uint16 INTx9:1; // 8 Flag for Interrupt 6.9
  328. Uint16 INTx10:1; // 9 Flag for Interrupt 6.10
  329. Uint16 INTx11:1; // 10 Flag for Interrupt 6.11
  330. Uint16 INTx12:1; // 11 Flag for Interrupt 6.12
  331. Uint16 INTx13:1; // 12 Flag for Interrupt 6.13
  332. Uint16 INTx14:1; // 13 Flag for Interrupt 6.14
  333. Uint16 INTx15:1; // 14 Flag for Interrupt 6.15
  334. Uint16 INTx16:1; // 15 Flag for Interrupt 6.16
  335. };
  336. union PIEIFR6_REG {
  337. Uint16 all;
  338. struct PIEIFR6_BITS bit;
  339. };
  340. struct PIEIER7_BITS { // bits description
  341. Uint16 INTx1:1; // 0 Enable for Interrupt 7.1
  342. Uint16 INTx2:1; // 1 Enable for Interrupt 7.2
  343. Uint16 INTx3:1; // 2 Enable for Interrupt 7.3
  344. Uint16 INTx4:1; // 3 Enable for Interrupt 7.4
  345. Uint16 INTx5:1; // 4 Enable for Interrupt 7.5
  346. Uint16 INTx6:1; // 5 Enable for Interrupt 7.6
  347. Uint16 INTx7:1; // 6 Enable for Interrupt 7.7
  348. Uint16 INTx8:1; // 7 Enable for Interrupt 7.8
  349. Uint16 INTx9:1; // 8 Enable for Interrupt 7.9
  350. Uint16 INTx10:1; // 9 Enable for Interrupt 7.10
  351. Uint16 INTx11:1; // 10 Enable for Interrupt 7.11
  352. Uint16 INTx12:1; // 11 Enable for Interrupt 7.12
  353. Uint16 INTx13:1; // 12 Enable for Interrupt 7.13
  354. Uint16 INTx14:1; // 13 Enable for Interrupt 7.14
  355. Uint16 INTx15:1; // 14 Enable for Interrupt 7.15
  356. Uint16 INTx16:1; // 15 Enable for Interrupt 7.16
  357. };
  358. union PIEIER7_REG {
  359. Uint16 all;
  360. struct PIEIER7_BITS bit;
  361. };
  362. struct PIEIFR7_BITS { // bits description
  363. Uint16 INTx1:1; // 0 Flag for Interrupt 7.1
  364. Uint16 INTx2:1; // 1 Flag for Interrupt 7.2
  365. Uint16 INTx3:1; // 2 Flag for Interrupt 7.3
  366. Uint16 INTx4:1; // 3 Flag for Interrupt 7.4
  367. Uint16 INTx5:1; // 4 Flag for Interrupt 7.5
  368. Uint16 INTx6:1; // 5 Flag for Interrupt 7.6
  369. Uint16 INTx7:1; // 6 Flag for Interrupt 7.7
  370. Uint16 INTx8:1; // 7 Flag for Interrupt 7.8
  371. Uint16 INTx9:1; // 8 Flag for Interrupt 7.9
  372. Uint16 INTx10:1; // 9 Flag for Interrupt 7.10
  373. Uint16 INTx11:1; // 10 Flag for Interrupt 7.11
  374. Uint16 INTx12:1; // 11 Flag for Interrupt 7.12
  375. Uint16 INTx13:1; // 12 Flag for Interrupt 7.13
  376. Uint16 INTx14:1; // 13 Flag for Interrupt 7.14
  377. Uint16 INTx15:1; // 14 Flag for Interrupt 7.15
  378. Uint16 INTx16:1; // 15 Flag for Interrupt 7.16
  379. };
  380. union PIEIFR7_REG {
  381. Uint16 all;
  382. struct PIEIFR7_BITS bit;
  383. };
  384. struct PIEIER8_BITS { // bits description
  385. Uint16 INTx1:1; // 0 Enable for Interrupt 8.1
  386. Uint16 INTx2:1; // 1 Enable for Interrupt 8.2
  387. Uint16 INTx3:1; // 2 Enable for Interrupt 8.3
  388. Uint16 INTx4:1; // 3 Enable for Interrupt 8.4
  389. Uint16 INTx5:1; // 4 Enable for Interrupt 8.5
  390. Uint16 INTx6:1; // 5 Enable for Interrupt 8.6
  391. Uint16 INTx7:1; // 6 Enable for Interrupt 8.7
  392. Uint16 INTx8:1; // 7 Enable for Interrupt 8.8
  393. Uint16 INTx9:1; // 8 Enable for Interrupt 8.9
  394. Uint16 INTx10:1; // 9 Enable for Interrupt 8.10
  395. Uint16 INTx11:1; // 10 Enable for Interrupt 8.11
  396. Uint16 INTx12:1; // 11 Enable for Interrupt 8.12
  397. Uint16 INTx13:1; // 12 Enable for Interrupt 8.13
  398. Uint16 INTx14:1; // 13 Enable for Interrupt 8.14
  399. Uint16 INTx15:1; // 14 Enable for Interrupt 8.15
  400. Uint16 INTx16:1; // 15 Enable for Interrupt 8.16
  401. };
  402. union PIEIER8_REG {
  403. Uint16 all;
  404. struct PIEIER8_BITS bit;
  405. };
  406. struct PIEIFR8_BITS { // bits description
  407. Uint16 INTx1:1; // 0 Flag for Interrupt 8.1
  408. Uint16 INTx2:1; // 1 Flag for Interrupt 8.2
  409. Uint16 INTx3:1; // 2 Flag for Interrupt 8.3
  410. Uint16 INTx4:1; // 3 Flag for Interrupt 8.4
  411. Uint16 INTx5:1; // 4 Flag for Interrupt 8.5
  412. Uint16 INTx6:1; // 5 Flag for Interrupt 8.6
  413. Uint16 INTx7:1; // 6 Flag for Interrupt 8.7
  414. Uint16 INTx8:1; // 7 Flag for Interrupt 8.8
  415. Uint16 INTx9:1; // 8 Flag for Interrupt 8.9
  416. Uint16 INTx10:1; // 9 Flag for Interrupt 8.10
  417. Uint16 INTx11:1; // 10 Flag for Interrupt 8.11
  418. Uint16 INTx12:1; // 11 Flag for Interrupt 8.12
  419. Uint16 INTx13:1; // 12 Flag for Interrupt 8.13
  420. Uint16 INTx14:1; // 13 Flag for Interrupt 8.14
  421. Uint16 INTx15:1; // 14 Flag for Interrupt 8.15
  422. Uint16 INTx16:1; // 15 Flag for Interrupt 8.16
  423. };
  424. union PIEIFR8_REG {
  425. Uint16 all;
  426. struct PIEIFR8_BITS bit;
  427. };
  428. struct PIEIER9_BITS { // bits description
  429. Uint16 INTx1:1; // 0 Enable for Interrupt 9.1
  430. Uint16 INTx2:1; // 1 Enable for Interrupt 9.2
  431. Uint16 INTx3:1; // 2 Enable for Interrupt 9.3
  432. Uint16 INTx4:1; // 3 Enable for Interrupt 9.4
  433. Uint16 INTx5:1; // 4 Enable for Interrupt 9.5
  434. Uint16 INTx6:1; // 5 Enable for Interrupt 9.6
  435. Uint16 INTx7:1; // 6 Enable for Interrupt 9.7
  436. Uint16 INTx8:1; // 7 Enable for Interrupt 9.8
  437. Uint16 INTx9:1; // 8 Enable for Interrupt 9.9
  438. Uint16 INTx10:1; // 9 Enable for Interrupt 9.10
  439. Uint16 INTx11:1; // 10 Enable for Interrupt 9.11
  440. Uint16 INTx12:1; // 11 Enable for Interrupt 9.12
  441. Uint16 INTx13:1; // 12 Enable for Interrupt 9.13
  442. Uint16 INTx14:1; // 13 Enable for Interrupt 9.14
  443. Uint16 INTx15:1; // 14 Enable for Interrupt 9.15
  444. Uint16 INTx16:1; // 15 Enable for Interrupt 9.16
  445. };
  446. union PIEIER9_REG {
  447. Uint16 all;
  448. struct PIEIER9_BITS bit;
  449. };
  450. struct PIEIFR9_BITS { // bits description
  451. Uint16 INTx1:1; // 0 Flag for Interrupt 9.1
  452. Uint16 INTx2:1; // 1 Flag for Interrupt 9.2
  453. Uint16 INTx3:1; // 2 Flag for Interrupt 9.3
  454. Uint16 INTx4:1; // 3 Flag for Interrupt 9.4
  455. Uint16 INTx5:1; // 4 Flag for Interrupt 9.5
  456. Uint16 INTx6:1; // 5 Flag for Interrupt 9.6
  457. Uint16 INTx7:1; // 6 Flag for Interrupt 9.7
  458. Uint16 INTx8:1; // 7 Flag for Interrupt 9.8
  459. Uint16 INTx9:1; // 8 Flag for Interrupt 9.9
  460. Uint16 INTx10:1; // 9 Flag for Interrupt 9.10
  461. Uint16 INTx11:1; // 10 Flag for Interrupt 9.11
  462. Uint16 INTx12:1; // 11 Flag for Interrupt 9.12
  463. Uint16 INTx13:1; // 12 Flag for Interrupt 9.13
  464. Uint16 INTx14:1; // 13 Flag for Interrupt 9.14
  465. Uint16 INTx15:1; // 14 Flag for Interrupt 9.15
  466. Uint16 INTx16:1; // 15 Flag for Interrupt 9.16
  467. };
  468. union PIEIFR9_REG {
  469. Uint16 all;
  470. struct PIEIFR9_BITS bit;
  471. };
  472. struct PIEIER10_BITS { // bits description
  473. Uint16 INTx1:1; // 0 Enable for Interrupt 10.1
  474. Uint16 INTx2:1; // 1 Enable for Interrupt 10.2
  475. Uint16 INTx3:1; // 2 Enable for Interrupt 10.3
  476. Uint16 INTx4:1; // 3 Enable for Interrupt 10.4
  477. Uint16 INTx5:1; // 4 Enable for Interrupt 10.5
  478. Uint16 INTx6:1; // 5 Enable for Interrupt 10.6
  479. Uint16 INTx7:1; // 6 Enable for Interrupt 10.7
  480. Uint16 INTx8:1; // 7 Enable for Interrupt 10.8
  481. Uint16 INTx9:1; // 8 Enable for Interrupt 10.9
  482. Uint16 INTx10:1; // 9 Enable for Interrupt 10.10
  483. Uint16 INTx11:1; // 10 Enable for Interrupt 10.11
  484. Uint16 INTx12:1; // 11 Enable for Interrupt 10.12
  485. Uint16 INTx13:1; // 12 Enable for Interrupt 10.13
  486. Uint16 INTx14:1; // 13 Enable for Interrupt 10.14
  487. Uint16 INTx15:1; // 14 Enable for Interrupt 10.15
  488. Uint16 INTx16:1; // 15 Enable for Interrupt 10.16
  489. };
  490. union PIEIER10_REG {
  491. Uint16 all;
  492. struct PIEIER10_BITS bit;
  493. };
  494. struct PIEIFR10_BITS { // bits description
  495. Uint16 INTx1:1; // 0 Flag for Interrupt 10.1
  496. Uint16 INTx2:1; // 1 Flag for Interrupt 10.2
  497. Uint16 INTx3:1; // 2 Flag for Interrupt 10.3
  498. Uint16 INTx4:1; // 3 Flag for Interrupt 10.4
  499. Uint16 INTx5:1; // 4 Flag for Interrupt 10.5
  500. Uint16 INTx6:1; // 5 Flag for Interrupt 10.6
  501. Uint16 INTx7:1; // 6 Flag for Interrupt 10.7
  502. Uint16 INTx8:1; // 7 Flag for Interrupt 10.8
  503. Uint16 INTx9:1; // 8 Flag for Interrupt 10.9
  504. Uint16 INTx10:1; // 9 Flag for Interrupt 10.10
  505. Uint16 INTx11:1; // 10 Flag for Interrupt 10.11
  506. Uint16 INTx12:1; // 11 Flag for Interrupt 10.12
  507. Uint16 INTx13:1; // 12 Flag for Interrupt 10.13
  508. Uint16 INTx14:1; // 13 Flag for Interrupt 10.14
  509. Uint16 INTx15:1; // 14 Flag for Interrupt 10.15
  510. Uint16 INTx16:1; // 15 Flag for Interrupt 10.16
  511. };
  512. union PIEIFR10_REG {
  513. Uint16 all;
  514. struct PIEIFR10_BITS bit;
  515. };
  516. struct PIEIER11_BITS { // bits description
  517. Uint16 INTx1:1; // 0 Enable for Interrupt 11.1
  518. Uint16 INTx2:1; // 1 Enable for Interrupt 11.2
  519. Uint16 INTx3:1; // 2 Enable for Interrupt 11.3
  520. Uint16 INTx4:1; // 3 Enable for Interrupt 11.4
  521. Uint16 INTx5:1; // 4 Enable for Interrupt 11.5
  522. Uint16 INTx6:1; // 5 Enable for Interrupt 11.6
  523. Uint16 INTx7:1; // 6 Enable for Interrupt 11.7
  524. Uint16 INTx8:1; // 7 Enable for Interrupt 11.8
  525. Uint16 INTx9:1; // 8 Enable for Interrupt 11.9
  526. Uint16 INTx10:1; // 9 Enable for Interrupt 11.10
  527. Uint16 INTx11:1; // 10 Enable for Interrupt 11.11
  528. Uint16 INTx12:1; // 11 Enable for Interrupt 11.12
  529. Uint16 INTx13:1; // 12 Enable for Interrupt 11.13
  530. Uint16 INTx14:1; // 13 Enable for Interrupt 11.14
  531. Uint16 INTx15:1; // 14 Enable for Interrupt 11.15
  532. Uint16 INTx16:1; // 15 Enable for Interrupt 11.16
  533. };
  534. union PIEIER11_REG {
  535. Uint16 all;
  536. struct PIEIER11_BITS bit;
  537. };
  538. struct PIEIFR11_BITS { // bits description
  539. Uint16 INTx1:1; // 0 Flag for Interrupt 11.1
  540. Uint16 INTx2:1; // 1 Flag for Interrupt 11.2
  541. Uint16 INTx3:1; // 2 Flag for Interrupt 11.3
  542. Uint16 INTx4:1; // 3 Flag for Interrupt 11.4
  543. Uint16 INTx5:1; // 4 Flag for Interrupt 11.5
  544. Uint16 INTx6:1; // 5 Flag for Interrupt 11.6
  545. Uint16 INTx7:1; // 6 Flag for Interrupt 11.7
  546. Uint16 INTx8:1; // 7 Flag for Interrupt 11.8
  547. Uint16 INTx9:1; // 8 Flag for Interrupt 11.9
  548. Uint16 INTx10:1; // 9 Flag for Interrupt 11.10
  549. Uint16 INTx11:1; // 10 Flag for Interrupt 11.11
  550. Uint16 INTx12:1; // 11 Flag for Interrupt 11.12
  551. Uint16 INTx13:1; // 12 Flag for Interrupt 11.13
  552. Uint16 INTx14:1; // 13 Flag for Interrupt 11.14
  553. Uint16 INTx15:1; // 14 Flag for Interrupt 11.15
  554. Uint16 INTx16:1; // 15 Flag for Interrupt 11.16
  555. };
  556. union PIEIFR11_REG {
  557. Uint16 all;
  558. struct PIEIFR11_BITS bit;
  559. };
  560. struct PIEIER12_BITS { // bits description
  561. Uint16 INTx1:1; // 0 Enable for Interrupt 12.1
  562. Uint16 INTx2:1; // 1 Enable for Interrupt 12.2
  563. Uint16 INTx3:1; // 2 Enable for Interrupt 12.3
  564. Uint16 INTx4:1; // 3 Enable for Interrupt 12.4
  565. Uint16 INTx5:1; // 4 Enable for Interrupt 12.5
  566. Uint16 INTx6:1; // 5 Enable for Interrupt 12.6
  567. Uint16 INTx7:1; // 6 Enable for Interrupt 12.7
  568. Uint16 INTx8:1; // 7 Enable for Interrupt 12.8
  569. Uint16 INTx9:1; // 8 Enable for Interrupt 12.9
  570. Uint16 INTx10:1; // 9 Enable for Interrupt 12.10
  571. Uint16 INTx11:1; // 10 Enable for Interrupt 12.11
  572. Uint16 INTx12:1; // 11 Enable for Interrupt 12.12
  573. Uint16 INTx13:1; // 12 Enable for Interrupt 12.13
  574. Uint16 INTx14:1; // 13 Enable for Interrupt 12.14
  575. Uint16 INTx15:1; // 14 Enable for Interrupt 12.15
  576. Uint16 INTx16:1; // 15 Enable for Interrupt 12.16
  577. };
  578. union PIEIER12_REG {
  579. Uint16 all;
  580. struct PIEIER12_BITS bit;
  581. };
  582. struct PIEIFR12_BITS { // bits description
  583. Uint16 INTx1:1; // 0 Flag for Interrupt 12.1
  584. Uint16 INTx2:1; // 1 Flag for Interrupt 12.2
  585. Uint16 INTx3:1; // 2 Flag for Interrupt 12.3
  586. Uint16 INTx4:1; // 3 Flag for Interrupt 12.4
  587. Uint16 INTx5:1; // 4 Flag for Interrupt 12.5
  588. Uint16 INTx6:1; // 5 Flag for Interrupt 12.6
  589. Uint16 INTx7:1; // 6 Flag for Interrupt 12.7
  590. Uint16 INTx8:1; // 7 Flag for Interrupt 12.8
  591. Uint16 INTx9:1; // 8 Flag for Interrupt 12.9
  592. Uint16 INTx10:1; // 9 Flag for Interrupt 12.10
  593. Uint16 INTx11:1; // 10 Flag for Interrupt 12.11
  594. Uint16 INTx12:1; // 11 Flag for Interrupt 12.12
  595. Uint16 INTx13:1; // 12 Flag for Interrupt 12.13
  596. Uint16 INTx14:1; // 13 Flag for Interrupt 12.14
  597. Uint16 INTx15:1; // 14 Flag for Interrupt 12.15
  598. Uint16 INTx16:1; // 15 Flag for Interrupt 12.16
  599. };
  600. union PIEIFR12_REG {
  601. Uint16 all;
  602. struct PIEIFR12_BITS bit;
  603. };
  604. struct PIE_CTRL_REGS {
  605. union PIECTRL_REG PIECTRL; // ePIE Control Register
  606. union PIEACK_REG PIEACK; // Interrupt Acknowledge Register
  607. union PIEIER1_REG PIEIER1; // Interrupt Group 1 Enable Register
  608. union PIEIFR1_REG PIEIFR1; // Interrupt Group 1 Flag Register
  609. union PIEIER2_REG PIEIER2; // Interrupt Group 2 Enable Register
  610. union PIEIFR2_REG PIEIFR2; // Interrupt Group 2 Flag Register
  611. union PIEIER3_REG PIEIER3; // Interrupt Group 3 Enable Register
  612. union PIEIFR3_REG PIEIFR3; // Interrupt Group 3 Flag Register
  613. union PIEIER4_REG PIEIER4; // Interrupt Group 4 Enable Register
  614. union PIEIFR4_REG PIEIFR4; // Interrupt Group 4 Flag Register
  615. union PIEIER5_REG PIEIER5; // Interrupt Group 5 Enable Register
  616. union PIEIFR5_REG PIEIFR5; // Interrupt Group 5 Flag Register
  617. union PIEIER6_REG PIEIER6; // Interrupt Group 6 Enable Register
  618. union PIEIFR6_REG PIEIFR6; // Interrupt Group 6 Flag Register
  619. union PIEIER7_REG PIEIER7; // Interrupt Group 7 Enable Register
  620. union PIEIFR7_REG PIEIFR7; // Interrupt Group 7 Flag Register
  621. union PIEIER8_REG PIEIER8; // Interrupt Group 8 Enable Register
  622. union PIEIFR8_REG PIEIFR8; // Interrupt Group 8 Flag Register
  623. union PIEIER9_REG PIEIER9; // Interrupt Group 9 Enable Register
  624. union PIEIFR9_REG PIEIFR9; // Interrupt Group 9 Flag Register
  625. union PIEIER10_REG PIEIER10; // Interrupt Group 10 Enable Register
  626. union PIEIFR10_REG PIEIFR10; // Interrupt Group 10 Flag Register
  627. union PIEIER11_REG PIEIER11; // Interrupt Group 11 Enable Register
  628. union PIEIFR11_REG PIEIFR11; // Interrupt Group 11 Flag Register
  629. union PIEIER12_REG PIEIER12; // Interrupt Group 12 Enable Register
  630. union PIEIFR12_REG PIEIFR12; // Interrupt Group 12 Flag Register
  631. };
  632. //---------------------------------------------------------------------------
  633. // PIECTRL External References & Function Declarations:
  634. //
  635. #ifdef CPU1
  636. extern volatile struct PIE_CTRL_REGS PieCtrlRegs;
  637. #endif
  638. #ifdef CPU2
  639. extern volatile struct PIE_CTRL_REGS PieCtrlRegs;
  640. #endif
  641. #ifdef __cplusplus
  642. }
  643. #endif /* extern "C" */
  644. #endif
  645. //===========================================================================
  646. // End of file.
  647. //===========================================================================