RTEMS
6.3
Toggle main menu visibility
Loading...
Searching...
No Matches
bsps
arm
imxrt
mcux-sdk
drivers
aoi
fsl_aoi.h
1
/*
2
* Copyright (c) 2015, Freescale Semiconductor, Inc.
3
* Copyright 2016-2019 NXP
4
* All rights reserved.
5
*
6
* SPDX-License-Identifier: BSD-3-Clause
7
*/
8
#ifndef _FSL_AOI_H_
9
#define _FSL_AOI_H_
10
11
#include "fsl_common.h"
12
17
18
/*******************************************************************************
19
* Definitions
20
******************************************************************************/
21
#ifndef AOI
22
#define AOI AOI0
23
#endif
24
27
#define FSL_AOI_DRIVER_VERSION (MAKE_VERSION(2, 0, 1))
29
35
typedef
enum
_aoi_input_config
36
{
37
kAOI_LogicZero
= 0x0U,
38
kAOI_InputSignal
= 0x1U,
39
kAOI_InvInputSignal
= 0x2U,
40
kAOI_LogicOne
= 0x3U
41
}
aoi_input_config_t
;
42
47
typedef
enum
_aoi_event
48
{
49
kAOI_Event0
= 0x0U,
50
kAOI_Event1
= 0x1U,
51
kAOI_Event2
= 0x2U,
52
kAOI_Event3
= 0x3U
53
}
aoi_event_t
;
54
61
typedef
struct
_aoi_event_config
62
{
63
aoi_input_config_t
PT0AC
;
64
aoi_input_config_t
PT0BC
;
65
aoi_input_config_t
PT0CC
;
66
aoi_input_config_t
PT0DC
;
67
aoi_input_config_t
PT1AC
;
68
aoi_input_config_t
PT1BC
;
69
aoi_input_config_t
PT1CC
;
70
aoi_input_config_t
PT1DC
;
71
aoi_input_config_t
PT2AC
;
72
aoi_input_config_t
PT2BC
;
73
aoi_input_config_t
PT2CC
;
74
aoi_input_config_t
PT2DC
;
75
aoi_input_config_t
PT3AC
;
76
aoi_input_config_t
PT3BC
;
77
aoi_input_config_t
PT3CC
;
78
aoi_input_config_t
PT3DC
;
79
}
aoi_event_config_t
;
80
81
/*******************************************************************************
82
* API
83
******************************************************************************/
84
85
#if defined(__cplusplus)
86
extern
"C"
{
87
#endif
/* __cplusplus*/
88
93
101
void
AOI_Init
(
AOI_Type
*base);
102
110
void
AOI_Deinit
(
AOI_Type
*base);
111
113
118
135
void
AOI_GetEventLogicConfig
(
AOI_Type
*base,
aoi_event_t
event,
aoi_event_config_t
*config);
136
176
void
AOI_SetEventLogicConfig
(
AOI_Type
*base,
aoi_event_t
event,
const
aoi_event_config_t
*eventConfig);
177
178
#if defined(__cplusplus)
179
}
180
#endif
/* __cplusplus*/
181
183
184
/*!* @} */
185
186
#endif
/* _FSL_AOI_H_*/
AOI_SetEventLogicConfig
void AOI_SetEventLogicConfig(AOI_Type *base, aoi_event_t event, const aoi_event_config_t *eventConfig)
Configures an AOI event.
Definition
fsl_aoi.c:193
_aoi_event_config::PT2DC
aoi_input_config_t PT2DC
Definition
fsl_aoi.h:74
_aoi_event_config::PT0CC
aoi_input_config_t PT0CC
Definition
fsl_aoi.h:65
AOI_GetEventLogicConfig
void AOI_GetEventLogicConfig(AOI_Type *base, aoi_event_t event, aoi_event_config_t *config)
Gets the Boolean evaluation associated.
Definition
fsl_aoi.c:104
AOI_Deinit
void AOI_Deinit(AOI_Type *base)
Deinitializes an AOI instance for operation.
Definition
fsl_aoi.c:80
_aoi_event_config::PT2BC
aoi_input_config_t PT2BC
Definition
fsl_aoi.h:72
aoi_input_config_t
enum _aoi_input_config aoi_input_config_t
AOI input configurations.
_aoi_event_config::PT3AC
aoi_input_config_t PT3AC
Definition
fsl_aoi.h:75
AOI_Init
void AOI_Init(AOI_Type *base)
Initializes an AOI instance for operation.
Definition
fsl_aoi.c:65
_aoi_event_config::PT1DC
aoi_input_config_t PT1DC
Definition
fsl_aoi.h:70
_aoi_event_config::PT1CC
aoi_input_config_t PT1CC
Definition
fsl_aoi.h:69
_aoi_input_config
_aoi_input_config
AOI input configurations.
Definition
fsl_aoi.h:36
aoi_event_config_t
struct _aoi_event_config aoi_event_config_t
AOI event configuration structure.
_aoi_event
_aoi_event
AOI event indexes, where an event is the collection of the four product terms (0, 1,...
Definition
fsl_aoi.h:48
_aoi_event_config::PT0AC
aoi_input_config_t PT0AC
Definition
fsl_aoi.h:63
_aoi_event_config::PT1AC
aoi_input_config_t PT1AC
Definition
fsl_aoi.h:67
aoi_event_t
enum _aoi_event aoi_event_t
AOI event indexes, where an event is the collection of the four product terms (0, 1,...
_aoi_event_config::PT2CC
aoi_input_config_t PT2CC
Definition
fsl_aoi.h:73
_aoi_event_config::PT2AC
aoi_input_config_t PT2AC
Definition
fsl_aoi.h:71
_aoi_event_config::PT3DC
aoi_input_config_t PT3DC
Definition
fsl_aoi.h:78
_aoi_event_config::PT0BC
aoi_input_config_t PT0BC
Definition
fsl_aoi.h:64
_aoi_event_config::PT1BC
aoi_input_config_t PT1BC
Definition
fsl_aoi.h:68
_aoi_event_config::PT3CC
aoi_input_config_t PT3CC
Definition
fsl_aoi.h:77
_aoi_event_config::PT0DC
aoi_input_config_t PT0DC
Definition
fsl_aoi.h:66
_aoi_event_config::PT3BC
aoi_input_config_t PT3BC
Definition
fsl_aoi.h:76
kAOI_InputSignal
@ kAOI_InputSignal
Definition
fsl_aoi.h:38
kAOI_LogicOne
@ kAOI_LogicOne
Definition
fsl_aoi.h:40
kAOI_LogicZero
@ kAOI_LogicZero
Definition
fsl_aoi.h:37
kAOI_InvInputSignal
@ kAOI_InvInputSignal
Definition
fsl_aoi.h:39
kAOI_Event2
@ kAOI_Event2
Definition
fsl_aoi.h:51
kAOI_Event1
@ kAOI_Event1
Definition
fsl_aoi.h:50
kAOI_Event0
@ kAOI_Event0
Definition
fsl_aoi.h:49
kAOI_Event3
@ kAOI_Event3
Definition
fsl_aoi.h:52
AOI_Type
Definition
MIMXRT1052.h:3550
_aoi_event_config
AOI event configuration structure.
Definition
fsl_aoi.h:62
Generated by
1.18.0