Mistake on this page?
Report an issue in GitHub or email us
analogin_api.h
1 
2 /** \addtogroup hal */
3 /** @{*/
4 /* mbed Microcontroller Library
5  * Copyright (c) 2006-2013 ARM Limited
6  * SPDX-License-Identifier: Apache-2.0
7  *
8  * Licensed under the Apache License, Version 2.0 (the "License");
9  * you may not use this file except in compliance with the License.
10  * You may obtain a copy of the License at
11  *
12  * http://www.apache.org/licenses/LICENSE-2.0
13  *
14  * Unless required by applicable law or agreed to in writing, software
15  * distributed under the License is distributed on an "AS IS" BASIS,
16  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17  * See the License for the specific language governing permissions and
18  * limitations under the License.
19  */
20 #ifndef MBED_ANALOGIN_API_H
21 #define MBED_ANALOGIN_API_H
22 
23 #include "device.h"
24 #include "pinmap.h"
25 
26 #if DEVICE_ANALOGIN
27 
28 #ifdef __cplusplus
29 extern "C" {
30 #endif
31 
32 /** Analogin hal structure. analogin_s is declared in the target's hal
33  */
34 typedef struct analogin_s analogin_t;
35 
36 /**
37  * \defgroup hal_analogin Analogin hal functions
38  * @{
39  */
40 
41 /** Initialize the analogin peripheral
42  *
43  * Configures the pin used by analogin.
44  * @param obj The analogin object to initialize
45  * @param pin The analogin pin name
46  */
47 void analogin_init(analogin_t *obj, PinName pin);
48 
49 /** Read the input voltage, represented as a float in the range [0.0, 1.0]
50  *
51  * @param obj The analogin object
52  * @return A floating value representing the current input voltage
53  */
54 float analogin_read(analogin_t *obj);
55 
56 /** Read the value from analogin pin, represented as an unsigned 16bit value
57  *
58  * @param obj The analogin object
59  * @return An unsigned 16bit value representing the current input voltage
60  */
61 uint16_t analogin_read_u16(analogin_t *obj);
62 
63 /** Get the pins that support analogin
64  *
65  * Return a PinMap array of pins that support analogin. The
66  * array is terminated with {NC, NC, 0}.
67  *
68  * @return PinMap array
69  */
70 const PinMap *analogin_pinmap(void);
71 
72 /**@}*/
73 
74 #ifdef __cplusplus
75 }
76 #endif
77 
78 #endif
79 
80 #endif
81 
82 /** @}*/
struct analogin_s analogin_t
Analogin hal structure.
Definition: analogin_api.h:34
uint16_t analogin_read_u16(analogin_t *obj)
Read the value from analogin pin, represented as an unsigned 16bit value.
Definition: pinmap.h:30
float analogin_read(analogin_t *obj)
Read the input voltage, represented as a float in the range [0.0, 1.0].
const PinMap * analogin_pinmap(void)
Get the pins that support analogin.
void analogin_init(analogin_t *obj, PinName pin)
Initialize the analogin peripheral.
Important Information for this Arm website

This site uses cookies to store information on your computer. By continuing to use our site, you consent to our cookies. If you are not happy with the use of these cookies, please review our Cookie Policy to learn how they can be disabled. By disabling cookies, some features of the site will not work.