mic3 2.0.0.0
mic3.h
Go to the documentation of this file.
1/****************************************************************************
2** Copyright (C) 2020 MikroElektronika d.o.o.
3** Contact: https://www.mikroe.com/contact
4**
5** Permission is hereby granted, free of charge, to any person obtaining a copy
6** of this software and associated documentation files (the "Software"), to deal
7** in the Software without restriction, including without limitation the rights
8** to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9** copies of the Software, and to permit persons to whom the Software is
10** furnished to do so, subject to the following conditions:
11** The above copyright notice and this permission notice shall be
12** included in all copies or substantial portions of the Software.
13**
14** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
15** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
16** OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
17** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
18** DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT
19** OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
20** USE OR OTHER DEALINGS IN THE SOFTWARE.
21****************************************************************************/
22
28#ifndef MIC3_H
29#define MIC3_H
30
31#ifdef __cplusplus
32extern "C"{
33#endif
34
39#ifdef PREINIT_SUPPORTED
40#include "preinit.h"
41#endif
42
43#ifdef MikroCCoreVersion
44 #if MikroCCoreVersion >= 1
45 #include "delays.h"
46 #endif
47#endif
48
49#include "drv_digital_out.h"
50#include "drv_digital_in.h"
51
72#define MIC3_PIN_STATE_HIGH 0x01
73#define MIC3_PIN_STATE_LOW 0x00
74
75 // mic3_set
76
91#define MIC3_MAP_MIKROBUS( cfg, mikrobus ) \
92 cfg.shd = MIKROBUS( mikrobus, MIKROBUS_CS )
93
94 // mic3_map
95 // mic3
96
101typedef struct
102{
103 digital_out_t shd;
105} mic3_t;
106
111typedef struct
112{
113 pin_name_t shd;
116} mic3_cfg_t;
117
122typedef enum
123{
125 MIC3_ERROR = -1
126
128
145
159err_t mic3_init ( mic3_t *ctx, mic3_cfg_t *cfg );
160
175
185void mic3_shd_pin_set ( mic3_t *ctx, uint8_t state );
186
187#ifdef __cplusplus
188}
189#endif
190#endif // MIC3_H
191
192 // mic3
193
194// ------------------------------------------------------------------------ END
err_t mic3_init(mic3_t *ctx, mic3_cfg_t *cfg)
MIC 3 initialization function.
err_t mic3_default_cfg(mic3_t *ctx)
MIC 3 default configuration function.
void mic3_shd_pin_set(mic3_t *ctx, uint8_t state)
MIC 3 SHD pin setting function.
void mic3_cfg_setup(mic3_cfg_t *cfg)
MIC 3 configuration object setup function.
mic3_return_value_t
MIC 3 Click return value data.
Definition mic3.h:123
@ MIC3_OK
Definition mic3.h:124
@ MIC3_ERROR
Definition mic3.h:125
MIC 3 Click configuration object.
Definition mic3.h:112
pin_name_t shd
Definition mic3.h:113
MIC 3 Click context object.
Definition mic3.h:102
digital_out_t shd
Definition mic3.h:103