8051-ELL库  beta 1.1.6
8051-ELL library API Document Center
ELL_TYPE.h
浏览该文件的文档.
1 /*-----------------------------------------------------------------------
2 | FILE DESCRIPTION |
3 -----------------------------------------------------------------------*/
4 /*----------------------------------------------------------------------
5  - File name : STC8x_TYPE.h
6  - Author : zeweni
7  - Update date : 2020.04.28
8  - Copyright(C) : 2020-2021 zeweni. All rights reserved.
9 -----------------------------------------------------------------------*/
10 /*------------------------------------------------------------------------
11 | COPYRIGHT NOTICE |
12 ------------------------------------------------------------------------*/
13 /*
14  * Copyright (C) 2021, zeweni (17870070675@163.com)
15 
16  * This file is part of 8051 ELL low-layer libraries.
17 
18  * 8051 ELL low-layer libraries is free software: you can redistribute
19  * it and/or modify it under the terms of the Apache-2.0 License.
20 
21  * 8051 ELL low-layer libraries is distributed in the hope that it will
22  * be useful,but WITHOUT ANY WARRANTY; without even the implied warranty
23  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
24  * Apache-2.0 License for more details.
25 
26  * You should have received a copy of the Apache-2.0 License.8051 ELL
27  * low-layer libraries. If not, see <http://www.apache.org/licenses/>.
28 **/
29 /*-----------------------------------------------------------------------
30 | INCLUDES |
31 -----------------------------------------------------------------------*/
32 #ifndef __ELL_TYPE_H_
33 #define __ELL_TYPE_H_
34 
35 /*-----------------------------------------------------------------------
36 | DATA |
37 -----------------------------------------------------------------------*/
38 /*
39  * If there is a conflict between the redefinition of RTOS and this,
40  * you can call the redefinition header file of RTO to replace it,
41  * or add this header file to RTOS and comment out the conflict.
42 **/
43 
44 /*--------------------------------------------------------
45 | @Description: Exact width signed integer types |
46 --------------------------------------------------------*/
47 
48 typedef signed char int8_t; // 8 bits
49 typedef signed int int16_t; // 16 bits
50 typedef signed long int32_t; // 32 bits
51 
52 typedef signed char int8; // 8 bits
53 typedef signed int int16; // 16 bits
54 typedef signed long int32; // 32 bits
55 
56 /*--------------------------------------------------------
57 | @Description: Volatile width signed integer types |
58 --------------------------------------------------------*/
59 
60 typedef volatile int8_t vint8_t; // 8 bits
61 typedef volatile int16_t vint16_t; // 16 bits
62 typedef volatile int32_t vint32_t; // 32 bits
63 
64 typedef volatile int8_t vint8; // 8 bits
65 typedef volatile int16_t vint16; // 16 bits
66 typedef volatile int32_t vint32; // 32 bits
67 
68 /*--------------------------------------------------------
69 | @Description: Exact width unsigned integer types |
70 --------------------------------------------------------*/
71 
72 typedef unsigned char uint8_t; // 8 bits
73 typedef unsigned int uint16_t; // 16 bits
74 typedef unsigned long uint32_t; // 32 bits
75 
76 typedef unsigned char u8; // 8 bits
77 typedef unsigned int u16; // 16 bits
78 typedef unsigned long u32; // 32 bits
79 
80 typedef unsigned char uint8; // 8 bits
81 typedef unsigned int uint16; // 16 bits
82 typedef unsigned long uint32; // 32 bits
83 
84 /*--------------------------------------------------------
85 | @Description: Volatile width unsigned integer types |
86 --------------------------------------------------------*/
87 
88 typedef volatile uint8_t vuint8_t; // 8 bits
89 typedef volatile uint16_t vuint16_t; // 16 bits
90 typedef volatile uint32_t vuint32_t; // 32 bits
91 
92 typedef volatile uint8_t vu8; // 8 bits
93 typedef volatile uint16_t vu16; // 16 bits
94 typedef volatile uint32_t vu32; // 32 bits
95 
96 typedef volatile uint8_t vuint8; // 8 bits
97 typedef volatile uint16_t vuint16; // 16 bits
98 typedef volatile uint32_t vuint32; // 32 bits
99 
100 /*--------------------------------------------------------
101 | @Description: IO definitions |
102 --------------------------------------------------------*/
103 
104 #define __I volatile // 'read only' permissions
105 #define __O volatile // 'write only' permissions
106 #define __IO volatile // 'read / write' permissions
107 
108 
109 #endif
110 /*-----------------------------------------------------------------------
111 | END OF FLIE (C) COPYRIGHT Gevico Electronics |
112 -----------------------------------------------------------------------*/
unsigned long uint32_t
Definition: ELL_TYPE.h:74
volatile int8_t vint8_t
Definition: ELL_TYPE.h:60
signed char int8
Definition: ELL_TYPE.h:52
unsigned int uint16_t
Definition: ELL_TYPE.h:73
volatile uint8_t vuint8
Definition: ELL_TYPE.h:96
signed long int32_t
Definition: ELL_TYPE.h:50
unsigned long u32
Definition: ELL_TYPE.h:78
unsigned int uint16
Definition: ELL_TYPE.h:81
unsigned long uint32
Definition: ELL_TYPE.h:82
unsigned int u16
Definition: ELL_TYPE.h:77
volatile int32_t vint32
Definition: ELL_TYPE.h:66
volatile int32_t vint32_t
Definition: ELL_TYPE.h:62
volatile uint8_t vuint8_t
Definition: ELL_TYPE.h:88
volatile uint16_t vuint16_t
Definition: ELL_TYPE.h:89
signed int int16_t
Definition: ELL_TYPE.h:49
volatile uint32_t vuint32
Definition: ELL_TYPE.h:98
volatile int16_t vint16_t
Definition: ELL_TYPE.h:61
volatile uint32_t vuint32_t
Definition: ELL_TYPE.h:90
volatile int8_t vint8
Definition: ELL_TYPE.h:64
unsigned char uint8_t
Definition: ELL_TYPE.h:72
signed int int16
Definition: ELL_TYPE.h:53
signed long int32
Definition: ELL_TYPE.h:54
volatile int16_t vint16
Definition: ELL_TYPE.h:65
volatile uint16_t vuint16
Definition: ELL_TYPE.h:97
unsigned char uint8
Definition: ELL_TYPE.h:80
unsigned char u8
Definition: ELL_TYPE.h:76
signed char int8_t
Definition: ELL_TYPE.h:48
volatile uint16_t vu16
Definition: ELL_TYPE.h:93
volatile uint32_t vu32
Definition: ELL_TYPE.h:94
volatile uint8_t vu8
Definition: ELL_TYPE.h:92