1 //*****************************************************************************
2 //
3 //! @file
4 //!
5 //! @brief Top Include for Apollo2 class devices.
6 //!
7 //! This file provides all the includes necessary for an apollo device.
8 //!
9 //! @addtogroup hal Hardware Abstraction Layer (HAL)
10 //
11 //! @defgroup apollo2hal HAL for Apollo2
12 //! @ingroup hal
13 //
14 //*****************************************************************************
15 
16 //*****************************************************************************
17 //
18 // Copyright (c) 2017, Ambiq Micro
19 // All rights reserved.
20 //
21 // Redistribution and use in source and binary forms, with or without
22 // modification, are permitted provided that the following conditions are met:
23 //
24 // 1. Redistributions of source code must retain the above copyright notice,
25 // this list of conditions and the following disclaimer.
26 //
27 // 2. Redistributions in binary form must reproduce the above copyright
28 // notice, this list of conditions and the following disclaimer in the
29 // documentation and/or other materials provided with the distribution.
30 //
31 // 3. Neither the name of the copyright holder nor the names of its
32 // contributors may be used to endorse or promote products derived from this
33 // software without specific prior written permission.
34 //
35 // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
36 // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
37 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
38 // ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
39 // LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
40 // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
41 // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
42 // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
43 // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
44 // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
45 // POSSIBILITY OF SUCH DAMAGE.
46 //
47 // This is part of revision 1.2.11 of the AmbiqSuite Development Package.
48 //
49 //*****************************************************************************
50 #ifndef AM_MCU_APOLLO_H
51 #define AM_MCU_APOLLO_H
52 
53 //*****************************************************************************
54 //
55 // C99
56 //
57 //*****************************************************************************
58 #include <stdarg.h>
59 #include <stdbool.h>
60 #include <stddef.h>
61 #include <stdint.h>
62 #ifdef __IAR_SYSTEMS_ICC__
63 #include "intrinsics.h"     // __CLZ() and other intrinsics
64 #endif
65 
66 //*****************************************************************************
67 //
68 // Registers
69 //
70 //*****************************************************************************
71 #include "regs/am_reg_base_addresses.h"
72 
73 #include "regs/am_reg_macros.h"
74 
75 #include "regs/am_reg_adc.h"
76 #include "regs/am_reg_cachectrl.h"
77 #include "regs/am_reg_clkgen.h"
78 #include "regs/am_reg_ctimer.h"
79 #include "regs/am_reg_gpio.h"
80 #include "regs/am_reg_iomstr.h"
81 #include "regs/am_reg_ioslave.h"
82 #include "regs/am_reg_itm.h"
83 #include "regs/am_reg_jedec.h"
84 #include "regs/am_reg_mcuctrl.h"
85 #include "regs/am_reg_nvic.h"
86 #include "regs/am_reg_pdm.h"
87 #include "regs/am_reg_pwrctrl.h"
88 #include "regs/am_reg_rstgen.h"
89 #include "regs/am_reg_rtc.h"
90 #include "regs/am_reg_sysctrl.h"
91 #include "regs/am_reg_systick.h"
92 #include "regs/am_reg_tpiu.h"
93 #include "regs/am_reg_uart.h"
94 #include "regs/am_reg_vcomp.h"
95 #include "regs/am_reg_wdt.h"
96 
97 //*****************************************************************************
98 //
99 // HAL
100 //
101 //*****************************************************************************
102 #include "hal/am_hal_adc.h"
103 #include "hal/am_hal_cachectrl.h"
104 #include "hal/am_hal_clkgen.h"
105 #include "hal/am_hal_ctimer.h"
106 #include "hal/am_hal_debug.h"
107 #include "hal/am_hal_flash.h"
108 #include "hal/am_hal_global.h"
109 #include "hal/am_hal_gpio.h"
110 #include "hal/am_hal_i2c_bit_bang.h"
111 #include "hal/am_hal_interrupt.h"
112 #include "hal/am_hal_iom.h"
113 #include "hal/am_hal_ios.h"
114 #include "hal/am_hal_itm.h"
115 #include "hal/am_hal_mcuctrl.h"
116 #include "hal/am_hal_otp.h"
117 #include "hal/am_hal_pdm.h"
118 #include "hal/am_hal_pin.h"
119 #include "hal/am_hal_pwrctrl.h"
120 #include "hal/am_hal_queue.h"
121 #include "hal/am_hal_reset.h"
122 #include "hal/am_hal_rtc.h"
123 #include "hal/am_hal_stimer.h"
124 #include "hal/am_hal_sysctrl.h"
125 #include "hal/am_hal_systick.h"
126 #include "hal/am_hal_tpiu.h"
127 #include "hal/am_hal_uart.h"
128 #include "hal/am_hal_vcomp.h"
129 #include "hal/am_hal_wdt.h"
130 
131 #endif // AM_MCU_APOLLO_H
132 
133