xref: /btstack/port/renesas-tb-s1ja-cc256x/template/btstack_example/synergy/ssp/src/bsp/mcu/s1ja/bsp_analog.h (revision 3b5c872a8c45689e8cc17891f01530f5aa5e911c)
1 /***********************************************************************************************************************
2  * Copyright [2015-2017] Renesas Electronics Corporation and/or its licensors. All Rights Reserved.
3  *
4  * This file is part of Renesas SynergyTM Software Package (SSP)
5  *
6  * The contents of this file (the "contents") are proprietary and confidential to Renesas Electronics Corporation
7  * and/or its licensors ("Renesas") and subject to statutory and contractual protections.
8  *
9  * This file is subject to a Renesas SSP license agreement. Unless otherwise agreed in an SSP license agreement with
10  * Renesas: 1) you may not use, copy, modify, distribute, display, or perform the contents; 2) you may not use any name
11  * or mark of Renesas for advertising or publicity purposes or in connection with your use of the contents; 3) RENESAS
12  * MAKES NO WARRANTY OR REPRESENTATIONS ABOUT THE SUITABILITY OF THE CONTENTS FOR ANY PURPOSE; THE CONTENTS ARE PROVIDED
13  * "AS IS" WITHOUT ANY EXPRESS OR IMPLIED WARRANTY, INCLUDING THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
14  * PARTICULAR PURPOSE, AND NON-INFRINGEMENT; AND 4) RENESAS SHALL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL, OR
15  * CONSEQUENTIAL DAMAGES, INCLUDING DAMAGES RESULTING FROM LOSS OF USE, DATA, OR PROJECTS, WHETHER IN AN ACTION OF
16  * CONTRACT OR TORT, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE CONTENTS. Third-party contents
17  * included in this file may be subject to different terms.
18  **********************************************************************************************************************/
19 /***********************************************************************************************************************
20 * File Name    : bsp_analog.h
21 * Description  : Analog pin connections available on this MCU.
22 ***********************************************************************************************************************/
23 
24 #ifndef BSP_ANALOG_H_
25 #define BSP_ANALOG_H_
26 
27 /*******************************************************************************************************************//**
28  * @ingroup BSP_MCU_S1JA
29  * @defgroup BSP_MCU_ANALOG_S1JA Analog Connections
30  *
31  * This group contains a list of enumerations that can be used with the @ref ANALOG_CONNECT_API.
32  *
33  * @{
34  **********************************************************************************************************************/
35 
36 /***********************************************************************************************************************
37  * Includes   <System Includes> , "Project Includes"
38  **********************************************************************************************************************/
39 #include "../all/bsp_common_analog.h"
40 
41 /***********************************************************************************************************************
42 Macro definitions
43 ***********************************************************************************************************************/
44 
45 /***********************************************************************************************************************
46 Typedef definitions
47 ***********************************************************************************************************************/
48 
49 /** List of analog connections that can be made on S1JA
50  * @note This list may change based on device. This list is for S1JA.
51  * */
52 typedef enum e_analog_connect
53 {
54     /* Connections for ACMPHS channel 0 VCMP input. */
55     /* AN000 = P500 */
56     /** Connect ACMPHS0 IVCMP to PORT5 P500. */
57     ANALOG_CONNECT_ACMPHS0_IVCMP_TO_PORT5_P500      = ANALOG_CONNECT_DEFINE(ACMPHS, 0, CMPSEL0, IVCMP0, FLAG_CLEAR),
58     /* AN005 = P013 */
59     /** Connect ACMPHS0 IVCMP to PORT0 P013. */
60     ANALOG_CONNECT_ACMPHS0_IVCMP_TO_PORT0_P013      = ANALOG_CONNECT_DEFINE(ACMPHS, 0, CMPSEL0, IVCMP1, FLAG_CLEAR),
61     /* AN016 = P100 */
62     /** Connect ACMPHS0 IVCMP to PORT1 P100. */
63     ANALOG_CONNECT_ACMPHS0_IVCMP_TO_PORT1_P100      = ANALOG_CONNECT_DEFINE(ACMPHS, 0, CMPSEL0, IVCMP2, FLAG_CLEAR),
64 
65     /* Connections for ACMPHS channel 0 VREF input. */
66     /* AN001 = P501 */
67     /** Connect ACMPHS0 IVREF to PORT5 P501. */
68     ANALOG_CONNECT_ACMPHS0_IVREF_TO_PORT5_P501      = ANALOG_CONNECT_DEFINE(ACMPHS, 0, CMPSEL1, IVREF0, FLAG_CLEAR),
69     /* AN004 = P014 */
70     /** Connect ACMPHS0 IVREF to PORT0 P014. */
71     ANALOG_CONNECT_ACMPHS0_IVREF_TO_PORT0_P014      = ANALOG_CONNECT_DEFINE(ACMPHS, 0, CMPSEL1, IVREF1, FLAG_CLEAR),
72     /* AN017 = P101 */
73     /** Connect ACMPHS0 IVREF to PORT1 P101. */
74     ANALOG_CONNECT_ACMPHS0_IVREF_TO_PORT1_P101      = ANALOG_CONNECT_DEFINE(ACMPHS, 0, CMPSEL1, IVREF2, FLAG_CLEAR),
75     /** Connect ACMPHS0 IVREF to DAC80 DA. */
76     ANALOG_CONNECT_ACMPHS0_IVREF_TO_DAC80_DA        = ANALOG_CONNECT_DEFINE(ACMPHS, 0, CMPSEL1, IVREF3, FLAG_CLEAR),
77     /** Connect ACMPHS0 IVREF to DAC120 DA. */
78     ANALOG_CONNECT_ACMPHS0_IVREF_TO_DAC120_DA       = ANALOG_CONNECT_DEFINE(ACMPHS, 0, CMPSEL1, IVREF4, FLAG_CLEAR),
79     /* ANALOG0_VREF is the internal reference voltage. */
80     /** Connect ACMPHS0 IVREF to ANALOG0 VREF. */
81     ANALOG_CONNECT_ACMPHS0_IVREF_TO_ANALOG0_VREF    = ANALOG_CONNECT_DEFINE(ACMPHS, 0, CMPSEL1, IVREF5, FLAG_SET),
82 
83     /* Connections for shared ACMPLP IVREF0 input. */
84     /* CMPREF0 = P109 */
85     /** Connect ACMPLP0 IVREF0 to PORT1 P109. */
86     ANALOG_CONNECT_ACMPLP0_IVREF0_TO_PORT1_P109     = ANALOG_CONNECT_DEFINE(ACMPLP, 0, COMPSEL1, CRVS0, FLAG_CLEAR),
87     /** Connect ACMPLP0 IVREF0 to DAC80 DA. */
88     ANALOG_CONNECT_ACMPLP0_IVREF0_TO_DAC80_DA       = ANALOG_CONNECT_DEFINE(ACMPLP, 0, COMPSEL1, CRVS1, FLAG_CLEAR),
89 
90     /* Connections for shared ACMPLP IVREF1 input. */
91     /* CMPREF1 = P110 */
92     /** Connect ACMPLP1 IVREF1 to PORT1 P110. */
93     ANALOG_CONNECT_ACMPLP1_IVREF1_TO_PORT1_P110     = ANALOG_CONNECT_DEFINE(ACMPLP, 0, COMPSEL1, CRVS4, FLAG_CLEAR),
94     /** Connect ACMPLP1 IVREF1 to DAC81 DA. */
95     ANALOG_CONNECT_ACMPLP1_IVREF1_TO_DAC81_DA       = ANALOG_CONNECT_DEFINE(ACMPLP, 0, COMPSEL1, CRVS5, FLAG_CLEAR),
96 
97     /* Connections for ACMPLP channel 0 VCMP input. */
98     /* CMPIN0 = P400 */
99     /** Connect ACMPLP0 IVCMP to PORT4 P400. */
100     ANALOG_CONNECT_ACMPLP0_IVCMP_TO_PORT4_P400      = ANALOG_CONNECT_DEFINE(ACMPLP, 0, COMPSEL0, CMPSEL0, FLAG_CLEAR),
101     /** Connect ACMPLP0 IVCMP to OPAMP0 AMPO. */
102     ANALOG_CONNECT_ACMPLP0_IVCMP_TO_OPAMP0_AMPO     = ANALOG_CONNECT_DEFINE(ACMPLP, 0, COMPSEL0, CMPSEL1, FLAG_CLEAR),
103 
104     /* Connections for ACMPLP channel 0 VREF input. */
105     /* ANALOG0_VREF is the internal reference voltage. */
106     /** Connect ACMPLP0 IVREF to ANALOG0 VREF. */
107     ANALOG_CONNECT_ACMPLP0_IVREF_TO_ANALOG0_VREF    = ANALOG_CONNECT_DEFINE(ACMPLP, 0, COMPMDR, C0VRF, FLAG_CLEAR),
108     /** Connect ACMPLP0 IVREF to ACMPLP0 IVREF0. */
109     ANALOG_CONNECT_ACMPLP0_IVREF_TO_ACMPLP0_IVREF0  = ANALOG_CONNECT_DEFINE(ACMPLP, 0, COMPMDR, CLEAR_C0VRF, FLAG_CLEAR),
110 
111     /* Connections for ACMPLP channel 1 VCMP input. */
112     /* CMPIN1 = P408 */
113     /** Connect ACMPLP1 IVCMP to PORT4 P408. */
114     ANALOG_CONNECT_ACMPLP1_IVCMP_TO_PORT4_P408      = ANALOG_CONNECT_DEFINE(ACMPLP, 0, COMPSEL0, CMPSEL4, FLAG_CLEAR),
115     /** Connect ACMPLP1 IVCMP to OPAMP1 AMPO. */
116     ANALOG_CONNECT_ACMPLP1_IVCMP_TO_OPAMP1_AMPO     = ANALOG_CONNECT_DEFINE(ACMPLP, 0, COMPSEL0, CMPSEL5, FLAG_CLEAR),
117 
118     /* Connections for ACMPLP channel 1 VREF input. */
119     /* ANALOG0_VREF is the internal reference voltage. */
120     /** Connect ACMPLP1 IVREF to ANALOG0 VREF. */
121     ANALOG_CONNECT_ACMPLP1_IVREF_TO_ANALOG0_VREF    = ANALOG_CONNECT_DEFINE(ACMPLP, 0, COMPMDR, C1VRF, FLAG_CLEAR),
122     /** Connect ACMPLP1 IVREF to ACMPLP0 IVREF0. */
123     ANALOG_CONNECT_ACMPLP1_IVREF_TO_ACMPLP0_IVREF0  = ANALOG_CONNECT_DEFINE(ACMPLP, 0, COMPSEL1, CLEAR_C1VRF2, FLAG_CLEAR), // Also clear C1VRF
124     /** Connect ACMPLP1 IVREF to ACMPLP1 IVREF1. */
125     ANALOG_CONNECT_ACMPLP1_IVREF_TO_ACMPLP1_IVREF1  = ANALOG_CONNECT_DEFINE(ACMPLP, 0, COMPSEL1, C1VRF2, FLAG_CLEAR),       // Also clear C1VRF
126 
127     /* Connections for OPAMP channel 0 output. */
128     /** Break all connections to OPAMP0 AMPO. */
129     ANALOG_CONNECT_OPAMP0_AMPO_BREAK              = ANALOG_CONNECT_DEFINE(OPAMP, 0, AMP0OS, BREAK, FLAG_CLEAR),
130     /* AMP1- = P014 */
131     /** Connect OPAMP0 AMPO to PORT0 P014. */
132     ANALOG_CONNECT_OPAMP0_AMPO_TO_PORT0_P014      = ANALOG_CONNECT_DEFINE(OPAMP, 0, AMP0OS, AMPOS0, FLAG_CLEAR),
133     /* AMP1+ = P013 */
134     /** Connect OPAMP0 AMPO to PORT0 P013. */
135     ANALOG_CONNECT_OPAMP0_AMPO_TO_PORT0_P013      = ANALOG_CONNECT_DEFINE(OPAMP, 0, AMP0OS, AMPOS1, FLAG_CLEAR),
136     /* AMP2- = P003 */
137     /** Connect OPAMP0 AMPO to PORT0 P003. */
138     ANALOG_CONNECT_OPAMP0_AMPO_TO_PORT0_P003      = ANALOG_CONNECT_DEFINE(OPAMP, 0, AMP0OS, AMPOS2, FLAG_CLEAR),
139     /* AMP2+ = P002 */
140     /** Connect OPAMP0 AMPO to PORT0 P002. */
141     ANALOG_CONNECT_OPAMP0_AMPO_TO_PORT0_P002      = ANALOG_CONNECT_DEFINE(OPAMP, 0, AMP0OS, AMPOS3, FLAG_CLEAR),
142 
143     /* Connections for OPAMP channel 0- input. */
144     /** Break all connections to OPAMP0 AMPM. */
145     ANALOG_CONNECT_OPAMP0_AMPM_BREAK              = ANALOG_CONNECT_DEFINE(OPAMP, 0, AMP0MS, BREAK, FLAG_CLEAR),
146     /* AMP0- = P501 */
147     /** Connect OPAMP0 AMPM to PORT5 P501. */
148     ANALOG_CONNECT_OPAMP0_AMPM_TO_PORT5_P501      = ANALOG_CONNECT_DEFINE(OPAMP, 0, AMP0MS, AMPMS0, FLAG_CLEAR),
149     /* AMP0+ = P500 */
150     /** Connect OPAMP0 AMPM to PORT5 P500. */
151     ANALOG_CONNECT_OPAMP0_AMPM_TO_PORT5_P500      = ANALOG_CONNECT_DEFINE(OPAMP, 0, AMP0MS, AMPMS1, FLAG_CLEAR),
152     /* AMP1- = P014 */
153     /** Connect OPAMP0 AMPM to PORT0 P014. */
154     ANALOG_CONNECT_OPAMP0_AMPM_TO_PORT0_P014      = ANALOG_CONNECT_DEFINE(OPAMP, 0, AMP0MS, AMPMS2, FLAG_CLEAR),
155     /* AMP1+ = P013 */
156     /** Connect OPAMP0 AMPM to PORT0 P013. */
157     ANALOG_CONNECT_OPAMP0_AMPM_TO_PORT0_P013      = ANALOG_CONNECT_DEFINE(OPAMP, 0, AMP0MS, AMPMS3, FLAG_CLEAR),
158     /* AMP2- = P003 */
159     /** Connect OPAMP0 AMPM to PORT0 P003. */
160     ANALOG_CONNECT_OPAMP0_AMPM_TO_PORT0_P003      = ANALOG_CONNECT_DEFINE(OPAMP, 0, AMP0MS, AMPMS4, FLAG_CLEAR),
161     /** Connect OPAMP0 AMPM to OPAMP0 AMPO. */
162     ANALOG_CONNECT_OPAMP0_AMPM_TO_OPAMP0_AMPO     = ANALOG_CONNECT_DEFINE(OPAMP, 0, AMP0MS, AMPMS7, FLAG_CLEAR),
163 
164     /* Connections for OPAMP channel 0+ input. */
165     /** Break all connections to OPAMP0 AMPP. */
166     ANALOG_CONNECT_OPAMP0_AMPP_BREAK               = ANALOG_CONNECT_DEFINE(OPAMP, 0, AMP0PS, BREAK, FLAG_CLEAR),
167     /* AMP0+ = P500 */
168     /** Connect OPAMP0 AMPP to PORT5 P500. */
169     ANALOG_CONNECT_OPAMP0_AMPP_TO_PORT5_P500       = ANALOG_CONNECT_DEFINE(OPAMP, 0, AMP0PS, AMPPS0, FLAG_CLEAR),
170     /* AMP1- = P014 */
171     /** Connect OPAMP0 AMPP to PORT0 P014. */
172     ANALOG_CONNECT_OPAMP0_AMPP_TO_PORT0_P014       = ANALOG_CONNECT_DEFINE(OPAMP, 0, AMP0PS, AMPPS1, FLAG_CLEAR),
173     /* AMP1+ = P013 */
174     /** Connect OPAMP0 AMPP to PORT0 P013. */
175     ANALOG_CONNECT_OPAMP0_AMPP_TO_PORT0_P013       = ANALOG_CONNECT_DEFINE(OPAMP, 0, AMP0PS, AMPPS2, FLAG_CLEAR),
176     /* AMP2+ = P002 */
177     /** Connect OPAMP0 AMPP to PORT0 P002. */
178     ANALOG_CONNECT_OPAMP0_AMPP_TO_PORT0_P002       = ANALOG_CONNECT_DEFINE(OPAMP, 0, AMP0PS, AMPPS3, FLAG_CLEAR),
179     /** Connect OPAMP0 AMPP to DAC120 DA. */
180     ANALOG_CONNECT_OPAMP0_AMPP_TO_DAC120_DA        = ANALOG_CONNECT_DEFINE(OPAMP, 0, AMP0PS, AMPPS7, FLAG_CLEAR),
181 
182     /* Connections for OPAMP channel 1- input. */
183     /** Break all connections to OPAMP1 AMPM. */
184     ANALOG_CONNECT_OPAMP1_AMPM_BREAK              = ANALOG_CONNECT_DEFINE(OPAMP, 0, AMP1MS, BREAK, FLAG_CLEAR),
185     /* AMP1- = P014 */
186     /** Connect OPAMP1 AMPM to PORT0 P014. */
187     ANALOG_CONNECT_OPAMP1_AMPM_TO_PORT0_P014      = ANALOG_CONNECT_DEFINE(OPAMP, 0, AMP1MS, AMPMS0, FLAG_CLEAR),
188     /** Connect OPAMP1 AMPM to OPAMP1 AMPO. */
189     ANALOG_CONNECT_OPAMP1_AMPM_TO_OPAMP1_AMPO     = ANALOG_CONNECT_DEFINE(OPAMP, 0, AMP1MS, AMPMS7, FLAG_CLEAR),
190 
191     /* Connections for OPAMP channel 1+ input. */
192     /** Break all connections to OPAMP1 AMPP. */
193     ANALOG_CONNECT_OPAMP1_AMPP_BREAK               = ANALOG_CONNECT_DEFINE(OPAMP, 0, AMP1PS, BREAK, FLAG_CLEAR),
194     /* AMP1- = P014 */
195     /** Connect OPAMP1 AMPP to PORT0 P014. */
196     ANALOG_CONNECT_OPAMP1_AMPP_TO_PORT0_P014       = ANALOG_CONNECT_DEFINE(OPAMP, 0, AMP1PS, AMPPS0, FLAG_CLEAR),
197     /* AMP1+ = P013 */
198     /** Connect OPAMP1 AMPP to PORT0 P013. */
199     ANALOG_CONNECT_OPAMP1_AMPP_TO_PORT0_P013       = ANALOG_CONNECT_DEFINE(OPAMP, 0, AMP1PS, AMPPS1, FLAG_CLEAR),
200     /* AMP2- = P003 */
201     /** Connect OPAMP1 AMPP to PORT0 P003. */
202     ANALOG_CONNECT_OPAMP1_AMPP_TO_PORT0_P003       = ANALOG_CONNECT_DEFINE(OPAMP, 0, AMP1PS, AMPPS2, FLAG_CLEAR),
203     /* AMP2+ = P002 */
204     /** Connect OPAMP1 AMPP to PORT0 P002. */
205     ANALOG_CONNECT_OPAMP1_AMPP_TO_PORT0_P002       = ANALOG_CONNECT_DEFINE(OPAMP, 0, AMP1PS, AMPPS3, FLAG_CLEAR),
206     /** Connect OPAMP1 AMPP to DAC80 DA. */
207     ANALOG_CONNECT_OPAMP1_AMPP_TO_DAC80_DA         = ANALOG_CONNECT_DEFINE(OPAMP, 0, AMP1PS, AMPPS7, FLAG_CLEAR),
208 
209     /* Connections for OPAMP channel 2- input. */
210     /** Break all connections to OPAMP2 AMPM. */
211     ANALOG_CONNECT_OPAMP2_AMPM_BREAK              = ANALOG_CONNECT_DEFINE(OPAMP, 0, AMP2MS, BREAK, FLAG_CLEAR),
212     /* AMP2- = P003 */
213     /** Connect OPAMP2 AMPM to PORT0 P003. */
214     ANALOG_CONNECT_OPAMP2_AMPM_TO_PORT0_P003      = ANALOG_CONNECT_DEFINE(OPAMP, 0, AMP2MS, AMPMS0, FLAG_CLEAR),
215     /** Connect OPAMP2 AMPM to OPAMP2 AMPO. */
216     ANALOG_CONNECT_OPAMP2_AMPM_TO_OPAMP2_AMPO     = ANALOG_CONNECT_DEFINE(OPAMP, 0, AMP2MS, AMPMS7, FLAG_CLEAR),
217 
218     /* Connections for OPAMP channel 2+ input. */
219     /** Break all connections to OPAMP2 AMPP. */
220     ANALOG_CONNECT_OPAMP2_AMPP_BREAK               = ANALOG_CONNECT_DEFINE(OPAMP, 0, AMP2PS, BREAK, FLAG_CLEAR),
221     /* AMP2- = P003 */
222     /** Connect OPAMP2 AMPP to PORT0 P003. */
223     ANALOG_CONNECT_OPAMP2_AMPP_TO_PORT0_P003       = ANALOG_CONNECT_DEFINE(OPAMP, 0, AMP2PS, AMPPS0, FLAG_CLEAR),
224     /* AMP2+ = P002 */
225     /** Connect OPAMP2 AMPP to PORT0 P002. */
226     ANALOG_CONNECT_OPAMP2_AMPP_TO_PORT0_P002       = ANALOG_CONNECT_DEFINE(OPAMP, 0, AMP2PS, AMPPS1, FLAG_CLEAR),
227     /** Connect OPAMP2 AMPP to DAC81 DA. */
228     ANALOG_CONNECT_OPAMP2_AMPP_TO_DAC81_DA         = ANALOG_CONNECT_DEFINE(OPAMP, 0, AMP2PS, AMPPS7, FLAG_CLEAR),
229 } analog_connect_t;
230 
231 /** @} (end defgroup BSP_MCU_ANALOG_S1JA) */
232 
233 #endif /* BSP_ANALOG_H_ */
234