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

📄 structs.h

📁 在ARM7和UC/OSII的平台上实现了GPS自动报站的功能,涉及GPS模块LEA_4S的驱动,位置速寻算法,语音芯片ISD4004的录放音驱动,LED页面管理等等.从启动代码到操作系统的移植以及到业
💻 H
字号:
/****************************************************************
**                                                              *
**  FILE         :  Structs.H                                   *
**  COPYRIGHT    :  (c) 2001 .Xiamen Yaxon NetWork CO.LTD       *
**                                                              *
**                                                              *
**  By : CCH 2002.1.15                                          *
****************************************************************/

#ifndef DEF_STRUCTS
#define DEF_STRUCTS

#include "includes.h"

/*
********************************************************************************
*                  DEFINE HALF WORD UNION
********************************************************************************
*/
typedef union {
	INT16U     hword;
	struct {
		INT8U  low;
		INT8U  high;
	} bytes;
} HWORD_UNION;

/*
********************************************************************************
*                  DEFINE  WORD UNION
********************************************************************************
*/
typedef union {
	INT32U     word;
	struct {
		INT8U  lowest;
		INT8U  low;
		INT8U  high;
		INT8U  highest;
	} bytes;
} WORD_UNION;



/*
********************************************************************************
*                  DEFINE DATE STRUCT
********************************************************************************
*/
typedef struct {
    INT8U           year;
    INT8U           month;
    INT8U           day;
} DATE_STRUCT;

/*
********************************************************************************
*                  DEFINE TIME STRUCT
********************************************************************************
*/
typedef struct {
    INT8U           hour;
    INT8U           minute;
    INT8U           second;
} TIME_STRUCT;

/*
********************************************************************************
*                  DEFINE SYSTIME STRUCT
********************************************************************************
*/
typedef struct {
    DATE_STRUCT     date;
    TIME_STRUCT     time;
} SYSTIME_STRUCT;

typedef struct
{
   INT8U  LeftLa[4];
   INT8U  LeftLg[4];
   INT8U  RightLa[4];
   INT8U  RightLg[4];
}GPS_REGION;

/*
********************************************************************************
*                  DEFINE SYSTIME STRUCT MEMBERS
********************************************************************************
*/
#define  s_year             date.year
#define  s_mon              date.month
#define  s_day              date.day
#define  s_hour             time.hour
#define  s_min              time.minute
#define  s_sec              time.second

#define S_SYSTM             SYSTIME_STRUCT

/*
********************************************************************************
*                  DEFINE FUNCTION ENTRY STRUCT
********************************************************************************
*/
typedef struct {
    INT16U     index;
    void (* entryproc)(void);
} FUNCENTRY_STRUCT;

/*
********************************************************************************
*                  DEFINE SHORT MESSAGE STRUCT
********************************************************************************
*/
typedef struct {
    INT8U   PDUtype;                    /* Protocal data unit type */
    INT8U   DCS;                        /* Data coding scheme */
    INT8U   PID;                        /* Protocal Identifier */
    INT8U   timezone;                   /* time zone */
    INT8U   SCTS[12];                   /* Service center time stamp */
    INT8U   SCAL;                       /* Service Center address length */
    INT8U   SCA[22];                    /* Service Center address */
    INT8U   OAL;                        /* Originator address length */
    INT8U   OA[22];                     /* Originator address */
    INT8U   UDL;                        /* User data length */
    INT8U   UD[160];                    /* User data */
} SM_STRUCT;


/*
********************************************************************************
*                  DEFINE ASMRULE_STRUCT
********************************************************************************
*/
typedef struct {
    INT8U       c_flags;                /* c_convert0 + c_convert1 = c_flags */
    INT8U       c_convert0;             /* c_convert0 + c_convert2 = c_convert0 */
    INT8U       c_convert1;
    INT8U       c_convert2;
} ASMRULE_STRUCT;

typedef struct
{
   INT8U ac_year[2];
   INT8U ac_month[2];
   INT8U ac_day[2];
}ASCII_DATE;

typedef struct
{
   INT8U  ac_hour[2];
   INT8U  ac_minute[2];
   INT8U  ac_second[2];
}ASCII_TIME;


/*
********************************************************************************
*                  DEFINE CELL_STRUCT
********************************************************************************
*/
typedef  struct {
     INT16U  cur;
     INT16U  next;
     INT16U  last;
}CELL_STRUCT;

#endif

⌨️ 快捷键说明

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