1 /******************** (C) COPYRIGHT 2008 STMicroelectronics ********************
\r
2 * File Name : stm32f10x_type.h
\r
3 * Author : MCD Application Team
\r
6 * Description : This file contains all the common data types used for the
\r
7 * STM32F10x firmware library.
\r
8 ********************************************************************************
\r
9 * THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS
\r
10 * WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME.
\r
11 * AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT,
\r
12 * INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE
\r
13 * CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING
\r
14 * INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.
\r
15 *******************************************************************************/
\r
17 /* Define to prevent recursive inclusion -------------------------------------*/
\r
18 #ifndef __STM32F10x_TYPE_H
\r
19 #define __STM32F10x_TYPE_H
\r
21 /* Includes ------------------------------------------------------------------*/
\r
22 /* Exported types ------------------------------------------------------------*/
\r
23 typedef signed long s32;
\r
24 typedef signed short s16;
\r
25 typedef signed char s8;
\r
27 typedef signed long const sc32; /* Read Only */
\r
28 typedef signed short const sc16; /* Read Only */
\r
29 typedef signed char const sc8; /* Read Only */
\r
31 typedef volatile signed long vs32;
\r
32 typedef volatile signed short vs16;
\r
33 typedef volatile signed char vs8;
\r
35 typedef volatile signed long const vsc32; /* Read Only */
\r
36 typedef volatile signed short const vsc16; /* Read Only */
\r
37 typedef volatile signed char const vsc8; /* Read Only */
\r
39 typedef unsigned long u32;
\r
40 typedef unsigned short u16;
\r
41 typedef unsigned char u8;
\r
43 typedef unsigned long const uc32; /* Read Only */
\r
44 typedef unsigned short const uc16; /* Read Only */
\r
45 typedef unsigned char const uc8; /* Read Only */
\r
47 typedef volatile unsigned long vu32;
\r
48 typedef volatile unsigned short vu16;
\r
49 typedef volatile unsigned char vu8;
\r
51 typedef volatile unsigned long const vuc32; /* Read Only */
\r
52 typedef volatile unsigned short const vuc16; /* Read Only */
\r
53 typedef volatile unsigned char const vuc8; /* Read Only */
\r
55 typedef enum {FALSE = 0, TRUE = !FALSE} bool;
\r
57 typedef enum {RESET = 0, SET = !RESET} FlagStatus, ITStatus;
\r
59 typedef enum {DISABLE = 0, ENABLE = !DISABLE} FunctionalState;
\r
60 #define IS_FUNCTIONAL_STATE(STATE) (((STATE) == DISABLE) || ((STATE) == ENABLE))
\r
62 typedef enum {ERROR = 0, SUCCESS = !ERROR} ErrorStatus;
\r
64 #define U8_MAX ((u8)255)
\r
65 #define S8_MAX ((s8)127)
\r
66 #define S8_MIN ((s8)-128)
\r
67 #define U16_MAX ((u16)65535u)
\r
68 #define S16_MAX ((s16)32767)
\r
69 #define S16_MIN ((s16)-32768)
\r
70 #define U32_MAX ((u32)4294967295uL)
\r
71 #define S32_MAX ((s32)2147483647)
\r
72 #define S32_MIN ((s32)-2147483648)
\r
74 /* Exported constants --------------------------------------------------------*/
\r
75 /* Exported macro ------------------------------------------------------------*/
\r
76 /* Exported functions ------------------------------------------------------- */
\r
78 #endif /* __STM32F10x_TYPE_H */
\r
80 /******************* (C) COPYRIGHT 2008 STMicroelectronics *****END OF FILE****/
\r