⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 datatype.h

📁 一个小型的嵌入式操作系统内核,可用于多种硬件平台
💻 H
字号:
/**************************************************************************************************
                                      EDL RTOS Kernel
                              (c) Copyright 2005, Wu Jun
                                    All Rights Reserved    
                For further information, please visit http://www.enjoydigitallife.com

* Description:      None
* History:          
    Date                         Remarks
    2005-01-06                   Created initial version
    2005-12-12                   Finished the version 2.01
**************************************************************************************************/


#ifndef DATATYPE_H
#define DATATYPE_H

typedef  unsigned char  U8;
typedef  unsigned short U16;
typedef  unsigned long  U32;
typedef  char           S8;
typedef  short          S16;
typedef  long           S32;
typedef  unsigned long  ERR;

#define     NULL                    0
#define     TRUE                    1
#define     FALSE                   0


#define     INFINITE_TIME            0xFFFFFFFF

/**************************************************************************************************
* define error code
**************************************************************************************************/
/* for all componets */
#define     ERR_SUCCESS              0x00000000
#define     ERR_INVALID_PARAM        0x00000001
#define     ERR_TIMEOUT              0x00000002
#define     ERR_MEM_ALLOC_FAIL       0x00000003
#define     ERR_TASK_IS_WAITING      0x00000004
#define     ERR_UNKNOWN              0xffffffff

/* for Task Management componet */
#define     ERR_INVALID_PRIO         0x00000100
#define     ERR_INVALID_STACK_SIZE   0x00000101
#define     ERR_ALLOC_STACK_FAIL     0x00000102
#define     ERR_OUT_OF_TASK_MAX_NUM  0x00000103
#define     ERR_TASK_READY           0x00000104
#define     ERR_TASK_SUSPENDED       0x00000105
#define     ERR_TSK_STATUS_ERROR     0x00000106
#define     ERR_INVALID_TSK_ID       0x00000107

/* for Event Management componet */
#define     ERR_INVALID_EVENT        0x00000200
#define     ERR_NO_EVENT             0x00000201     /* No events are available */

/* for Message Management componet */
#define     ERR_NO_MESSAGE           0x00000300
#define     ERR_BUF_OVERFLOW         0x00000301

/* for Semaphore Management componet */
#define     ERR_NO_SEM               0x00000400   
#define     ERR_OUT_OF_SEM_MAX_NUM   0x00000401
#define     ERR_SEM_DELETED      0x00000402   
#define     ERR_SEM_NOT_FOUND 0x00000403
#define     ERR_SEM_EXIST           0x00000404

/* For Mutex Management componet */
#define     ERR_OUT_OF_MU_MAX_NUM    0x00000500
#define     ERR_PROT_ERROR           0x00000501
#define     ERR_NO_MUTEX              0x00000502
#define     ERR_OWNER_ERROR        0x00000503
#define     ERR_MUTEX_DELETED     0x00000504
#define     ERR_TASK_DELETED       0x00000505
#define     ERR_MUTEX_NOT_FOUND     0x00000506
#define     ERR_MUTEX_EXIST           0x00000507

/* For Memory Management componet */
#define     ERR_OUT_OF_MEM_MAX_NUM    0x00000600


#endif          /* DATATYPE_H */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -