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

📄 linmsg.c

📁 摩托罗拉公司发布的QL4的Lin总线kit,freescale网站上花钱买的
💻 C
字号:
/******************************************************************************
*
*       Copyright (C) 2003 Motorola, Inc.
*       All Rights Reserved
*
* Filename:     $RCSfile: LINmsg.c,v $
* Author:       $Author: r57404 $
* Locker:       $Locker:  $
* State:        $State: Exp $
* Revision:     $Revision: 1.3 $
*
* Functions:    LIN header file for message configuration
*
* History:      Use the RCS command log to display revision history
*               information.
*
* Description:  
*
* Notes:        Users should alter this file to define the required LIN messages
*
*
******************************************************************************/

//includes				
#include "LINdriver.h"

/*************** LIN Frame setup dependant variables ***********************************/
/*																					   */			
/* This is where the user will define the frames used in the application               */
/* 																					   */
/***************************************************************************************/

//Define what messages will be used in the application, as "Message0xID", where ID is the 
//message id in hex with the parity bits included.
//Define the frame data field for each message - the data field can be 2, 4 or 8 bytes long.

U8 volatile Message0x99[2];			// id 0x19 = 0x99 with parity
U8 volatile Message0x1A[2];			// id 0x1A = 0x1A with parity
U8 volatile Message0x5B[2];			// id 0x1B = 0x5B with parity
U8 volatile Message0xD8[2]; 		// id 0x18 = 0xD8 with parity

/* Pointer array pointing to all frames, must be setup in the same order as IdTbl[] and MessageCountTbl[] */
U8 volatile * MessagePointerTbl[] = {Message0xD8, Message0x99, Message0x1A, Message0x5B};  

/* Relevant identifier table (array), must be setup in the same order as *MessagePointerTbl[] and MessageCountTbl[] */
/* Remember that the id must have parity bits included. */
U8 const near IdTbl[] = {0xD8, 0x99, 0x1A, 0x5B};

/* Table below defines number of bytes in the message data and shows if the message should be sent or received. */
/* The LSHB is the length of data frame +1 (checksum) (e.g. Message0x20[4]=> LSHB= 5) */
/*LSHB = Byte count incl Checksum;     MSHB =>F=Ignore, 1 = Receive,  0 = Send;    
Must be setup in the same order as .....*/
U8 const near MessageCountTbl[] = {0xF3, 0xF3, 0xF3, 0xF3}; 

//LIN_LIST_SIZE is the number of Id:s in the IdTbl[]
#define LIN_LIST_SIZE   (( sizeof(IdTbl)) / sizeof( IdTbl[0] ) )

//No_of_Ids is the number of Ids in IdTbl[]
U8 const No_of_Ids = LIN_LIST_SIZE;

U8 volatile LinMsgStatus[LIN_LIST_SIZE];  //to store message status, e.g. LIN_MSG_NODATA or LIN_MSG_UPDATED

/*********************** END LIN Frame setup dependant variables. ************************/

⌨️ 快捷键说明

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