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