ChibiOS 21.11.4
hal_adc_lld.c
Go to the documentation of this file.
1/*
2 ChibiOS - Copyright (C) 2006..2018 Giovanni Di Sirio
3
4 Licensed under the Apache License, Version 2.0 (the "License");
5 you may not use this file except in compliance with the License.
6 You may obtain a copy of the License at
7
8 http://www.apache.org/licenses/LICENSE-2.0
9
10 Unless required by applicable law or agreed to in writing, software
11 distributed under the License is distributed on an "AS IS" BASIS,
12 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 See the License for the specific language governing permissions and
14 limitations under the License.
15*/
16
17/**
18 * @file hal_adc_lld.c
19 * @brief PLATFORM ADC subsystem low level driver source.
20 *
21 * @addtogroup ADC
22 * @{
23 */
24
25#include "hal.h"
26
27#if (HAL_USE_ADC == TRUE) || defined(__DOXYGEN__)
28
29/*===========================================================================*/
30/* Driver local definitions. */
31/*===========================================================================*/
32
33/*===========================================================================*/
34/* Driver exported variables. */
35/*===========================================================================*/
36
37/**
38 * @brief ADC1 driver identifier.
39 */
40#if (PLATFORM_ADC_USE_ADC1 == TRUE) || defined(__DOXYGEN__)
42#endif
43
44/*===========================================================================*/
45/* Driver local variables and types. */
46/*===========================================================================*/
47
48/*===========================================================================*/
49/* Driver local functions. */
50/*===========================================================================*/
51
52/*===========================================================================*/
53/* Driver interrupt handlers. */
54/*===========================================================================*/
55
56/*===========================================================================*/
57/* Driver exported functions. */
58/*===========================================================================*/
59
60/**
61 * @brief Low level ADC driver initialization.
62 *
63 * @notapi
64 */
65void adc_lld_init(void) {
66
67#if PLATFORM_ADC_USE_ADC1 == TRUE
68 /* Driver initialization.*/
70#endif
71}
72
73/**
74 * @brief Configures and activates the ADC peripheral.
75 *
76 * @param[in] adcp pointer to the @p ADCDriver object
77 *
78 * @notapi
79 */
81
82 if (adcp->state == ADC_STOP) {
83 /* Enables the peripheral.*/
84#if PLATFORM_ADC_USE_ADC1 == TRUE
85 if (&ADCD1 == adcp) {
86
87 }
88#endif
89 }
90 /* Configures the peripheral.*/
91
92}
93
94/**
95 * @brief Deactivates the ADC peripheral.
96 *
97 * @param[in] adcp pointer to the @p ADCDriver object
98 *
99 * @notapi
100 */
102
103 if (adcp->state == ADC_READY) {
104 /* Resets the peripheral.*/
105
106 /* Disables the peripheral.*/
107#if PLATFORM_ADC_USE_ADC1 == TRUE
108 if (&ADCD1 == adcp) {
109
110 }
111#endif
112 }
113}
114
115/**
116 * @brief Starts an ADC conversion.
117 *
118 * @param[in] adcp pointer to the @p ADCDriver object
119 *
120 * @notapi
121 */
123
124 (void)adcp;
125}
126
127/**
128 * @brief Stops an ongoing conversion.
129 *
130 * @param[in] adcp pointer to the @p ADCDriver object
131 *
132 * @notapi
133 */
135
136 (void)adcp;
137}
138
139#endif /* HAL_USE_ADC == TRUE */
140
141/** @} */
void adc_lld_stop_conversion(ADCDriver *adcp)
Stops an ongoing conversion.
struct hal_adc_driver ADCDriver
Type of a structure representing an ADC driver.
Definition hal_adc.h:82
void adc_lld_init(void)
Low level ADC driver initialization.
Definition hal_adc_lld.c:65
void adc_lld_start_conversion(ADCDriver *adcp)
Starts an ADC conversion.
void adc_lld_stop(ADCDriver *adcp)
Deactivates the ADC peripheral.
void adc_lld_start(ADCDriver *adcp)
Configures and activates the ADC peripheral.
Definition hal_adc_lld.c:80
void adcObjectInit(ADCDriver *adcp)
Initializes the standard part of a ADCDriver structure.
Definition hal_adc.c:68
ADCDriver ADCD1
ADC1 driver identifier.
Definition hal_adc_lld.c:41
@ ADC_STOP
Definition hal_adc.h:72
@ ADC_READY
Definition hal_adc.h:73
HAL subsystem header.
adcstate_t state
Driver state.
Definition hal_adc.h:164