1 //###########################################################################
2 //
3 // FILE:    F2837xD_analogsubsys.h
4 //
5 // TITLE:   ANALOGSUBSYS 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 
43 #ifndef __F2837xD_ANALOGSUBSYS_H__
44 #define __F2837xD_ANALOGSUBSYS_H__
45 
46 #ifdef __cplusplus
47 extern "C" {
48 #endif
49 
50 
51 //---------------------------------------------------------------------------
52 // ANALOGSUBSYS Individual Register Bit Definitions:
53 
54 struct INTOSC1TRIM_BITS {               // bits description
55     Uint16 VALFINETRIM:12;              // 11:0 Oscillator Value Fine Trim Bits
56     Uint16 rsvd1:4;                     // 15:12 Reserved
57     Uint16 rsvd2:8;                     // 23:16 Reserved
58     Uint16 rsvd3:8;                     // 31:24 Reserved
59 };
60 
61 union INTOSC1TRIM_REG {
62     Uint32  all;
63     struct  INTOSC1TRIM_BITS  bit;
64 };
65 
66 struct INTOSC2TRIM_BITS {               // bits description
67     Uint16 VALFINETRIM:12;              // 11:0 Oscillator Value Fine Trim Bits
68     Uint16 rsvd1:4;                     // 15:12 Reserved
69     Uint16 rsvd2:8;                     // 23:16 Reserved
70     Uint16 rsvd3:8;                     // 31:24 Reserved
71 };
72 
73 union INTOSC2TRIM_REG {
74     Uint32  all;
75     struct  INTOSC2TRIM_BITS  bit;
76 };
77 
78 struct TSNSCTL_BITS {                   // bits description
79     Uint16 ENABLE:1;                    // 0 Temperature Sensor Enable
80     Uint16 rsvd1:15;                    // 15:1 Reserved
81 };
82 
83 union TSNSCTL_REG {
84     Uint16  all;
85     struct  TSNSCTL_BITS  bit;
86 };
87 
88 struct LOCK_BITS {                      // bits description
89     Uint16 rsvd1:1;                     // 0 Reserved
90     Uint16 rsvd2:1;                     // 1 Reserved
91     Uint16 rsvd3:1;                     // 2 Reserved
92     Uint16 TSNSCTL:1;                   // 3 Temperature Sensor Control Register Lock
93     Uint16 rsvd4:1;                     // 4 Reserved
94     Uint16 rsvd5:1;                     // 5 Reserved
95     Uint16 rsvd6:1;                     // 6 Reserved
96     Uint32 rsvd7:12;                    // 18:7 Reserved
97     Uint16 rsvd8:1;                     // 19 Reserved
98     Uint16 rsvd9:1;                     // 20 Reserved
99     Uint16 rsvd10:1;                    // 21 Reserved
100     Uint16 rsvd11:1;                    // 22 Reserved
101     Uint16 rsvd12:1;                    // 23 Reserved
102     Uint16 rsvd13:1;                    // 24 Reserved
103     Uint16 rsvd14:1;                    // 25 Reserved
104     Uint16 rsvd15:1;                    // 26 Reserved
105     Uint16 rsvd16:1;                    // 27 Reserved
106     Uint16 rsvd17:1;                    // 28 Reserved
107     Uint16 rsvd18:1;                    // 29 Reserved
108     Uint16 rsvd19:1;                    // 30 Reserved
109     Uint16 rsvd20:1;                    // 31 Reserved
110 };
111 
112 union LOCK_REG {
113     Uint32  all;
114     struct  LOCK_BITS  bit;
115 };
116 
117 struct ANAREFTRIMA_BITS {               // bits description
118     Uint16 BGVALTRIM:6;                 // 5:0 Bandgap Value Trim
119     Uint16 BGSLOPETRIM:5;               // 10:6 Bandgap Slope Trim
120     Uint16 IREFTRIM:5;                  // 15:11 Reference Current Trim
121     Uint16 rsvd1:8;                     // 23:16 Reserved
122     Uint16 rsvd2:8;                     // 31:24 Reserved
123 };
124 
125 union ANAREFTRIMA_REG {
126     Uint32  all;
127     struct  ANAREFTRIMA_BITS  bit;
128 };
129 
130 struct ANAREFTRIMB_BITS {               // bits description
131     Uint16 BGVALTRIM:6;                 // 5:0 Bandgap Value Trim
132     Uint16 BGSLOPETRIM:5;               // 10:6 Bandgap Slope Trim
133     Uint16 IREFTRIM:5;                  // 15:11 Reference Current Trim
134     Uint16 rsvd1:8;                     // 23:16 Reserved
135     Uint16 rsvd2:8;                     // 31:24 Reserved
136 };
137 
138 union ANAREFTRIMB_REG {
139     Uint32  all;
140     struct  ANAREFTRIMB_BITS  bit;
141 };
142 
143 struct ANAREFTRIMC_BITS {               // bits description
144     Uint16 BGVALTRIM:6;                 // 5:0 Bandgap Value Trim
145     Uint16 BGSLOPETRIM:5;               // 10:6 Bandgap Slope Trim
146     Uint16 IREFTRIM:5;                  // 15:11 Reference Current Trim
147     Uint16 rsvd1:8;                     // 23:16 Reserved
148     Uint16 rsvd2:8;                     // 31:24 Reserved
149 };
150 
151 union ANAREFTRIMC_REG {
152     Uint32  all;
153     struct  ANAREFTRIMC_BITS  bit;
154 };
155 
156 struct ANAREFTRIMD_BITS {               // bits description
157     Uint16 BGVALTRIM:6;                 // 5:0 Bandgap Value Trim
158     Uint16 BGSLOPETRIM:5;               // 10:6 Bandgap Slope Trim
159     Uint16 IREFTRIM:5;                  // 15:11 Reference Current Trim
160     Uint16 rsvd1:8;                     // 23:16 Reserved
161     Uint16 rsvd2:8;                     // 31:24 Reserved
162 };
163 
164 union ANAREFTRIMD_REG {
165     Uint32  all;
166     struct  ANAREFTRIMD_BITS  bit;
167 };
168 
169 struct ANALOG_SUBSYS_REGS {
170     Uint16                                   rsvd1[32];                    // Reserved
171     union   INTOSC1TRIM_REG                  INTOSC1TRIM;                  // Internal Oscillator 1 Trim Register
172     union   INTOSC2TRIM_REG                  INTOSC2TRIM;                  // Internal Oscillator 2 Trim Register
173     Uint16                                   rsvd2[2];                     // Reserved
174     union   TSNSCTL_REG                      TSNSCTL;                      // Temperature Sensor Control Register
175     Uint16                                   rsvd3[7];                     // Reserved
176     union   LOCK_REG                         LOCK;                         // Lock Register
177     Uint16                                   rsvd4[6];                     // Reserved
178     union   ANAREFTRIMA_REG                  ANAREFTRIMA;                  // Analog Reference Trim A Register
179     union   ANAREFTRIMB_REG                  ANAREFTRIMB;                  // Analog Reference Trim B Register
180     union   ANAREFTRIMC_REG                  ANAREFTRIMC;                  // Analog Reference Trim C Register
181     union   ANAREFTRIMD_REG                  ANAREFTRIMD;                  // Analog Reference Trim D Register
182     Uint16                                   rsvd5[10];                    // Reserved
183 };
184 
185 //---------------------------------------------------------------------------
186 // ANALOGSUBSYS External References & Function Declarations:
187 //
188 #ifdef CPU1
189 extern volatile struct ANALOG_SUBSYS_REGS AnalogSubsysRegs;
190 #endif
191 #ifdef __cplusplus
192 }
193 #endif                                  /* extern "C" */
194 
195 #endif
196 
197 //===========================================================================
198 // End of file.
199 //===========================================================================
200