]> git.sur5r.net Git - freertos/blob - FreeRTOS/Demo/CORTEX_R4F_RZ_T_GCC_IAR_ARM/src/cg_src/r_cg_icu.h
Baseline new GCC and Renesas compiler projects for RX71M and RX113 before adding...
[freertos] / FreeRTOS / Demo / CORTEX_R4F_RZ_T_GCC_IAR_ARM / src / cg_src / r_cg_icu.h
1 /***********************************************************************************************************************\r
2 * DISCLAIMER\r
3 * This software is supplied by Renesas Electronics Corporation and is only intended for use with Renesas products.\r
4 * No other uses are authorized. This software is owned by Renesas Electronics Corporation and is protected under all\r
5 * applicable laws, including copyright laws. \r
6 * THIS SOFTWARE IS PROVIDED "AS IS" AND RENESAS MAKES NO WARRANTIESREGARDING THIS SOFTWARE, WHETHER EXPRESS, IMPLIED\r
7 * OR STATUTORY, INCLUDING BUT NOT LIMITED TO WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\r
8 * NON-INFRINGEMENT.  ALL SUCH WARRANTIES ARE EXPRESSLY DISCLAIMED.TO THE MAXIMUM EXTENT PERMITTED NOT PROHIBITED BY\r
9 * LAW, NEITHER RENESAS ELECTRONICS CORPORATION NOR ANY OF ITS AFFILIATED COMPANIES SHALL BE LIABLE FOR ANY DIRECT,\r
10 * INDIRECT, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES FOR ANY REASON RELATED TO THIS SOFTWARE, EVEN IF RENESAS OR\r
11 * ITS AFFILIATES HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.\r
12 * Renesas reserves the right, without notice, to make changes to this software and to discontinue the availability \r
13 * of this software. By using this software, you agree to the additional terms and conditions found by accessing the \r
14 * following link:\r
15 * http://www.renesas.com/disclaimer\r
16 *\r
17 * Copyright (C) 2015 Renesas Electronics Corporation. All rights reserved.\r
18 ***********************************************************************************************************************/\r
19 \r
20 /***********************************************************************************************************************\r
21 * File Name    : r_cg_icu.h\r
22 * Version      : Code Generator for RZ/T1 V1.00.00.09 [02 Mar 2015]\r
23 * Device(s)    : R7S910018CBG\r
24 * Tool-Chain   : GCCARM\r
25 * Description  : This file implements device driver for ICU module.\r
26 * Creation Date: 22/04/2015\r
27 ***********************************************************************************************************************/\r
28 #ifndef ICU_H\r
29 #define ICU_H\r
30 \r
31 /***********************************************************************************************************************\r
32 Macro definitions (Register bit)\r
33 ***********************************************************************************************************************/\r
34 \r
35 /*\r
36     DMAC Software Activation Register (DMASTG)\r
37 */\r
38 /* DMA Unit 0 Software Activation (DMREQ0) */\r
39 #define _DMA_UNIT0_SOFTWARE_ACTIVATION_DISABLE      (0x00U) /* DMA transfer is not requested for DMA Unit 0*/\r
40 #define _DMA_UNIT0_SOFTWARE_ACTIVATION_ENABLE       (0x01U) /* DMA transfer is requested for DMA Unit 0 */\r
41 /* DMA Unit 1 Software Activation (DMREQ1) */\r
42 #define _DMA_UNIT1_SOFTWARE_ACTIVATION_DISABLE      (0x00U) /* DMA transfer is not requested for DMA Unit 1*/\r
43 #define _DMA_UNIT1_SOFTWARE_ACTIVATION_ENABLE       (0x02U) /* DMA transfer is requested for DMA Unit 1*/\r
44 \r
45 /*\r
46     IRQ Control Register i (IRQCRi) (i = 0 to 15)\r
47 */\r
48 /* IRQ Detection Sense Select (IRQMD[1:0]) */\r
49 #define _ICU_IRQ_EDGE_LOW_LEVEL                     (0x00U) /* Low level */\r
50 #define _ICU_IRQ_EDGE_FALLING                       (0x01U) /* Falling edge */\r
51 #define _ICU_IRQ_EDGE_RISING                        (0x02U) /* Rising edge */\r
52 #define _ICU_IRQ_EDGE_BOTH                          (0x03U) /* Rising and falling edge */\r
53 \r
54 /*\r
55     IRQ Pin Digital Noise Filter Enable Register 0 (IRQFLTE)\r
56 */\r
57 /* IRQn Digital Noise Filter Enable (FLTEN0n) */\r
58 #define _ICU_IRQn_FILTER_DISABLE                    (0x00000000UL) /* IRQn digital noise filter is disabled */\r
59 #define _ICU_IRQ0_FILTER_ENABLE                     (0x00000001UL) /* IRQ0 digital noise filter is enabled */\r
60 #define _ICU_IRQ1_FILTER_ENABLE                     (0x00000002UL) /* IRQ1 digital noise filter is enabled */\r
61 #define _ICU_IRQ2_FILTER_ENABLE                     (0x00000004UL) /* IRQ2 digital noise filter is enabled */\r
62 #define _ICU_IRQ3_FILTER_ENABLE                     (0x00000008UL) /* IRQ3 digital noise filter is enabled */\r
63 #define _ICU_IRQ4_FILTER_ENABLE                     (0x00000010UL) /* IRQ4 digital noise filter is enabled */\r
64 #define _ICU_IRQ5_FILTER_ENABLE                     (0x00000020UL) /* IRQ5 digital noise filter is enabled */\r
65 #define _ICU_IRQ6_FILTER_ENABLE                     (0x00000040UL) /* IRQ6 digital noise filter is enabled */\r
66 #define _ICU_IRQ7_FILTER_ENABLE                     (0x00000080UL) /* IRQ7 digital noise filter is enabled */\r
67 #define _ICU_IRQ8_FILTER_ENABLE                     (0x00000100UL) /* IRQ8 digital noise filter is enabled */\r
68 #define _ICU_IRQ9_FILTER_ENABLE                     (0x00000200UL) /* IRQ9 digital noise filter is enabled */\r
69 #define _ICU_IRQ10_FILTER_ENABLE                    (0x00000400UL) /* IRQ10 digital noise filter is enabled */\r
70 #define _ICU_IRQ11_FILTER_ENABLE                    (0x00000800UL) /* IRQ11 digital noise filter is enabled */\r
71 #define _ICU_IRQ12_FILTER_ENABLE                    (0x00001000UL) /* IRQ12 digital noise filter is enabled */\r
72 #define _ICU_IRQ13_FILTER_ENABLE                    (0x00002000UL) /* IRQ13 digital noise filter is enabled */\r
73 #define _ICU_IRQ14_FILTER_ENABLE                    (0x00004000UL) /* IRQ14 digital noise filter is enabled */\r
74 #define _ICU_IRQ15_FILTER_ENABLE                    (0x00008000UL) /* IRQ15 digital noise filter is enabled */\r
75 \r
76 /*\r
77     IRQ Pin Digital Filter Setting Register (IRQFLTC)\r
78 */\r
79 /* IRQn Digital Filter Sampling Clock (FCLKSELn[1:0]) */\r
80 #define _ICU_IRQ0_FILTER_PCLKB                      (0x00U) /* IRQ0 sample clock run at every PCLKB cycle */\r
81 #define _ICU_IRQ0_FILTER_PCLKB_8                    (0x01U) /* IRQ0 sample clock run at every PCLKB/8 cycle */\r
82 #define _ICU_IRQ0_FILTER_PCLKB_32                   (0x02U) /* IRQ0 sample clock run at every PCLKB/32 cycle */\r
83 #define _ICU_IRQ0_FILTER_PCLKB_64                   (0x03U) /* IRQ0 sample clock run at every PCLKB/64 cycle */\r
84 #define _ICU_IRQ1_FILTER_PCLKB                      (0x00U) /* IRQ1 sample clock run at every PCLKB cycle */\r
85 #define _ICU_IRQ1_FILTER_PCLKB_8                    (0x01U) /* IRQ1 sample clock run at every PCLKB/8 cycle */\r
86 #define _ICU_IRQ1_FILTER_PCLKB_32                   (0x02U) /* IRQ1 sample clock run at every PCLKB/32 cycle */\r
87 #define _ICU_IRQ1_FILTER_PCLKB_64                   (0x03U) /* IRQ1 sample clock run at every PCLKB/64 cycle */\r
88 #define _ICU_IRQ2_FILTER_PCLKB                      (0x00U) /* IRQ2 sample clock run at every PCLKB cycle */\r
89 #define _ICU_IRQ2_FILTER_PCLKB_8                    (0x01U) /* IRQ2 sample clock run at every PCLKB/8 cycle */\r
90 #define _ICU_IRQ2_FILTER_PCLKB_32                   (0x02U) /* IRQ2 sample clock run at every PCLKB/32 cycle */\r
91 #define _ICU_IRQ2_FILTER_PCLKB_64                   (0x03U) /* IRQ2 sample clock run at every PCLKB/64 cycle */\r
92 #define _ICU_IRQ3_FILTER_PCLKB                      (0x00U) /* IRQ3 sample clock run at every PCLKB cycle */\r
93 #define _ICU_IRQ3_FILTER_PCLKB_8                    (0x01U) /* IRQ3 sample clock run at every PCLKB/8 cycle */\r
94 #define _ICU_IRQ3_FILTER_PCLKB_32                   (0x02U) /* IRQ3 sample clock run at every PCLKB/32 cycle */\r
95 #define _ICU_IRQ3_FILTER_PCLKB_64                   (0x03U) /* IRQ3 sample clock run at every PCLKB/64 cycle */\r
96 #define _ICU_IRQ4_FILTER_PCLKB                      (0x00U) /* IRQ4 sample clock run at every PCLKB cycle */\r
97 #define _ICU_IRQ4_FILTER_PCLKB_8                    (0x01U) /* IRQ4 sample clock run at every PCLKB/8 cycle */\r
98 #define _ICU_IRQ4_FILTER_PCLKB_32                   (0x02U) /* IRQ4 sample clock run at every PCLKB/32 cycle */\r
99 #define _ICU_IRQ4_FILTER_PCLKB_64                   (0x03U) /* IRQ4 sample clock run at every PCLKB/64 cycle */\r
100 #define _ICU_IRQ5_FILTER_PCLKB                      (0x00U) /* IRQ5 sample clock run at every PCLKB cycle */\r
101 #define _ICU_IRQ5_FILTER_PCLKB_8                    (0x01U) /* IRQ5 sample clock run at every PCLKB/8 cycle */\r
102 #define _ICU_IRQ5_FILTER_PCLKB_32                   (0x02U) /* IRQ5 sample clock run at every PCLKB/32 cycle */\r
103 #define _ICU_IRQ5_FILTER_PCLKB_64                   (0x03U) /* IRQ5 sample clock run at every PCLKB/64 cycle */\r
104 #define _ICU_IRQ6_FILTER_PCLKB                      (0x00U) /* IRQ6 sample clock run at every PCLKB cycle */\r
105 #define _ICU_IRQ6_FILTER_PCLKB_8                    (0x01U) /* IRQ6 sample clock run at every PCLKB/8 cycle */\r
106 #define _ICU_IRQ6_FILTER_PCLKB_32                   (0x02U) /* IRQ6 sample clock run at every PCLKB/32 cycle */\r
107 #define _ICU_IRQ6_FILTER_PCLKB_64                   (0x03U) /* IRQ6 sample clock run at every PCLKB/64 cycle */\r
108 #define _ICU_IRQ7_FILTER_PCLKB                      (0x00U) /* IRQ7 sample clock run at every PCLKB cycle */\r
109 #define _ICU_IRQ7_FILTER_PCLKB_8                    (0x01U) /* IRQ7 sample clock run at every PCLKB/8 cycle */\r
110 #define _ICU_IRQ7_FILTER_PCLKB_32                   (0x02U) /* IRQ7 sample clock run at every PCLKB/32 cycle */\r
111 #define _ICU_IRQ7_FILTER_PCLKB_64                   (0x03U) /* IRQ7 sample clock run at every PCLKB/64 cycle */\r
112 #define _ICU_IRQ8_FILTER_PCLKB                      (0x00U) /* IRQ8 sample clock run at every PCLKB cycle */\r
113 #define _ICU_IRQ8_FILTER_PCLKB_8                    (0x01U) /* IRQ8 sample clock run at every PCLKB/8 cycle */\r
114 #define _ICU_IRQ8_FILTER_PCLKB_32                   (0x02U) /* IRQ8 sample clock run at every PCLKB/32 cycle */\r
115 #define _ICU_IRQ8_FILTER_PCLKB_64                   (0x03U) /* IRQ8 sample clock run at every PCLKB/64 cycle */\r
116 #define _ICU_IRQ9_FILTER_PCLKB                      (0x00U) /* IRQ9 sample clock run at every PCLKB cycle */\r
117 #define _ICU_IRQ9_FILTER_PCLKB_8                    (0x01U) /* IRQ9 sample clock run at every PCLKB/8 cycle */\r
118 #define _ICU_IRQ9_FILTER_PCLKB_32                   (0x02U) /* IRQ9 sample clock run at every PCLKB/32 cycle */\r
119 #define _ICU_IRQ9_FILTER_PCLKB_64                   (0x03U) /* IRQ9 sample clock run at every PCLKB/64 cycle */\r
120 #define _ICU_IRQ10_FILTER_PCLKB                     (0x00U) /* IRQ10 sample clock run at every PCLKB cycle */\r
121 #define _ICU_IRQ10_FILTER_PCLKB_8                   (0x01U) /* IRQ10 sample clock run at every PCLKB/8 cycle */\r
122 #define _ICU_IRQ10_FILTER_PCLKB_32                  (0x02U) /* IRQ10 sample clock run at every PCLKB/32 cycle */\r
123 #define _ICU_IRQ10_FILTER_PCLKB_64                  (0x03U) /* IRQ10 sample clock run at every PCLKB/64 cycle */\r
124 #define _ICU_IRQ11_FILTER_PCLKB                     (0x00U) /* IRQ11 sample clock run at every PCLKB cycle */\r
125 #define _ICU_IRQ11_FILTER_PCLKB_8                   (0x01U) /* IRQ11 sample clock run at every PCLKB/8 cycle */\r
126 #define _ICU_IRQ11_FILTER_PCLKB_32                  (0x02U) /* IRQ11 sample clock run at every PCLKB/32 cycle */\r
127 #define _ICU_IRQ11_FILTER_PCLKB_64                  (0x03U) /* IRQ11 sample clock run at every PCLKB/64 cycle */\r
128 #define _ICU_IRQ12_FILTER_PCLKB                     (0x00U) /* IRQ12 sample clock run at every PCLKB cycle */\r
129 #define _ICU_IRQ12_FILTER_PCLKB_8                   (0x01U) /* IRQ12 sample clock run at every PCLKB/8 cycle */\r
130 #define _ICU_IRQ12_FILTER_PCLKB_32                  (0x02U) /* IRQ12 sample clock run at every PCLKB/32 cycle */\r
131 #define _ICU_IRQ12_FILTER_PCLKB_64                  (0x03U) /* IRQ12 sample clock run at every PCLKB/64 cycle */\r
132 #define _ICU_IRQ13_FILTER_PCLKB                     (0x00U) /* IRQ13 sample clock run at every PCLKB cycle */\r
133 #define _ICU_IRQ13_FILTER_PCLKB_8                   (0x01U) /* IRQ13 sample clock run at every PCLKB/8 cycle */\r
134 #define _ICU_IRQ13_FILTER_PCLKB_32                  (0x02U) /* IRQ13 sample clock run at every PCLKB/32 cycle */\r
135 #define _ICU_IRQ13_FILTER_PCLKB_64                  (0x03U) /* IRQ13 sample clock run at every PCLKB/64 cycle */\r
136 #define _ICU_IRQ14_FILTER_PCLKB                     (0x00U) /* IRQ14 sample clock run at every PCLKB cycle */\r
137 #define _ICU_IRQ14_FILTER_PCLKB_8                   (0x01U) /* IRQ14 sample clock run at every PCLKB/8 cycle */\r
138 #define _ICU_IRQ14_FILTER_PCLKB_32                  (0x02U) /* IRQ14 sample clock run at every PCLKB/32 cycle */\r
139 #define _ICU_IRQ14_FILTER_PCLKB_64                  (0x03U) /* IRQ14 sample clock run at every PCLKB/64 cycle */\r
140 #define _ICU_IRQ15_FILTER_PCLKB                     (0x00U) /* IRQ15 sample clock run at every PCLKB cycle */\r
141 #define _ICU_IRQ15_FILTER_PCLKB_8                   (0x01U) /* IRQ15 sample clock run at every PCLKB/8 cycle */\r
142 #define _ICU_IRQ15_FILTER_PCLKB_32                  (0x02U) /* IRQ15 sample clock run at every PCLKB/32 cycle */\r
143 #define _ICU_IRQ15_FILTER_PCLKB_64                  (0x03U) /* IRQ15 sample clock run at every PCLKB/64 cycle */\r
144 \r
145 /*\r
146     Interrupt Source Priority Register n (IPRn)\r
147 */\r
148 /* Interrupt Priority Level Select (IPR[3:0]) */\r
149 #define _ICU_PRIORITY_LEVEL0                        (0x00000000UL) /* Level 0 (interrupt disabled) */\r
150 #define _ICU_PRIORITY_LEVEL1                        (0x00000001UL) /* Level 1 */\r
151 #define _ICU_PRIORITY_LEVEL2                        (0x00000002UL) /* Level 2 */\r
152 #define _ICU_PRIORITY_LEVEL3                        (0x00000003UL) /* Level 3 */\r
153 #define _ICU_PRIORITY_LEVEL4                        (0x00000004UL) /* Level 4 */\r
154 #define _ICU_PRIORITY_LEVEL5                        (0x00000005UL) /* Level 5 */\r
155 #define _ICU_PRIORITY_LEVEL6                        (0x00000006UL) /* Level 6 */\r
156 #define _ICU_PRIORITY_LEVEL7                        (0x00000007UL) /* Level 7 */\r
157 #define _ICU_PRIORITY_LEVEL8                        (0x00000008UL) /* Level 8 */\r
158 #define _ICU_PRIORITY_LEVEL9                        (0x00000009UL) /* Level 9 */\r
159 #define _ICU_PRIORITY_LEVEL10                       (0x0000000AUL) /* Level 10 */\r
160 #define _ICU_PRIORITY_LEVEL11                       (0x0000000BUL) /* Level 11 */\r
161 #define _ICU_PRIORITY_LEVEL12                       (0x0000000CUL) /* Level 12 */\r
162 #define _ICU_PRIORITY_LEVEL13                       (0x0000000DUL) /* Level 13 */\r
163 #define _ICU_PRIORITY_LEVEL14                       (0x0000000EUL) /* Level 14 */\r
164 #define _ICU_PRIORITY_LEVEL15                       (0x0000000FUL) /* Level 15 (highest) */\r
165 \r
166 /*\r
167     NMI Pin Interrupt Control Register (NMICR)\r
168 */\r
169 /* NMI Detection Sense Selection (NMIMD) */\r
170 #define _ICU_NMI_DETECTION_SENSE_FALLING            (0x00U) /* Falling edge */\r
171 #define _ICU_NMI_DETECTION_SENSE_RISING             (0x08U) /* Rising edge */\r
172 \r
173 /*\r
174     DMA Noise Filter Setting Register (DMAINT)\r
175 */\r
176 /* DMA Digital Noise Filter Sampling Clock (DREQFLTC[1:0]) */\r
177 #define _ICU_DMAINT0_FILTER_PCLKB                   (0x00U) /* NMI sample clock is run at every PCLKB cycle */\r
178 #define _ICU_DMAINT0_FILTER_PCLKB_8                 (0x01U) /* NMI sample clock is run at every PCLKB/8 cycle */\r
179 #define _ICU_DMAINT0_FILTER_PCLKB_32                (0x02U) /* NMI sample clock is run at every PCLKB/32 cycle */\r
180 #define _ICU_DMAINT0_FILTER_PCLKB_64                (0x03U) /* NMI sample clock is run at every PCLKB/64 cycle */\r
181 #define _ICU_DMAINT1_FILTER_PCLKB                   (0x00U) /* NMI sample clock is run at every PCLKB cycle */\r
182 #define _ICU_DMAINT1_FILTER_PCLKB_8                 (0x01U) /* NMI sample clock is run at every PCLKB/8 cycle */\r
183 #define _ICU_DMAINT1_FILTER_PCLKB_32                (0x02U) /* NMI sample clock is run at every PCLKB/32 cycle */\r
184 #define _ICU_DMAINT1_FILTER_PCLKB_64                (0x03U) /* NMI sample clock is run at every PCLKB/64 cycle */\r
185 #define _ICU_DMAINT2_FILTER_PCLKB                   (0x00U) /* NMI sample clock is run at every PCLKB cycle */\r
186 #define _ICU_DMAINT2_FILTER_PCLKB_8                 (0x01U) /* NMI sample clock is run at every PCLKB/8 cycle */\r
187 #define _ICU_DMAINT2_FILTER_PCLKB_32                (0x02U) /* NMI sample clock is run at every PCLKB/32 cycle */\r
188 #define _ICU_DMAINT2_FILTER_PCLKB_64                (0x03U) /* NMI sample clock is run at every PCLKB/64 cycle */\r
189 \r
190 /*\r
191     NMI Pin Digital Noise Filter Setting Register (NMIFLTC)\r
192 */\r
193 /* NMI Digital Noise Filter Sampling Clock (NFCLKSEL[1:0]) */\r
194 #define _ICU_NMI_FILTER_PCLKB                       (0x00U) /* NMI sample clock is run at every PCLKB cycle */\r
195 #define _ICU_NMI_FILTER_PCLKB_8                     (0x01U) /* NMI sample clock is run at every PCLKB/8 cycle */\r
196 #define _ICU_NMI_FILTER_PCLKB_32                    (0x02U) /* NMI sample clock is run at every PCLKB/32 cycle */\r
197 #define _ICU_NMI_FILTER_PCLKB_64                    (0x03U) /* NMI sample clock is run at every PCLKB/64 cycle */\r
198 \r
199 /*\r
200     EtherPHY Control Register i (EPHYCRi) (i = 0 to 2)\r
201 */\r
202 /* EtherPHYn interrupt Detection Setting (EPHYMD[1:0]) */\r
203 #define _ICU_ETHERPHY0_EDGE_LOW_LEVEL               (0x00U) /* Low level */\r
204 #define _ICU_ETHERPHY0_EDGE_FALLING                 (0x01U) /* Falling edge */\r
205 #define _ICU_ETHERPHY0_EDGE_RISING                  (0x02U) /* Rising edge */\r
206 #define _ICU_ETHERPHY0_EDGE_BOTH                    (0x03U) /* Rising and falling edge */\r
207 #define _ICU_ETHERPHY1_EDGE_LOW_LEVEL               (0x00U) /* Low level */\r
208 #define _ICU_ETHERPHY1_EDGE_FALLING                 (0x01U) /* Falling edge */\r
209 #define _ICU_ETHERPHY1_EDGE_RISING                  (0x02U) /* Rising edge */\r
210 #define _ICU_ETHERPHY1_EDGE_BOTH                    (0x03U) /* Rising and falling edge */\r
211 #define _ICU_ETHERPHY2_EDGE_LOW_LEVEL               (0x00U) /* Low level */\r
212 #define _ICU_ETHERPHY2_EDGE_FALLING                 (0x01U) /* Falling edge */\r
213 #define _ICU_ETHERPHY2_EDGE_RISING                  (0x02U) /* Rising edge */\r
214 #define _ICU_ETHERPHY2_EDGE_BOTH                    (0x03U) /* Rising and falling edge */\r
215 \r
216 /*\r
217     EtherPHY Interrupt Request Pin Digital Noise Filter Enable Register 0 (EPHYFLTE)\r
218 */\r
219 /* EtherPHYn Interrupt Digital Noise Filter Enable (EFLTENn) */\r
220 #define _ICU_ETHERPHYn_FILTER_DISABLE              (0x00U) /* ETHER PHY0 digital noise filter is disabled */\r
221 #define _ICU_ETHERPHY0_FILTER_ENABLE               (0x01U) /* ETHER PHY0 digital noise filter is enabled */\r
222 #define _ICU_ETHERPHY1_FILTER_ENABLE               (0x01U) /* ETHER PHY1 digital noise filter is enabled */\r
223 #define _ICU_ETHERPHY2_FILTER_ENABLE               (0x01U) /* ETHER PHY2 digital noise filter is enabled */\r
224 \r
225 /*\r
226     EtherPHY Interrupt Request Pin Digital Filter Setting Register (EPHYFLTC)\r
227 */\r
228 /* EtherPHYn Interrupts Digital Noise Filter Sampling Clock (EFCLKSELn[1:0]) */\r
229 #define _ICU_ETHPHYI0_FILTER_PCLKB                 (0x00U) /* ETHER PHY0 sample clock is run at every PCLKB cycle */\r
230 #define _ICU_ETHPHYI0_FILTER_PCLKB_8               (0x01U) /* ETHER PHY0 sample clock is run at every PCLKB/8 cycle */\r
231 #define _ICU_ETHPHYI0_FILTER_PCLKB_32              (0x02U) /* ETHER PHY0 sample clock is run at every PCLKB/32 cycle */\r
232 #define _ICU_ETHPHYI0_FILTER_PCLKB_64              (0x03U) /* ETHER PHY0 sample clock is run at every PCLKB/64 cycle */\r
233 #define _ICU_ETHPHYI1_FILTER_PCLKB                 (0x00U) /* ETHER PHY1 sample clock is run at every PCLKB cycle */\r
234 #define _ICU_ETHPHYI1_FILTER_PCLKB_8               (0x01U) /* ETHER PHY1 sample clock is run at every PCLKB/8 cycle */\r
235 #define _ICU_ETHPHYI1_FILTER_PCLKB_32              (0x02U) /* ETHER PHY1 sample clock is run at every PCLKB/32 cycle */\r
236 #define _ICU_ETHPHYI1_FILTER_PCLKB_64              (0x03U) /* ETHER PHY1 sample clock is run at every PCLKB/64 cycle */\r
237 #define _ICU_ETHPHYI2_FILTER_PCLKB                 (0x00U) /* ETHER PHY2 sample clock is run at every PCLKB cycle */\r
238 #define _ICU_ETHPHYI2_FILTER_PCLKB_8               (0x01U) /* ETHER PHY2 sample clock is run at every PCLKB/8 cycle */\r
239 #define _ICU_ETHPHYI2_FILTER_PCLKB_32              (0x02U) /* ETHER PHY2 sample clock is run at every PCLKB/32 cycle */\r
240 #define _ICU_ETHPHYI2_FILTER_PCLKB_64              (0x03U) /* ETHER PHY2 sample clock is run at every PCLKB/64 cycle */\r
241 \r
242 /*\r
243     External DMA Request Pin Digital Noise Enable Register (DREQFLTE)\r
244 */\r
245 /* DREQn Digital Noise Filter Enable (DFLTENn) */\r
246 #define _ICU_DREQn_FILTER_DISABLE                 (0x00U) /* Digital noise filter is disabled */\r
247 #define _ICU_DREQ0_FILTER_ENABLE                  (0x01U) /* DREQ0 Digital noise filter is enabled */\r
248 #define _ICU_DREQ1_FILTER_ENABLE                  (0x01U) /* DREQ1 Digital noise filter is enabled */\r
249 #define _ICU_DREQ2_FILTER_ENABLE                  (0x01U) /* DREQ2 Digital noise filter is enabled */\r
250 \r
251 /*\r
252     External DMA Request Pin Digital Noise Setting Register (DREQFLTC)\r
253 */\r
254 /* DREQn Digital Noise Filter Sampling Clock (DFCLKSELn[1:0]) */\r
255 #define _ICU_DREQ0_FILTER_PCLKB                   (0x00U) /* DREQ0 sample clock is run at every PCLKB cycle */\r
256 #define _ICU_DREQ0_FILTER_PCLKB_8                 (0x01U) /* DREQ0 sample clock is run at every PCLKB/8 cycle */\r
257 #define _ICU_DREQ0_FILTER_PCLKB_32                (0x02U) /* DREQ0 sample clock is run at every PCLKB/32 cycle */\r
258 #define _ICU_DREQ0_FILTER_PCLKB_64                (0x03U) /* DREQ0 sample clock is run at every PCLKB/64 cycle */\r
259 #define _ICU_DREQ1_FILTER_PCLKB                   (0x00U) /* DREQ1 sample clock is run at every PCLKB cycle */\r
260 #define _ICU_DREQ1_FILTER_PCLKB_8                 (0x01U) /* DREQ1 sample clock is run at every PCLKB/8 cycle */\r
261 #define _ICU_DREQ1_FILTER_PCLKB_32                (0x02U) /* DREQ1 sample clock is run at every PCLKB/32 cycle */\r
262 #define _ICU_DREQ1_FILTER_PCLKB_64                (0x03U) /* DREQ1 sample clock is run at every PCLKB/64 cycle */\r
263 #define _ICU_DREQ2_FILTER_PCLKB                   (0x00U) /* DREQ2 sample clock is run at every PCLKB cycle */\r
264 #define _ICU_DREQ2_FILTER_PCLKB_8                 (0x01U) /* DREQ2 sample clock is run at every PCLKB/8 cycle */\r
265 #define _ICU_DREQ2_FILTER_PCLKB_32                (0x02U) /* DREQ2 sample clock is run at every PCLKB/32 cycle */\r
266 #define _ICU_DREQ2_FILTER_PCLKB_64                (0x03U) /* DREQ2 sample clock is run at every PCLKB/64 cycle */\r
267 \r
268 /*\r
269     User Mode Enable Register 0 (UEN0)\r
270 */\r
271 /* Interrupt control register access selection (UE) */\r
272 #define _ICU_UEN0_CTRL_REG_ACCESS_DISABLE         (0x00000000UL) /* Disables access in user mode. */\r
273 #define _ICU_UEN0_CTRL_REG_ACCESS_ENABLE          (0x00000001UL) /* Enables access in user mode. */\r
274 \r
275 /*\r
276     User Mode Enable Register 1 (UEN1)\r
277 */\r
278 /* Interrupt control register access selection (UE) */\r
279 #define _ICU_UEN1_CTRL_REG_ACCESS_DISABLE         (0x00000000UL) /* Disables access in user mode. */\r
280 #define _ICU_UEN1_CTRL_REG_ACCESS_ENABLE          (0x00000001UL) /* Enables access in user mode. */\r
281 \r
282 \r
283 /***********************************************************************************************************************\r
284 Macro definitions\r
285 ***********************************************************************************************************************/\r
286 \r
287 /***********************************************************************************************************************\r
288 Typedef definitions\r
289 ***********************************************************************************************************************/\r
290 \r
291 /***********************************************************************************************************************\r
292 Global functions\r
293 ***********************************************************************************************************************/\r
294 void R_ICU_Create(void);\r
295 void R_ICU_IRQ12_Start(void);\r
296 void R_ICU_IRQ12_Stop(void);\r
297 \r
298 /* Start user code for function. Do not edit comment generated here */\r
299 \r
300 #define SW1_PRESS_FLG           (0x01)\r
301 #define SW2_PRESS_FLG           (0x02)\r
302 #define SW3_PRESS_FLG           (0x04)\r
303 \r
304 #define SW1_HELD_FLG            (0x10)\r
305 #define SW2_HELD_FLG            (0x20)\r
306 #define SW3_HELD_FLG            (0x40)\r
307 \r
308 #define SW1_SET_FLG_MASK        (0xEE)\r
309 #define SW2_SET_FLG_MASK        (0xDD)\r
310 #define SW3_SET_FLG_MASK        (0xBB)\r
311 \r
312 #define SW_ALL_OFF              (0xF8)\r
313 \r
314 #define SW1_INPUT_STATE         (PORT3.PIDR.BIT.B5)\r
315 #define SW2_INPUT_STATE         (PORTN.PIDR.BIT.B5)\r
316 #define SW3_INPUT_STATE         (PORT4.PIDR.BIT.B4)\r
317 \r
318 #define SW1_OUTPUT_PIN          (PORT3.PODR.BIT.B5)\r
319 #define SW2_OUTPUT_PIN          (PORTN.PODR.BIT.B5)\r
320 #define SW3_OUTPUT_PIN          (PORT4.PODR.BIT.B4)\r
321 \r
322 /* Stores switch states detected via interrupts */\r
323 extern volatile uint8_t  g_switch_press_flg;\r
324 \r
325 /* End user code. Do not edit comment generated here */\r
326 #endif