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

📄 linstd.h

📁 BCM 控制demo源代码
💻 H
字号:
#ifndef LINSTD_H
#define LINSTD_H

/******************************************************************************
*                                                       
*       Copyright (C) 2005 Freescale Semiconductor, Inc.
*       All Rights Reserved								              
*														                            
* Filename:     linstd.h                
*														                            
* Functions:    Define LIN driver data types
*														                            
* Description:
*														                            
* Notes:        
*														                            
******************************************************************************/

/********************************* HC12/S12/S12X ************************************/

typedef unsigned char LIN_BYTE;
typedef unsigned int  LIN_WORD;
typedef unsigned long LIN_DWORD;

#define LIN_ZPAGE   /* zero page for HC12 don't used */


/* disable interrupt */
#define CLRI()      { asm sei; }
/* enable interrupt */
#define SETI()      { asm cli; }

#define __lindecl       near                        /* non-banked function modifier       */
#define LIN_INTERRUPT   interrupt __lindecl void    /* interrupt service routine modifier */



/* Extern declaration of lincfg.c user-defined constants */

/* NB: equivalence with LIN_CfgConst definition in lincfg.c/l_cfg.c */
#if defined(USEXGATE)
#pragma CONST_SEG __GPAGE_SEG SHARED
#else 
#pragma CONST_SEG .linconst
#endif /*defined (USEXGATE)*/

extern const struct	
{	
#if defined(USEZEROPAGE)	
	unsigned char LIN_ZeroPage;	/* Zero Page Address */
#endif /* defined(USEZEROPAGE) */	
	unsigned int LIN_IdleTimeoutClocks;	/* number of LIN_IdleClock() calls per LIN idle timeout */
	unsigned int LIN_BaudRate;       	/* LIN baud rate setting */
	unsigned char LIN_SCIIntPriority;	
#if defined(MASTER)	
	unsigned char LIN_to_wakeup_delimiter;	
	unsigned char LIN_PIT_MicroCounterValue;	
	unsigned char LIN_PITIntPriority;	
#endif /* defined(MASTER) */	
} LIN_CfgConst;	
#pragma CONST_SEG DEFAULT

#if defined(LINAPI_1_0)
extern const l_u8               LinFlagLookup[];
extern const l_u8               LinSigMaxIdx;
extern       l_u8               LinSigFlags[];
#endif /* defined(LINAPI_1_0) */

#if defined(SLAVE)
#if defined(USEXGATE)
#pragma CONST_SEG __GPAGE_SEG SHARED
#endif /* defined(USEXGATE) */

extern const LINMsgIdType       LinMsgId[];
extern const LIN_MSGLENGTHTYPE  LinMsgLen[];

#if defined(USEXGATE)
#pragma CONST_SEG DEFAULT
#endif /* defined(USEXGATE) */
#endif /* defined(SLAVE) */

extern const LINMsgRefType      LinMsgBuf[];

#if defined(USEXGATE)
#pragma CONST_SEG __GPAGE_SEG SHARED
#endif /*defined (USEXGATE)*/

extern const LIN_BYTE           LinListSize;
extern const LIN_BYTE           LinLookupTable[];

#if defined(USEXGATE)
#pragma CONST_SEG DEFAULT
#endif /*defined (USEXGATE)*/

#if defined (USEXGATE)
extern const LINMsgRefType      XLinMsgBuf[];
#endif /*defined (USEXGATE)*/


#if defined(MASTER)

#if defined(USEXGATE)
#pragma CONST_SEG __GPAGE_SEG SHARED
#endif /* defined(USEXGATE) */

extern const LIN_MSGLENGTHTYPE  LinLengthTable[];
extern const LIN_BYTE           LIN_MTO_Counter[];
extern const LIN_WORD           LIN_MTO_Ticks[];

#if defined(USEXGATE)
#pragma CONST_SEG DEFAULT
#endif /* defined(USEXGATE) */

#endif /* defined(MASTER) */



extern       LINStatusType      LinMsgStatus[];

#endif /* !define (LINSTD_H) */

⌨️ 快捷键说明

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