-
Notifications
You must be signed in to change notification settings - Fork 0
/
stm32469i_eval_io.h
138 lines (119 loc) · 3.67 KB
/
stm32469i_eval_io.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
/**
******************************************************************************
* @file stm32469i_eval_io.h
* @author MCD Application Team
* @brief This file contains the common defines and functions prototypes for
* the stm32469i_eval_io.c driver.
******************************************************************************
* @attention
*
* Copyright (c) 2017 STMicroelectronics.
* All rights reserved.
*
* This software is licensed under terms that can be found in the LICENSE file
* in the root directory of this software component.
* If no LICENSE file comes with this software, it is provided AS-IS.
*
******************************************************************************
*/
/* Define to prevent recursive inclusion -------------------------------------*/
#ifndef __STM32469I_EVAL_IO_H
#define __STM32469I_EVAL_IO_H
#ifdef __cplusplus
extern "C" {
#endif
/* Includes ------------------------------------------------------------------*/
#include "stm32469i_eval.h"
/* Include IO component driver */
#include "../Components/mfxstm32l152/mfxstm32l152.h"
/** @addtogroup BSP
* @{
*/
/** @addtogroup STM32469I_EVAL
* @{
*/
/** @defgroup STM32469I-EVAL_IO STM32469I EVAL IO
* @{
*/
/** @defgroup STM32469I-EVAL_IO_Exported_Types STM32469I EVAL IO Exported Types
* @{
*/
typedef enum
{
BSP_IO_PIN_RESET = 0,
BSP_IO_PIN_SET = 1
}BSP_IO_PinStateTypeDef;
typedef enum
{
IO_OK = 0,
IO_ERROR = 1,
IO_TIMEOUT = 2
}IO_StatusTypeDef;
/**
* @}
*/
/** @defgroup STM32469I-EVAL_IO_Exported_Constants STM32469I EVAL IO Exported Constants
* @{
*/
#define IO_PIN_0 ((uint32_t)0x0001)
#define IO_PIN_1 ((uint32_t)0x0002)
#define IO_PIN_2 ((uint32_t)0x0004)
#define IO_PIN_3 ((uint32_t)0x0008)
#define IO_PIN_4 ((uint32_t)0x0010)
#define IO_PIN_5 ((uint32_t)0x0020)
#define IO_PIN_6 ((uint32_t)0x0040)
#define IO_PIN_7 ((uint32_t)0x0080)
#define IO_PIN_8 ((uint32_t)0x0100)
#define IO_PIN_9 ((uint32_t)0x0200)
#define IO_PIN_10 ((uint32_t)0x0400)
#define IO_PIN_11 ((uint32_t)0x0800)
#define IO_PIN_12 ((uint32_t)0x1000)
#define IO_PIN_13 ((uint32_t)0x2000)
#define IO_PIN_14 ((uint32_t)0x4000)
#define IO_PIN_15 ((uint32_t)0x8000)
#define IO_PIN_16 ((uint32_t)0x010000)
#define IO_PIN_17 ((uint32_t)0x020000)
#define IO_PIN_18 ((uint32_t)0x040000)
#define IO_PIN_19 ((uint32_t)0x080000)
#define IO_PIN_20 ((uint32_t)0x100000)
#define IO_PIN_21 ((uint32_t)0x200000)
#define IO_PIN_22 ((uint32_t)0x400000)
#define IO_PIN_23 ((uint32_t)0x800000)
#define IO_PIN_ALL ((uint32_t)0xFFFFFF)
/**
* @}
*/
/** @defgroup STM32469I-EVAL_IO_Exported_Macro STM32469I EVAL IO Exported Macro
* @{
*/
/**
* @}
*/
/** @defgroup STM32469I-EVAL_IO_Exported_Functions STM32469I EVAL IO Exported Functions
* @{
*/
uint8_t BSP_IO_Init(void);
uint8_t BSP_IO_DeInit(void);
uint32_t BSP_IO_ITGetStatus(uint32_t IO_Pin);
void BSP_IO_ITClear(void);
void BSP_IO_ITClearPin(uint32_t IO_Pins_To_Clear);
uint8_t BSP_IO_ConfigPin(uint32_t IO_Pin, IO_ModeTypedef IO_Mode);
void BSP_IO_WritePin(uint32_t IO_Pin, BSP_IO_PinStateTypeDef PinState);
uint32_t BSP_IO_ReadPin(uint32_t IO_Pin);
void BSP_IO_TogglePin(uint32_t IO_Pin);
/**
* @}
*/
/**
* @}
*/
/**
* @}
*/
/**
* @}
*/
#ifdef __cplusplus
}
#endif
#endif /* __STM32469I_EVAL_IO_H */