comparison libs/STM32F10x_StdPeriph_Lib_V3.5.0/Utilities/STM32_EVAL/STM32100B_EVAL/stm32100b_eval.h @ 0:c59513fd84fb

Initial commit of STM32 test code.
author Daniel O'Connor <darius@dons.net.au>
date Mon, 03 Oct 2011 21:19:15 +1030
parents
children
comparison
equal deleted inserted replaced
-1:000000000000 0:c59513fd84fb
1 /**
2 ******************************************************************************
3 * @file stm32100b_eval.h
4 * @author MCD Application Team
5 * @version V4.5.0
6 * @date 07-March-2011
7 * @brief This file contains definitions for STM32100B_EVAL's Leds, push-buttons
8 * COM ports, SD Card on SPI, sFLASH on SPI and Temperature Sensor LM75 on I2C
9 * hardware resources.
10 ******************************************************************************
11 * @attention
12 *
13 * THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS
14 * WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE
15 * TIME. AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY
16 * DIRECT, INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING
17 * FROM THE CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE
18 * CODING INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.
19 *
20 * <h2><center>&copy; COPYRIGHT 2011 STMicroelectronics</center></h2>
21 ******************************************************************************
22 */
23
24 /* Define to prevent recursive inclusion -------------------------------------*/
25 #ifndef __STM32100B_EVAL_H
26 #define __STM32100B_EVAL_H
27
28 #ifdef __cplusplus
29 extern "C" {
30 #endif
31
32 /* Includes ------------------------------------------------------------------*/
33 #include "stm32_eval.h"
34
35 /** @addtogroup Utilities
36 * @{
37 */
38
39 /** @addtogroup STM32_EVAL
40 * @{
41 */
42
43 /** @addtogroup STM32100B_EVAL
44 * @{
45 */
46
47 /** @addtogroup STM32100B_EVAL_LOW_LEVEL
48 * @{
49 */
50
51 /** @defgroup STM32100B_EVAL_LOW_LEVEL_Exported_Types
52 * @{
53 */
54 /**
55 * @}
56 */
57
58 /** @defgroup STM32100B_EVAL_LOW_LEVEL_Exported_Constants
59 * @{
60 */
61 /** @addtogroup STM32100B_EVAL_LOW_LEVEL_LED
62 * @{
63 */
64 #define LEDn 4
65 #define LED1_PIN GPIO_Pin_6
66 #define LED1_GPIO_PORT GPIOC
67 #define LED1_GPIO_CLK RCC_APB2Periph_GPIOC
68
69 #define LED2_PIN GPIO_Pin_7
70 #define LED2_GPIO_PORT GPIOC
71 #define LED2_GPIO_CLK RCC_APB2Periph_GPIOC
72
73 #define LED3_PIN GPIO_Pin_8
74 #define LED3_GPIO_PORT GPIOC
75 #define LED3_GPIO_CLK RCC_APB2Periph_GPIOC
76
77 #define LED4_PIN GPIO_Pin_9
78 #define LED4_GPIO_PORT GPIOC
79 #define LED4_GPIO_CLK RCC_APB2Periph_GPIOC
80
81 /**
82 * @}
83 */
84
85 /** @addtogroup STM32100B_EVAL_LOW_LEVEL_BUTTON
86 * @{
87 */
88 #define BUTTONn 8
89
90 /**
91 * @brief Wakeup push-button
92 */
93 #define WAKEUP_BUTTON_PIN GPIO_Pin_0
94 #define WAKEUP_BUTTON_GPIO_PORT GPIOA
95 #define WAKEUP_BUTTON_GPIO_CLK RCC_APB2Periph_GPIOA
96 #define WAKEUP_BUTTON_EXTI_LINE EXTI_Line0
97 #define WAKEUP_BUTTON_EXTI_PORT_SOURCE GPIO_PortSourceGPIOA
98 #define WAKEUP_BUTTON_EXTI_PIN_SOURCE GPIO_PinSource0
99 #define WAKEUP_BUTTON_EXTI_IRQn EXTI0_IRQn
100 /**
101 * @brief Tamper push-button
102 */
103 #define TAMPER_BUTTON_PIN GPIO_Pin_13
104 #define TAMPER_BUTTON_GPIO_PORT GPIOC
105 #define TAMPER_BUTTON_GPIO_CLK RCC_APB2Periph_GPIOC
106 #define TAMPER_BUTTON_EXTI_LINE EXTI_Line13
107 #define TAMPER_BUTTON_EXTI_PORT_SOURCE GPIO_PortSourceGPIOC
108 #define TAMPER_BUTTON_EXTI_PIN_SOURCE GPIO_PinSource13
109 #define TAMPER_BUTTON_EXTI_IRQn EXTI15_10_IRQn
110 /**
111 * @brief Key push-button
112 */
113 #define KEY_BUTTON_PIN GPIO_Pin_9
114 #define KEY_BUTTON_GPIO_PORT GPIOB
115 #define KEY_BUTTON_GPIO_CLK RCC_APB2Periph_GPIOB
116 #define KEY_BUTTON_EXTI_LINE EXTI_Line9
117 #define KEY_BUTTON_EXTI_PORT_SOURCE GPIO_PortSourceGPIOB
118 #define KEY_BUTTON_EXTI_PIN_SOURCE GPIO_PinSource9
119 #define KEY_BUTTON_EXTI_IRQn EXTI9_5_IRQn
120 /**
121 * @brief Joystick Right push-button
122 */
123 #define RIGHT_BUTTON_PIN GPIO_Pin_1
124 #define RIGHT_BUTTON_GPIO_PORT GPIOE
125 #define RIGHT_BUTTON_GPIO_CLK RCC_APB2Periph_GPIOE
126 #define RIGHT_BUTTON_EXTI_LINE EXTI_Line1
127 #define RIGHT_BUTTON_EXTI_PORT_SOURCE GPIO_PortSourceGPIOE
128 #define RIGHT_BUTTON_EXTI_PIN_SOURCE GPIO_PinSource1
129 #define RIGHT_BUTTON_EXTI_IRQn EXTI1_IRQn
130 /**
131 * @brief Joystick Left push-button
132 */
133 #define LEFT_BUTTON_PIN GPIO_Pin_0
134 #define LEFT_BUTTON_GPIO_PORT GPIOE
135 #define LEFT_BUTTON_GPIO_CLK RCC_APB2Periph_GPIOE
136 #define LEFT_BUTTON_EXTI_LINE EXTI_Line0
137 #define LEFT_BUTTON_EXTI_PORT_SOURCE GPIO_PortSourceGPIOE
138 #define LEFT_BUTTON_EXTI_PIN_SOURCE GPIO_PinSource0
139 #define LEFT_BUTTON_EXTI_IRQn EXTI0_IRQn
140 /**
141 * @brief Joystick Up push-button
142 */
143 #define UP_BUTTON_PIN GPIO_Pin_8
144 #define UP_BUTTON_GPIO_PORT GPIOD
145 #define UP_BUTTON_GPIO_CLK RCC_APB2Periph_GPIOD
146 #define UP_BUTTON_EXTI_LINE EXTI_Line8
147 #define UP_BUTTON_EXTI_PORT_SOURCE GPIO_PortSourceGPIOD
148 #define UP_BUTTON_EXTI_PIN_SOURCE GPIO_PinSource8
149 #define UP_BUTTON_EXTI_IRQn EXTI9_5_IRQn
150 /**
151 * @brief Joystick Down push-button
152 */
153 #define DOWN_BUTTON_PIN GPIO_Pin_14
154 #define DOWN_BUTTON_GPIO_PORT GPIOD
155 #define DOWN_BUTTON_GPIO_CLK RCC_APB2Periph_GPIOD
156 #define DOWN_BUTTON_EXTI_LINE EXTI_Line14
157 #define DOWN_BUTTON_EXTI_PORT_SOURCE GPIO_PortSourceGPIOD
158 #define DOWN_BUTTON_EXTI_PIN_SOURCE GPIO_PinSource14
159 #define DOWN_BUTTON_EXTI_IRQn EXTI15_10_IRQn
160 /**
161 * @brief Joystick Sel push-button
162 */
163 #define SEL_BUTTON_PIN GPIO_Pin_12
164 #define SEL_BUTTON_GPIO_PORT GPIOD
165 #define SEL_BUTTON_GPIO_CLK RCC_APB2Periph_GPIOD
166 #define SEL_BUTTON_EXTI_LINE EXTI_Line12
167 #define SEL_BUTTON_EXTI_PORT_SOURCE GPIO_PortSourceGPIOD
168 #define SEL_BUTTON_EXTI_PIN_SOURCE GPIO_PinSource12
169 #define SEL_BUTTON_EXTI_IRQn EXTI15_10_IRQn
170 /**
171 * @}
172 */
173
174 /** @addtogroup STM32100B_EVAL_LOW_LEVEL_COM
175 * @{
176 */
177 #define COMn 2
178
179 /**
180 * @brief Definition for COM port1, connected to USART1
181 */
182 #define EVAL_COM1 USART1
183 #define EVAL_COM1_CLK RCC_APB2Periph_USART1
184 #define EVAL_COM1_TX_PIN GPIO_Pin_9
185 #define EVAL_COM1_TX_GPIO_PORT GPIOA
186 #define EVAL_COM1_TX_GPIO_CLK RCC_APB2Periph_GPIOA
187 #define EVAL_COM1_RX_PIN GPIO_Pin_10
188 #define EVAL_COM1_RX_GPIO_PORT GPIOA
189 #define EVAL_COM1_RX_GPIO_CLK RCC_APB2Periph_GPIOA
190 #define EVAL_COM1_IRQn USART1_IRQn
191
192 /**
193 * @brief Definition for COM port2, connected to USART2 (USART2 pins remapped on GPIOD)
194 */
195 #define EVAL_COM2 USART2
196 #define EVAL_COM2_CLK RCC_APB1Periph_USART2
197 #define EVAL_COM2_TX_PIN GPIO_Pin_5
198 #define EVAL_COM2_TX_GPIO_PORT GPIOD
199 #define EVAL_COM2_TX_GPIO_CLK RCC_APB2Periph_GPIOD
200 #define EVAL_COM2_RX_PIN GPIO_Pin_6
201 #define EVAL_COM2_RX_GPIO_PORT GPIOD
202 #define EVAL_COM2_RX_GPIO_CLK RCC_APB2Periph_GPIOD
203 #define EVAL_COM2_IRQn USART2_IRQn
204
205 /**
206 * @}
207 */
208
209 /** @addtogroup STM32100B_EVAL_LOW_LEVEL_SD_SPI
210 * @{
211 */
212 /**
213 * @brief SD SPI Interface pins
214 */
215 #define SD_SPI SPI1
216 #define SD_SPI_CLK RCC_APB2Periph_SPI1
217 #define SD_SPI_SCK_PIN GPIO_Pin_5 /* PA.05 */
218 #define SD_SPI_SCK_GPIO_PORT GPIOA /* GPIOA */
219 #define SD_SPI_SCK_GPIO_CLK RCC_APB2Periph_GPIOA
220 #define SD_SPI_MISO_PIN GPIO_Pin_6 /* PA.06 */
221 #define SD_SPI_MISO_GPIO_PORT GPIOA /* GPIOA */
222 #define SD_SPI_MISO_GPIO_CLK RCC_APB2Periph_GPIOA
223 #define SD_SPI_MOSI_PIN GPIO_Pin_7 /* PA.07 */
224 #define SD_SPI_MOSI_GPIO_PORT GPIOA /* GPIOA */
225 #define SD_SPI_MOSI_GPIO_CLK RCC_APB2Periph_GPIOA
226 #define SD_CS_PIN GPIO_Pin_12 /* PC.12 */
227 #define SD_CS_GPIO_PORT GPIOC /* GPIOC */
228 #define SD_CS_GPIO_CLK RCC_APB2Periph_GPIOC
229 #define SD_DETECT_PIN GPIO_Pin_7 /* PE.07 */
230 #define SD_DETECT_GPIO_PORT GPIOE /* GPIOE */
231 #define SD_DETECT_GPIO_CLK RCC_APB2Periph_GPIOE
232
233 /**
234 * @}
235 */
236
237 /** @addtogroup STM32100B_EVAL_LOW_LEVEL_M25P_FLASH_SPI
238 * @{
239 */
240 /**
241 * @brief M25P FLASH SPI Interface pins
242 */
243 #define sFLASH_SPI SPI1
244 #define sFLASH_SPI_CLK RCC_APB2Periph_SPI1
245 #define sFLASH_SPI_SCK_PIN GPIO_Pin_5 /* PA.05 */
246 #define sFLASH_SPI_SCK_GPIO_PORT GPIOA /* GPIOA */
247 #define sFLASH_SPI_SCK_GPIO_CLK RCC_APB2Periph_GPIOA
248 #define sFLASH_SPI_MISO_PIN GPIO_Pin_6 /* PA.06 */
249 #define sFLASH_SPI_MISO_GPIO_PORT GPIOA /* GPIOA */
250 #define sFLASH_SPI_MISO_GPIO_CLK RCC_APB2Periph_GPIOA
251 #define sFLASH_SPI_MOSI_PIN GPIO_Pin_7 /* PA.07 */
252 #define sFLASH_SPI_MOSI_GPIO_PORT GPIOA /* GPIOA */
253 #define sFLASH_SPI_MOSI_GPIO_CLK RCC_APB2Periph_GPIOA
254 #define sFLASH_CS_PIN GPIO_Pin_9 /* PD.09 */
255 #define sFLASH_CS_GPIO_PORT GPIOD /* GPIOD */
256 #define sFLASH_CS_GPIO_CLK RCC_APB2Periph_GPIOD
257
258 /**
259 * @}
260 */
261
262 /** @addtogroup STM32100B_EVAL_LOW_LEVEL_TSENSOR_I2C
263 * @{
264 */
265 /**
266 * @brief LM75 Temperature Sensor I2C Interface pins
267 */
268 #define LM75_I2C I2C1
269 #define LM75_I2C_CLK RCC_APB1Periph_I2C1
270 #define LM75_I2C_SCL_PIN GPIO_Pin_6 /* PB.06 */
271 #define LM75_I2C_SCL_GPIO_PORT GPIOB /* GPIOB */
272 #define LM75_I2C_SCL_GPIO_CLK RCC_APB2Periph_GPIOB
273 #define LM75_I2C_SDA_PIN GPIO_Pin_7 /* PB.07 */
274 #define LM75_I2C_SDA_GPIO_PORT GPIOB /* GPIOB */
275 #define LM75_I2C_SDA_GPIO_CLK RCC_APB2Periph_GPIOB
276 #define LM75_I2C_SMBUSALERT_PIN GPIO_Pin_5 /* PB.05 */
277 #define LM75_I2C_SMBUSALERT_GPIO_PORT GPIOB /* GPIOB */
278 #define LM75_I2C_SMBUSALERT_GPIO_CLK RCC_APB2Periph_GPIOB
279 #define LM75_I2C_DR ((uint32_t)0x40005410)
280
281 #define LM75_DMA_CLK RCC_AHBPeriph_DMA1
282 #define LM75_DMA_TX_CHANNEL DMA1_Channel6
283 #define LM75_DMA_RX_CHANNEL DMA1_Channel7
284 #define LM75_DMA_TX_TCFLAG DMA1_FLAG_TC6
285 #define LM75_DMA_RX_TCFLAG DMA1_FLAG_TC7
286 /**
287 * @}
288 */
289 /**
290 * @}
291 */
292
293 /** @defgroup STM32100B_EVAL_LOW_LEVEL_Exported_Macros
294 * @{
295 */
296 /**
297 * @}
298 */
299
300 /** @defgroup STM32100B_EVAL_LOW_LEVEL_Exported_Functions
301 * @{
302 */
303 void STM_EVAL_LEDInit(Led_TypeDef Led);
304 void STM_EVAL_LEDOn(Led_TypeDef Led);
305 void STM_EVAL_LEDOff(Led_TypeDef Led);
306 void STM_EVAL_LEDToggle(Led_TypeDef Led);
307 void STM_EVAL_PBInit(Button_TypeDef Button, ButtonMode_TypeDef Button_Mode);
308 uint32_t STM_EVAL_PBGetState(Button_TypeDef Button);
309 void STM_EVAL_COMInit(COM_TypeDef COM, USART_InitTypeDef* USART_InitStruct);
310 void SD_LowLevel_DeInit(void);
311 void SD_LowLevel_Init(void);
312 void sFLASH_LowLevel_DeInit(void);
313 void sFLASH_LowLevel_Init(void);
314 void LM75_LowLevel_DeInit(void);
315 void LM75_LowLevel_Init(void);
316 /**
317 * @}
318 */
319
320 #ifdef __cplusplus
321 }
322 #endif
323
324 #endif /* __STM32100B_EVAL_H */
325 /**
326 * @}
327 */
328
329 /**
330 * @}
331 */
332
333 /**
334 * @}
335 */
336
337 /**
338 * @}
339 */
340
341 /******************* (C) COPYRIGHT 2011 STMicroelectronics *****END OF FILE****/