Select one of the symbols to view example projects that use it.
 
Outline
#define __STM32446E_EVAL_SD_H
#include "stm32446e_eval.h"
#include "stm32446e_eval_io.h"
#define BSP_SD_CardInfo
#define MSD_OK
#define MSD_ERROR
#define MSD_ERROR_SD_NOT_PRESENT
#define SD_TRANSFER_OK
#define SD_TRANSFER_BUSY
#define SD_PRESENT
#define SD_NOT_PRESENT
#define SD_DATATIMEOUT
#define __DMAx_TxRx_CLK_ENABLE
#define SD_DMAx_Tx_CHANNEL
#define SD_DMAx_Rx_CHANNEL
#define SD_DMAx_Tx_STREAM
#define SD_DMAx_Rx_STREAM
#define SD_DMAx_Tx_IRQn
#define SD_DMAx_Rx_IRQn
#define BSP_SD_IRQHandler
#define BSP_SD_DMA_Tx_IRQHandler
#define BSP_SD_DMA_Rx_IRQHandler
#define SD_DetectIRQHandler
BSP_SD_Init();
BSP_SD_DeInit();
BSP_SD_ITConfig();
BSP_SD_ReadBlocks(uint32_t *, uint32_t, uint32_t, uint32_t);
BSP_SD_WriteBlocks(uint32_t *, uint32_t, uint32_t, uint32_t);
BSP_SD_ReadBlocks_DMA(uint32_t *, uint32_t, uint32_t);
BSP_SD_WriteBlocks_DMA(uint32_t *, uint32_t, uint32_t);
BSP_SD_Erase(uint32_t, uint32_t);
BSP_SD_GetCardState();
BSP_SD_GetCardInfo(HAL_SD_CardInfoTypeDef *);
BSP_SD_IsDetected();
BSP_SD_MspInit(SD_HandleTypeDef *, void *);
BSP_SD_Detect_MspInit(SD_HandleTypeDef *, void *);
BSP_SD_MspDeInit(SD_HandleTypeDef *, void *);
BSP_SD_AbortCallback();
BSP_SD_WriteCpltCallback();
BSP_SD_ReadCpltCallback();
Files
loading...
CodeScopeSTM32 Libraries and SamplesSTM32446E_EVALstm32446e_eval_sd.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
139
140
141
142
143
144
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
/** ****************************************************************************** * @file stm32446e_eval_sd.h * @author MCD Application Team * @brief This file contains the common defines and functions prototypes for * the stm32446e_eval_sd.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 __STM32446E_EVAL_SD_H #define __STM32446E_EVAL_SD_H #ifdef __cplusplus extern "C" { #endif /* Includes ------------------------------------------------------------------*/ #include "stm32446e_eval.h" #include "stm32446e_eval_io.h" /** @addtogroup BSP * @{ *//* ... */ /** @addtogroup STM32446E_EVAL * @{ *//* ... */ /** @addtogroup STM32446E_EVAL_SD * @{ *//* ... */ /** @defgroup STM32446E_EVAL_SD_Exported_Types STM32446E EVAL SD Exported Types * @{ *//* ... */ /** * @brief SD Card information structure *//* ... */ #define BSP_SD_CardInfo HAL_SD_CardInfoTypeDef /** * @} *//* ... */ /** * @brief SD status structure definition *//* ... */ #define MSD_OK ((uint8_t)0x00) #define MSD_ERROR ((uint8_t)0x01) #define MSD_ERROR_SD_NOT_PRESENT ((uint8_t)0x02) /** * @brief SD transfer state definition *//* ... */ #define SD_TRANSFER_OK ((uint8_t)0x00) #define SD_TRANSFER_BUSY ((uint8_t)0x01) /** @defgroup STM32446E_EVAL_SD_Exported_Constants STM32446E EVAL SD Exported Constants * @{ *//* ... */ #define SD_PRESENT ((uint8_t)0x01) #define SD_NOT_PRESENT ((uint8_t)0x00) #define SD_DATATIMEOUT ((uint32_t)100000000) /* DMA definitions for SD DMA transfer */ #define __DMAx_TxRx_CLK_ENABLE __HAL_RCC_DMA2_CLK_ENABLE #define SD_DMAx_Tx_CHANNEL DMA_CHANNEL_4 #define SD_DMAx_Rx_CHANNEL DMA_CHANNEL_4 #define SD_DMAx_Tx_STREAM DMA2_Stream6 #define SD_DMAx_Rx_STREAM DMA2_Stream3 #define SD_DMAx_Tx_IRQn DMA2_Stream6_IRQn #define SD_DMAx_Rx_IRQn DMA2_Stream3_IRQn #define BSP_SD_IRQHandler SDIO_IRQHandler #define BSP_SD_DMA_Tx_IRQHandler DMA2_Stream6_IRQHandler #define BSP_SD_DMA_Rx_IRQHandler DMA2_Stream3_IRQHandler #define SD_DetectIRQHandler() HAL_GPIO_EXTI_IRQHandler(GPIO_PIN_8) 20 defines/** * @} *//* ... */ /** @defgroup STM32446E_EVAL_SD_Exported_Macro STM32446E EVAL SD Exported Macro * @{ *//* ... */ /** * @} *//* ... */ /** @defgroup STM32446E_EVAL_SD_Exported_Functions STM32446E EVAL SD Exported Functions * @{ *//* ... */ uint8_t BSP_SD_Init(void); uint8_t BSP_SD_DeInit(void); uint8_t BSP_SD_ITConfig(void); uint8_t BSP_SD_ReadBlocks(uint32_t *pData, uint32_t ReadAddr, uint32_t NumOfBlocks, uint32_t Timeout); uint8_t BSP_SD_WriteBlocks(uint32_t *pData, uint32_t WriteAddr, uint32_t NumOfBlocks, uint32_t Timeout); uint8_t BSP_SD_ReadBlocks_DMA(uint32_t *pData, uint32_t ReadAddr, uint32_t NumOfBlocks); uint8_t BSP_SD_WriteBlocks_DMA(uint32_t *pData, uint32_t WriteAddr, uint32_t NumOfBlocks); uint8_t BSP_SD_Erase(uint32_t StartAddr, uint32_t EndAddr); uint8_t BSP_SD_GetCardState(void); void BSP_SD_GetCardInfo(HAL_SD_CardInfoTypeDef *CardInfo); uint8_t BSP_SD_IsDetected(void); /* These functions can be modified in case the current settings (e.g. DMA stream) need to be changed for specific application needs *//* ... */ void BSP_SD_MspInit(SD_HandleTypeDef *hsd, void *Params); void BSP_SD_Detect_MspInit(SD_HandleTypeDef *hsd, void *Params); void BSP_SD_MspDeInit(SD_HandleTypeDef *hsd, void *Params); void BSP_SD_AbortCallback(void); void BSP_SD_WriteCpltCallback(void); void BSP_SD_ReadCpltCallback(void); /** * @} *//* ... */ /** * @} *//* ... */ /** * @} *//* ... */ /** * @} *//* ... */ #ifdef __cplusplus }extern "C" { ... } #endif /* ... */ #endif /* __STM32446E_EVAL_SD_H */