Mercurial > ~darius > hgwebdir.cgi > stm32temp
comparison libs/STM32F10x_StdPeriph_Lib_V3.5.0/Utilities/STM32_EVAL/STM32100E_EVAL/stm32100e_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 stm32100e_eval.h | |
4 * @author MCD Application Team | |
5 * @version V4.5.0 | |
6 * @date 07-March-2011 | |
7 * @brief This file contains definitions for STM32100E_EVAL's Leds, push-buttons | |
8 * COM ports, 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>© COPYRIGHT 2011 STMicroelectronics</center></h2> | |
21 ****************************************************************************** | |
22 */ | |
23 | |
24 /* Define to prevent recursive inclusion -------------------------------------*/ | |
25 #ifndef __STM32100E_EVAL_H | |
26 #define __STM32100E_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 STM32100E_EVAL | |
44 * @{ | |
45 */ | |
46 | |
47 /** @addtogroup STM32100E_EVAL_LOW_LEVEL | |
48 * @{ | |
49 */ | |
50 | |
51 /** @defgroup STM32100E_EVAL_LOW_LEVEL_Exported_Types | |
52 * @{ | |
53 */ | |
54 /** | |
55 * @} | |
56 */ | |
57 | |
58 /** @defgroup STM32100E_EVAL_LOW_LEVEL_Exported_Constants | |
59 * @{ | |
60 */ | |
61 /** @addtogroup STM32100E_EVAL_LOW_LEVEL_LED | |
62 * @{ | |
63 */ | |
64 #define LEDn 4 | |
65 | |
66 #define LED1_PIN GPIO_Pin_6 | |
67 #define LED1_GPIO_PORT GPIOF | |
68 #define LED1_GPIO_CLK RCC_APB2Periph_GPIOF | |
69 | |
70 #define LED2_PIN GPIO_Pin_7 | |
71 #define LED2_GPIO_PORT GPIOF | |
72 #define LED2_GPIO_CLK RCC_APB2Periph_GPIOF | |
73 | |
74 #define LED3_PIN GPIO_Pin_8 | |
75 #define LED3_GPIO_PORT GPIOF | |
76 #define LED3_GPIO_CLK RCC_APB2Periph_GPIOF | |
77 | |
78 #define LED4_PIN GPIO_Pin_9 | |
79 #define LED4_GPIO_PORT GPIOF | |
80 #define LED4_GPIO_CLK RCC_APB2Periph_GPIOF | |
81 | |
82 /** | |
83 * @} | |
84 */ | |
85 | |
86 /** @addtogroup STM32100E_EVAL_LOW_LEVEL_BUTTON | |
87 * @{ | |
88 */ | |
89 #define BUTTONn 8 | |
90 | |
91 /** | |
92 * @brief Wakeup push-button | |
93 */ | |
94 #define WAKEUP_BUTTON_PIN GPIO_Pin_0 | |
95 #define WAKEUP_BUTTON_GPIO_PORT GPIOA | |
96 #define WAKEUP_BUTTON_GPIO_CLK RCC_APB2Periph_GPIOA | |
97 #define WAKEUP_BUTTON_EXTI_LINE EXTI_Line0 | |
98 #define WAKEUP_BUTTON_EXTI_PORT_SOURCE GPIO_PortSourceGPIOA | |
99 #define WAKEUP_BUTTON_EXTI_PIN_SOURCE GPIO_PinSource0 | |
100 #define WAKEUP_BUTTON_EXTI_IRQn EXTI0_IRQn | |
101 /** | |
102 * @brief Tamper push-button | |
103 */ | |
104 #define TAMPER_BUTTON_PIN GPIO_Pin_13 | |
105 #define TAMPER_BUTTON_GPIO_PORT GPIOC | |
106 #define TAMPER_BUTTON_GPIO_CLK RCC_APB2Periph_GPIOC | |
107 #define TAMPER_BUTTON_EXTI_LINE EXTI_Line13 | |
108 #define TAMPER_BUTTON_EXTI_PORT_SOURCE GPIO_PortSourceGPIOC | |
109 #define TAMPER_BUTTON_EXTI_PIN_SOURCE GPIO_PinSource13 | |
110 #define TAMPER_BUTTON_EXTI_IRQn EXTI15_10_IRQn | |
111 /** | |
112 * @brief Key push-button | |
113 */ | |
114 #define KEY_BUTTON_PIN GPIO_Pin_8 | |
115 #define KEY_BUTTON_GPIO_PORT GPIOG | |
116 #define KEY_BUTTON_GPIO_CLK RCC_APB2Periph_GPIOG | |
117 #define KEY_BUTTON_EXTI_LINE EXTI_Line8 | |
118 #define KEY_BUTTON_EXTI_PORT_SOURCE GPIO_PortSourceGPIOG | |
119 #define KEY_BUTTON_EXTI_PIN_SOURCE GPIO_PinSource8 | |
120 #define KEY_BUTTON_EXTI_IRQn EXTI9_5_IRQn | |
121 /** | |
122 * @brief Joystick Right push-button | |
123 */ | |
124 #define RIGHT_BUTTON_PIN GPIO_Pin_13 | |
125 #define RIGHT_BUTTON_GPIO_PORT GPIOG | |
126 #define RIGHT_BUTTON_GPIO_CLK RCC_APB2Periph_GPIOG | |
127 #define RIGHT_BUTTON_EXTI_LINE EXTI_Line13 | |
128 #define RIGHT_BUTTON_EXTI_PORT_SOURCE GPIO_PortSourceGPIOG | |
129 #define RIGHT_BUTTON_EXTI_PIN_SOURCE GPIO_PinSource13 | |
130 #define RIGHT_BUTTON_EXTI_IRQn EXTI15_10_IRQn | |
131 /** | |
132 * @brief Joystick Left push-button | |
133 */ | |
134 #define LEFT_BUTTON_PIN GPIO_Pin_14 | |
135 #define LEFT_BUTTON_GPIO_PORT GPIOG | |
136 #define LEFT_BUTTON_GPIO_CLK RCC_APB2Periph_GPIOG | |
137 #define LEFT_BUTTON_EXTI_LINE EXTI_Line14 | |
138 #define LEFT_BUTTON_EXTI_PORT_SOURCE GPIO_PortSourceGPIOG | |
139 #define LEFT_BUTTON_EXTI_PIN_SOURCE GPIO_PinSource14 | |
140 #define LEFT_BUTTON_EXTI_IRQn EXTI15_10_IRQn | |
141 /** | |
142 * @brief Joystick Up push-button | |
143 */ | |
144 #define UP_BUTTON_PIN GPIO_Pin_15 | |
145 #define UP_BUTTON_GPIO_PORT GPIOG | |
146 #define UP_BUTTON_GPIO_CLK RCC_APB2Periph_GPIOG | |
147 #define UP_BUTTON_EXTI_LINE EXTI_Line15 | |
148 #define UP_BUTTON_EXTI_PORT_SOURCE GPIO_PortSourceGPIOG | |
149 #define UP_BUTTON_EXTI_PIN_SOURCE GPIO_PinSource15 | |
150 #define UP_BUTTON_EXTI_IRQn EXTI15_10_IRQn | |
151 /** | |
152 * @brief Joystick Down push-button | |
153 */ | |
154 #define DOWN_BUTTON_PIN GPIO_Pin_11 | |
155 #define DOWN_BUTTON_GPIO_PORT GPIOG | |
156 #define DOWN_BUTTON_GPIO_CLK RCC_APB2Periph_GPIOG | |
157 #define DOWN_BUTTON_EXTI_LINE EXTI_Line11 | |
158 #define DOWN_BUTTON_EXTI_PORT_SOURCE GPIO_PortSourceGPIOG | |
159 #define DOWN_BUTTON_EXTI_PIN_SOURCE GPIO_PinSource11 | |
160 #define DOWN_BUTTON_EXTI_IRQn EXTI15_10_IRQn | |
161 /** | |
162 * @brief Joystick Sel push-button | |
163 */ | |
164 #define SEL_BUTTON_PIN GPIO_Pin_7 | |
165 #define SEL_BUTTON_GPIO_PORT GPIOG | |
166 #define SEL_BUTTON_GPIO_CLK RCC_APB2Periph_GPIOG | |
167 #define SEL_BUTTON_EXTI_LINE EXTI_Line7 | |
168 #define SEL_BUTTON_EXTI_PORT_SOURCE GPIO_PortSourceGPIOG | |
169 #define SEL_BUTTON_EXTI_PIN_SOURCE GPIO_PinSource7 | |
170 #define SEL_BUTTON_EXTI_IRQn EXTI9_5_IRQn | |
171 /** | |
172 * @} | |
173 */ | |
174 | |
175 /** @addtogroup STM32100E_EVAL_LOW_LEVEL_COM | |
176 * @{ | |
177 */ | |
178 #define COMn 2 | |
179 | |
180 /** | |
181 * @brief Definition for COM port1, connected to USART1 | |
182 */ | |
183 #define EVAL_COM1 USART1 | |
184 #define EVAL_COM1_CLK RCC_APB2Periph_USART1 | |
185 #define EVAL_COM1_TX_PIN GPIO_Pin_9 | |
186 #define EVAL_COM1_TX_GPIO_PORT GPIOA | |
187 #define EVAL_COM1_TX_GPIO_CLK RCC_APB2Periph_GPIOA | |
188 #define EVAL_COM1_RX_PIN GPIO_Pin_10 | |
189 #define EVAL_COM1_RX_GPIO_PORT GPIOA | |
190 #define EVAL_COM1_RX_GPIO_CLK RCC_APB2Periph_GPIOA | |
191 #define EVAL_COM1_IRQn USART1_IRQn | |
192 | |
193 /** | |
194 * @brief Definition for COM port2, connected to USART2 | |
195 */ | |
196 #define EVAL_COM2 USART2 | |
197 #define EVAL_COM2_CLK RCC_APB1Periph_USART2 | |
198 #define EVAL_COM2_TX_PIN GPIO_Pin_2 | |
199 #define EVAL_COM2_TX_GPIO_PORT GPIOA | |
200 #define EVAL_COM2_TX_GPIO_CLK RCC_APB2Periph_GPIOA | |
201 #define EVAL_COM2_RX_PIN GPIO_Pin_3 | |
202 #define EVAL_COM2_RX_GPIO_PORT GPIOA | |
203 #define EVAL_COM2_RX_GPIO_CLK RCC_APB2Periph_GPIOA | |
204 #define EVAL_COM2_IRQn USART2_IRQn | |
205 | |
206 /** | |
207 * @} | |
208 */ | |
209 | |
210 /** @addtogroup STM32100E_EVAL_LOW_LEVEL_SD_FLASH | |
211 * @{ | |
212 */ | |
213 /** | |
214 * @brief SD SPI Interface pins | |
215 */ | |
216 #define SD_SPI SPI2 | |
217 #define SD_SPI_CLK RCC_APB1Periph_SPI2 | |
218 #define SD_SPI_SCK_PIN GPIO_Pin_13 /* PC.13 */ | |
219 #define SD_SPI_SCK_GPIO_PORT GPIOB /* GPIOB */ | |
220 #define SD_SPI_SCK_GPIO_CLK RCC_APB2Periph_GPIOB | |
221 #define SD_SPI_MISO_PIN GPIO_Pin_14 /* PC.14 */ | |
222 #define SD_SPI_MISO_GPIO_PORT GPIOB /* GPIOB */ | |
223 #define SD_SPI_MISO_GPIO_CLK RCC_APB2Periph_GPIOB | |
224 #define SD_SPI_MOSI_PIN GPIO_Pin_15 /* PB.15 */ | |
225 #define SD_SPI_MOSI_GPIO_PORT GPIOB /* GPIOB */ | |
226 #define SD_SPI_MOSI_GPIO_CLK RCC_APB2Periph_GPIOB | |
227 #define SD_CS_PIN GPIO_Pin_6 /* PG.06 */ | |
228 #define SD_CS_GPIO_PORT GPIOG /* GPIOG */ | |
229 #define SD_CS_GPIO_CLK RCC_APB2Periph_GPIOG | |
230 #define SD_DETECT_PIN GPIO_Pin_11 /* PF.11 */ | |
231 #define SD_DETECT_GPIO_PORT GPIOF /* GPIOF */ | |
232 #define SD_DETECT_GPIO_CLK RCC_APB2Periph_GPIOF | |
233 | |
234 /** | |
235 * @} | |
236 */ | |
237 | |
238 /** @addtogroup STM3210C_EVAL_LOW_LEVEL_I2C_EE | |
239 * @{ | |
240 */ | |
241 /** | |
242 * @brief I2C EEPROM Interface pins | |
243 */ | |
244 #define sEE_I2C I2C2 | |
245 #define sEE_I2C_CLK RCC_APB1Periph_I2C2 | |
246 #define sEE_I2C_SCL_PIN GPIO_Pin_10 /* PB.10 */ | |
247 #define sEE_I2C_SCL_GPIO_PORT GPIOB /* GPIOB */ | |
248 #define sEE_I2C_SCL_GPIO_CLK RCC_APB2Periph_GPIOB | |
249 #define sEE_I2C_SDA_PIN GPIO_Pin_11 /* PB.11 */ | |
250 #define sEE_I2C_SDA_GPIO_PORT GPIOB /* GPIOB */ | |
251 #define sEE_I2C_SDA_GPIO_CLK RCC_APB2Periph_GPIOB | |
252 #define sEE_M24C64_32 | |
253 | |
254 #define sEE_I2C_DMA DMA1 | |
255 #define sEE_I2C_DMA_CHANNEL_TX DMA1_Channel4 | |
256 #define sEE_I2C_DMA_CHANNEL_RX DMA1_Channel5 | |
257 #define sEE_I2C_DMA_FLAG_TX_TC DMA1_IT_TC4 | |
258 #define sEE_I2C_DMA_FLAG_TX_GL DMA1_IT_GL4 | |
259 #define sEE_I2C_DMA_FLAG_RX_TC DMA1_IT_TC5 | |
260 #define sEE_I2C_DMA_FLAG_RX_GL DMA1_IT_GL5 | |
261 #define sEE_I2C_DMA_CLK RCC_AHBPeriph_DMA1 | |
262 #define sEE_I2C_DR_Address ((uint32_t)0x40005810) | |
263 #define sEE_USE_DMA | |
264 | |
265 #define sEE_I2C_DMA_TX_IRQn DMA1_Channel4_IRQn | |
266 #define sEE_I2C_DMA_RX_IRQn DMA1_Channel5_IRQn | |
267 #define sEE_I2C_DMA_TX_IRQHandler DMA1_Channel4_IRQHandler | |
268 #define sEE_I2C_DMA_RX_IRQHandler DMA1_Channel5_IRQHandler | |
269 #define sEE_I2C_DMA_PREPRIO 0 | |
270 #define sEE_I2C_DMA_SUBPRIO 0 | |
271 | |
272 #define sEE_DIRECTION_TX 0 | |
273 #define sEE_DIRECTION_RX 1 | |
274 | |
275 /* Time constant for the delay caclulation allowing to have a millisecond | |
276 incrementing counter. This value should be equal to (System Clock / 1000). | |
277 ie. if system clock = 24MHz then sEE_TIME_CONST should be 24. */ | |
278 #define sEE_TIME_CONST 24 | |
279 | |
280 /** | |
281 * @} | |
282 */ | |
283 | |
284 /** @addtogroup STM32100E_EVAL_LOW_LEVEL_M25P_FLASH_SPI | |
285 * @{ | |
286 */ | |
287 /** | |
288 * @brief M25P FLASH SPI Interface pins | |
289 */ | |
290 #define sFLASH_SPI SPI1 | |
291 #define sFLASH_SPI_CLK RCC_APB2Periph_SPI1 | |
292 #define sFLASH_SPI_SCK_PIN GPIO_Pin_5 /* PA.05 */ | |
293 #define sFLASH_SPI_SCK_GPIO_PORT GPIOA /* GPIOA */ | |
294 #define sFLASH_SPI_SCK_GPIO_CLK RCC_APB2Periph_GPIOA | |
295 #define sFLASH_SPI_MISO_PIN GPIO_Pin_6 /* PA.06 */ | |
296 #define sFLASH_SPI_MISO_GPIO_PORT GPIOA /* GPIOA */ | |
297 #define sFLASH_SPI_MISO_GPIO_CLK RCC_APB2Periph_GPIOA | |
298 #define sFLASH_SPI_MOSI_PIN GPIO_Pin_7 /* PA.07 */ | |
299 #define sFLASH_SPI_MOSI_GPIO_PORT GPIOA /* GPIOA */ | |
300 #define sFLASH_SPI_MOSI_GPIO_CLK RCC_APB2Periph_GPIOA | |
301 #define sFLASH_CS_PIN GPIO_Pin_6 /* PE.06 */ | |
302 #define sFLASH_CS_GPIO_PORT GPIOE /* GPIOE */ | |
303 #define sFLASH_CS_GPIO_CLK RCC_APB2Periph_GPIOE | |
304 | |
305 /** | |
306 * @} | |
307 */ | |
308 | |
309 | |
310 /** @addtogroup STM32100E_EVAL_LOW_LEVEL_TSENSOR_I2C | |
311 * @{ | |
312 */ | |
313 /** | |
314 * @brief LM75 Temperature Sensor I2C Interface pins | |
315 */ | |
316 #define LM75_I2C I2C2 | |
317 #define LM75_I2C_CLK RCC_APB1Periph_I2C2 | |
318 #define LM75_I2C_SCL_PIN GPIO_Pin_10 /* PB.10 */ | |
319 #define LM75_I2C_SCL_GPIO_PORT GPIOB /* GPIOB */ | |
320 #define LM75_I2C_SCL_GPIO_CLK RCC_APB2Periph_GPIOB | |
321 #define LM75_I2C_SDA_PIN GPIO_Pin_11 /* PB.11 */ | |
322 #define LM75_I2C_SDA_GPIO_PORT GPIOB /* GPIOB */ | |
323 #define LM75_I2C_SDA_GPIO_CLK RCC_APB2Periph_GPIOB | |
324 #define LM75_I2C_SMBUSALERT_PIN GPIO_Pin_12 /* PB.12 */ | |
325 #define LM75_I2C_SMBUSALERT_GPIO_PORT GPIOB /* GPIOB */ | |
326 #define LM75_I2C_SMBUSALERT_GPIO_CLK RCC_APB2Periph_GPIOB | |
327 #define LM75_I2C_DR ((uint32_t)0x40005810) | |
328 | |
329 #define LM75_DMA_CLK RCC_AHBPeriph_DMA1 | |
330 #define LM75_DMA_TX_CHANNEL DMA1_Channel4 | |
331 #define LM75_DMA_RX_CHANNEL DMA1_Channel5 | |
332 #define LM75_DMA_TX_TCFLAG DMA1_FLAG_TC4 | |
333 #define LM75_DMA_RX_TCFLAG DMA1_FLAG_TC5 | |
334 | |
335 /** | |
336 * @} | |
337 */ | |
338 | |
339 /** | |
340 * @} | |
341 */ | |
342 | |
343 /** @defgroup STM32100E_EVAL_LOW_LEVEL_Exported_Macros | |
344 * @{ | |
345 */ | |
346 /** | |
347 * @} | |
348 */ | |
349 | |
350 /** @defgroup STM32100E_EVAL_LOW_LEVEL_Exported_Functions | |
351 * @{ | |
352 */ | |
353 void STM_EVAL_LEDInit(Led_TypeDef Led); | |
354 void STM_EVAL_LEDOn(Led_TypeDef Led); | |
355 void STM_EVAL_LEDOff(Led_TypeDef Led); | |
356 void STM_EVAL_LEDToggle(Led_TypeDef Led); | |
357 void STM_EVAL_PBInit(Button_TypeDef Button, ButtonMode_TypeDef Button_Mode); | |
358 uint32_t STM_EVAL_PBGetState(Button_TypeDef Button); | |
359 void STM_EVAL_COMInit(COM_TypeDef COM, USART_InitTypeDef* USART_InitStruct); | |
360 void SD_LowLevel_DeInit(void); | |
361 void SD_LowLevel_Init(void); | |
362 void sEE_LowLevel_DeInit(void); | |
363 void sEE_LowLevel_Init(void); | |
364 void sEE_LowLevel_DMAConfig(uint32_t pBuffer, uint32_t BufferSize, uint32_t Direction); | |
365 void sFLASH_LowLevel_DeInit(void); | |
366 void sFLASH_LowLevel_Init(void); | |
367 void LM75_LowLevel_DeInit(void); | |
368 void LM75_LowLevel_Init(void); | |
369 /** | |
370 * @} | |
371 */ | |
372 #ifdef __cplusplus | |
373 } | |
374 #endif | |
375 | |
376 #endif /* __STM32100E_EVAL_H */ | |
377 /** | |
378 * @} | |
379 */ | |
380 | |
381 /** | |
382 * @} | |
383 */ | |
384 | |
385 /** | |
386 * @} | |
387 */ | |
388 | |
389 /** | |
390 * @} | |
391 */ | |
392 | |
393 /******************* (C) COPYRIGHT 2011 STMicroelectronics *****END OF FILE****/ |