basictyp.h
来自「ertfs文件系统里面既有完整ucos程序」· C头文件 代码 · 共 142 行
H
142 行
#ifndef __BASIC_TYPE_H__
#define __BASIC_TYPE_H__
/*
*************************************************************************
basic typedefs
*************************************************************************
*/
typedef signed char INT8;
typedef signed short INT16;
typedef signed long INT32;
typedef signed char * PINT8;
typedef signed short * PINT16;
typedef signed long * PINT32;
typedef unsigned char UINT8;
typedef unsigned short UINT16;
typedef unsigned long UINT32;
typedef unsigned char * PUINT8;
typedef unsigned short * PUINT16;
typedef unsigned long * PUINT32;
typedef unsigned char BOOLEAN;
/*
*************************************************************************
basic typedefs for structures
*************************************************************************
*/
#ifdef BIG_ENDIAN
typedef union {
struct
{
INT8 Type;
INT8 Index;
} Descriptor;
struct
{
INT8 tx0; // MSB for 8051 Keil C
INT8 tx1;
INT8 endp;
INT8 c0; // LSB for 8051 Keil C
} chars;
struct
{
INT8 c3; // MSB for 8051 Keil C
INT8 c2;
INT8 c1;
INT8 c0; // LSB for 8051 Keil C
} chars0;
struct
{
INT16 i1; // MSW for 8051 keil C
INT16 i0; // LSW for 8051 Keil C
} ints;
INT32 u0;
} FLEXI_INT32;
typedef union {
struct
{
INT8 c1; // MSB for 8051 Keil C
INT8 c0; // LSB for 8051 Keil C
} chars;
INT16 i0;
} FLEXI_INT16, * PFLEXI_INT16;
#else // Little Endian
typedef __packed union {
__packed struct
{
INT8 Type;
INT8 Index;
} Descriptor;
__packed struct
{
INT8 endp;
INT8 c0;
INT8 tx0;
INT8 tx1;
} chars;
__packed struct
{
INT8 c0; // LSB
INT8 c1;
INT8 c2;
INT8 c3; // MSB
} chars0;
__packed struct
{
INT16 i0; // LSW
INT16 i1; // MSW
} ints;
INT32 u0;
} FLEXI_INT32;
typedef union {
struct
{
INT8 c0; // LSB for 8051 Keil C
INT8 c1; // MSB for 8051 Keil C
} chars;
INT16 i0;
} FLEXI_INT16, * PFLEXI_INT16;
#endif
#define DATA_SEG data
#define BDATA_SEG bdata
#define IDATA_SEG idata
#define XDATA_SEG xdata
#ifdef GLOBAL_EXT
#define BIT_EXT sbit
#define STRUC_EXT
#define INT8_EXT INT8
#define INT16_EXT INT16
#define INT32_EXT INT32
#else
#define BIT_EXT extern bit
#define STRUC_EXT extern
#define INT8_EXT extern INT8
#define INT16_EXT extern INT16
#define INT32_EXT extern INT32
#endif
#endif
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?