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

📄 itron.h

📁 仓储物流盘点机DT900源程序及编译环境。
💻 H
📖 第 1 页 / 共 2 页
字号:
/****************************************************************************/
/*                                                                          */
/*                                                                          */
/*              HI-SH7 header file (C language) ( Ver. 1.0 )                */
/*                                                                          */
/*                                                                          */
/*              Copyright (c)  Hitachi, Ltd. 1993.                          */
/*              Licensed Material of Hitachi, Ltd.                          */
/*                                                                          */
/*              HI-SH7(HS0700ITCN1SM) V1.0                                  */
/*                                                                          */
/*                                                                          */
/****************************************************************************/
/****************************************************************************/
/*SPECIFICATIONS ;                                                          */
/*  FILE      = itron.h ;                                                   */
/*  DATE      = 93/02/01 ;                                                  */
/*  AUTHOR    = Hitachi, Ltd. ;                                             */
/*  FUNCTION  = HI-SH7 header file (C language) ;                           */
/*  ATTRIBUTE = PUBLIC ;                                                    */
/*  HISTORY   = V1.0 ;                                                      */
/*END OF SPECIFICATIONS ;                                                   */
/****************************************************************************/
/****************************************************************************/
/*                                                                          */
/*                             type definition                              */
/*                                                                          */
/****************************************************************************/
/*--------------------------------- common ---------------------------------*/
typedef char            B;              /* signed 8 bit integer             */
typedef short           H;              /* signed 16 bit integer            */
typedef long            W;              /* signed 32 bit integer            */
typedef unsigned char   UB;             /* unsigned 8 bit integer           */
typedef unsigned short  UH;             /* unsigned 16 bit integer          */
typedef unsigned long   UW;             /* unsigned 32 bit integer          */
typedef char            VB;             /* variable data type (8 bit)       */
typedef short           VH;             /* variable data type (16 bit)      */
typedef long            VW;             /* variable data type (32 bit)      */
typedef void            *VP;            /* pointer to variable data type    */
typedef void            (*FP)();        /* program start address            */
typedef H               ID;             /* object ID (xxxid)                */
typedef H               HNO;            /* handler number                   */
typedef H               TPRI;           /* task priority                    */
typedef W               ER;             /* error code                       */
typedef W               FN;             /* function code                    */
typedef W               TMO;            /* time out                         */

/*------------------ data type related to task & handler -------------------*/
typedef void            TASK;           /* task                             */
typedef void            INTHDR;         /* interrupt handler                */
typedef void            TMRHDR;         /* timer handler                    */
typedef void            INIHDR;         /* initialization handler           */
typedef ER              SVCHDR;         /* extended SVC handler             */

/*---------------------- pointer to task & handler -------------------------*/
typedef TASK            (*TASKP)();     /* pointer to task                  */
typedef INTHDR          (*INTHDRP)();   /* pointer to interrupt handler     */
typedef TMRHDR          (*TMRHDRP)();   /* pointer to timer handler         */
typedef INIHDR          (*INIHDRP)();   /* pointer to initialize handler    */
typedef SVCHDR          (*SVCHDRP)();   /* pointer to extended SVC handler  */

/*----------------- data type related to SH architecture -------------------*/
typedef UW              SR;             /* SR                               */

/****************************************************************************/
/*                                                                          */
/*                   fixed number & packet form (common)                    */
/*                                                                          */
/****************************************************************************/
/*--------------------------------- whole ----------------------------------*/
#define NADR            (-1)            /* invalid address                  */
#define TRUE            1               /* true                             */
#define FALSE           0               /* false                            */

/*--------------------------------- tmout ----------------------------------*/
#define TMO_FEVR        (TMO)(-1)       /* forever wait                     */

/*--------------------------------- tskid ----------------------------------*/
#define TSK_SELF        (ID)0           /* self task                        */

/*--------------------------------- tskpri ---------------------------------*/
#define TPRI_INI        (TPRI)0         /* initial priority of starting task*/
#define TPRI_RUN        (TPRI)0         /* highest priority in running task */

/*--------------------------------- imask ----------------------------------*/
#define SR_IMS00        (SR)0x00000000  /* imask0                           */
#define SR_IMS01        (SR)0x00000001  /* imask1                           */
#define SR_IMS02        (SR)0x00000002  /* imask2                           */
#define SR_IMS03        (SR)0x00000003  /* imask3                           */
#define SR_IMS04        (SR)0x00000004  /* imask4                           */
#define SR_IMS05        (SR)0x00000005  /* imask5                           */
#define SR_IMS06        (SR)0x00000006  /* imask6                           */
#define SR_IMS07        (SR)0x00000007  /* imask7                           */
#define SR_IMS08        (SR)0x00000008  /* imask8                           */
#define SR_IMS09        (SR)0x00000009  /* imask9                           */
#define SR_IMS10        (SR)0x0000000a  /* imask10                          */
#define SR_IMS11        (SR)0x0000000b  /* imask11                          */
#define SR_IMS12        (SR)0x0000000c  /* imask12                          */
#define SR_IMS13        (SR)0x0000000d  /* imask13                          */
#define SR_IMS14        (SR)0x0000000e  /* imask14                          */
#define SR_IMS15        (SR)0x0000000f  /* imask15                          */

/*--------------------------------- tskstat --------------------------------*/
#define TTS_RDY         0x0010          /* READY                            */
#define TTS_WAI         0x0020          /* WAIT                             */
#define TTS_SUS         0x0040          /* SUSPEND                          */
#define TTS_WAS         0x0060          /* WAIT-SUSPEND                     */
#define TTS_DMT         0x0080          /* DORMANT                          */
#define TTS_STK         0x4000          /* STACK WAIT                       */
#define TTW_SLP         0x0100          /* wait (slp_tsk)                   */
#define TTW_WAI         0x0200          /* wait (wai_tsk)                   */
#define TTW_FLG         0x0400          /* wait (wai_flg)                   */
#define TTW_SEM         0x0800          /* wait (wai_sem)                   */
#define TTW_MBX         0x1000          /* wait (rcv_msg)                   */
#define TTW_MPL         0x2000          /* wait (get_blk)                   */

/*--------------------------------- wfmode ---------------------------------*/
#define TWF_ANDW        (UW)0x00000000  /* AND wait                         */
#define TWF_ORW         (UW)0x00000002  /* OR wait                          */
#define TWF_CLR         (UW)0x00000001  /* clear                            */

/*----------------------------- trace attribute ----------------------------*/
#define TATR_SVC        (UH)0x0001      /* call SVC                         */
#define TATR_RTN        (UH)0x0002      /* return SVC                       */
#define TATR_CONT       (UH)0x0003      /* continue task                    */
#define TATR_IDLE       (UH)0x0004      /* change idle                      */

/*--------------------------------- t_msg ----------------------------------*/
typedef struct  t_msg   {
            UW          msghead;        /* message head (OS management area)*/
            VB          msgcont[1];     /* message contents                 */
        } T_MSG;

/*-------------------- t_cio (for sample console driver) -------------------*/
typedef struct  t_cio   {
            UW          msghead;        /* message head (OS management area)*/
            FN          fncd;           /* function code (0:input, 1:output)*/
            ID          mbxid;          /* mailbox id (for end information) */
            union
            {
                struct
                {
                    B   inbuf;          /* input buffer                     */
                    UB  siossr;         /* serial I/O status (SCI SSR)      */
                } ci;
                struct
                {
                    B   *outbufp;       /* pointer to output buffer         */
                } co;
            } cio;
        } T_CIO;

/*--------------------------------- t_tim ----------------------------------*/
typedef struct  t_tim   {
            H           utime;          /* current date/time (upper)        */
            UW          ltime;          /* current date/time (lower)        */
        } T_TIM;

/*--------------------------------- t_ver ----------------------------------*/

⌨️ 快捷键说明

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