?? canapp.h
字號:
/****************************************Copyright (c)**************************************************
** 廣州周立功單片機發展有限公司
** 研 究 所
** 產品一部
** http://www.zlgmcu.com
**-----------------------------------------------------------文件信息--------------------------------------------------------------------------------
** 文 件 名: CANAPP.H
** 版 本: v1.0
** 日 期: 2004年2月23日
** 描 述: CAN模塊應用接口函數定義頭文件。
********************************************************************************************************/
#ifndef _CANAPP_H_
#define _CANAPP_H_
#ifndef _CANAPP_GLOBAL_
#define CANAPP_GLOBAL extern
#else
#define CANAPP_GLOBAL
#endif
//數據類型定義
/**********************************************************************************************************
** 在本驅動里應用一個接收環形緩沖區,來存放接收到的邋錍AN數據數據,環形緩沖區的大小在CUSTOM.H中定義,下
** 面是環形緩沖區的數據結構
************************************************************************************************************/
typedef struct _RcvCANDataCycleBuf_
{
UINT32 WritePoint1 :8; //CAN1的寫指針
UINT32 WritePoint2 :8;
UINT32 WritePoint3 :8;
UINT32 WritePoint4 :8;
UINT32 ReadPoint1 :8; //CAN1的讀指針
UINT32 ReadPoint2 :8;
UINT32 ReadPoint3 :8;
UINT32 ReadPoint4 :8;
UINT32 FullFlag1 :8; //CAN1緩沖區滿標志
UINT32 FullFlag2 :8;
UINT32 FullFlag3 :8;
UINT32 FullFlag4 :8;
stcRxBUF RcvBuf[CAN_MAX_NUM][USE_CAN_RCV_BUF_SIZE];
}stcRcvCANCyBuf,*P_stcRcvCANCyBuf;
//應用環形緩沖區定義
CANAPP_GLOBAL stcRcvCANCyBuf CANRcvBufApp;
//應用常量定義
CANAPP_GLOBAL const UINT32 USE_MOD_CAN[CAN_MAX_NUM];
CANAPP_GLOBAL const UINT32 USE_EWL_CAN[CAN_MAX_NUM];
CANAPP_GLOBAL const UINT32 USE_INT_CAN[CAN_MAX_NUM];
CANAPP_GLOBAL const UINT32 USE_TPM_CAN[CAN_MAX_NUM];
CANAPP_GLOBAL const UINT32 USE_BTR_CAN[CAN_MAX_NUM];
CANAPP_GLOBAL const UINT32 USE_SLP_MOD_CAN[CAN_MAX_NUM];
/*
***********************************************************************************************************
**函數原型 : void InitCAN(eCANNUM CanNum)
**參數說明 : CanNum -->> CAN控制器,值不能大于CAN_MAX_NUM 規定的值
**返回值 : 無
**說 明 : 本函數用于初始化CAN控制器
************************************************************************************************************/
CANAPP_GLOBAL void InitCAN(eCANNUM CanNum) ;
/*
***********************************************************************************************************
**函數原型 : UINT32 CANSendData(eCANNUM CanNum,UINT32 Cmd,P_stcTxBUF Buf)
**參數說明 : CanNum -->> CAN控制器,值不能大于CAN_MAX_NUM 規定的值
Cmd à> 發送命令字
Buf à> 要發送的數據
**返回值 : 無
**說 明 : 本函數用于將數據發送到CAN總線
************************************************************************************************************/
CANAPP_GLOBAL UINT32 CANSendData(eCANNUM CanNum,UINT32 Cmd,P_stcTxBUF Buf);
/*
***********************************************************************************************************
**函數原型 : void CANIntPrg(void)
**參數說明 : 無
**返回值 : 無
**說 明 : CAN控制器中斷處理函數
************************************************************************************************************/
CANAPP_GLOBAL __irq void CANIntPrg(void);
/*
***********************************************************************************************************
**函數原型 : UINT32 ReadCANRcvCyBuf(eCANNUM CanNum,stcRxBUF *Buf)
**參數說明 : CanNum -->> CAN控制器,值不能大于CAN_MAX_NUM 規定的值
Buf à> 使用驅動接收到的緩沖區數據
**返回值 : =0,驅動接收到數據。
!=0,驅動沒接收到數據。
**說 明 : 本函數用于用戶調用使用CAN驅動接收到的數據。
************************************************************************************************************/
CANAPP_GLOBAL UINT32 ReadCANRcvCyBuf(eCANNUM CanNum,stcRxBUF *Buf);
/*
***********************************************************************************************************
**函數原型 : void WriteCANRcvCyBuf(eCANNUM CanNum)
**參數說明 : CanNum -->> CAN控制器,值不能大于CAN_MAX_NUM 規定的值
**返回值 :
**說 明 : 本函數用于驅動將收到的CAN數據寫入環形緩沖區
************************************************************************************************************/
CANAPP_GLOBAL void WriteCANRcvCyBuf(eCANNUM CanNum);
#endif
/*********************************************************************************************************
** End Of File
********************************************************************************************************/
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -