?? 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_
{
INT32U WritePoint :8; //CAN的寫指針
INT32U ReadPoint :8; //CAN的讀指針
INT32U FullFlag :8; //CAN緩沖區滿標志
stcRxBUF RcvBuf[USE_CAN_cycRCV_BUF_SIZE];
}stcRcvCANCyBuf,*P_stcRcvCANCyBuf;
//應用環形緩沖區定義
CANAPP_GLOBAL stcRcvCANCyBuf CANRcvCyBufApp[2];
/*
***********************************************************************************************************
**函數原型 : void InitCAN(eCANNUM CanNum)
**參數說明 : CanNum -->> CAN控制器,值不能大于CAN_MAX_NUM 規定的值
**返回值 : 無
**說 明 : 本函數用于初始化CAN控制器
************************************************************************************************************/
CANAPP_GLOBAL void InitCAN(eCANNUM CanNum) ;
/*
***********************************************************************************************************
**函數原型 : void ConfigAFReg ()
**參數說明 :
**返回值 :
**說 明 : 本函數用于配置驗收過濾器
************************************************************************************************************
*/
CANAPP_GLOBAL void ConfigAFReg (void);
/*
***********************************************************************************************************
**函數原型 : void CANIntPrg(void)
**參數說明 : 無
**返回值 : 無
**說 明 : CAN控制器中斷處理函數
************************************************************************************************************/
CANAPP_GLOBAL void __irq CANIntPrg(void);
/*
***********************************************************************************************************
**函數原型 : INT32U WriteCanTxBuf(eCANNUM CanNum,INT32U TxBufNum,
INT32U TPM,stcRcvCANCyBuf *RcvCyBuf) ;
**參數說明 : CanNum -->> CAN控制器,值不能大于CAN_MAX_NUM 規定的值
TxBufNum -->> 選擇發送緩沖區
TPM -->> 發送優先級模式
Buf -->> 發送到總線的數據
**返回值 : =0;成功將數據寫入發送緩沖區
!=0;寫發送緩沖區操作失敗
**說 明 : 本函數用于向CAN發送緩沖區TxBUF寫入發送數據
***********************************************************************************************************
*/
CANFUNC_GLOBAL void WriteCanTxBuf(eCANNUM CanNum,INT32U TxBufNum,INT32U TPM,stcTxBUF *RcvCyBuf);
/*
***********************************************************************************************************
**函數原型 : void CANRxtoTxDataConvertion (void *desBuf, void *srcBuf )
**參數說明 : desBuf ->目的數據
srcBuf ->源數據
**返回值 :
**說 明 :
***********************************************************************************************************
*/
CANFUNC_GLOBAL void CANRxtoTxDataConvertion ( stcTxBUF *desBuf, const stcRxBUF *srcBuf );
/*
***********************************************************************************************************
**函數原型 : void ReadCanRxBuf(eCANNUM CanNum,stcRcvCANCyBuf *RcvCyBuf)
**參數說明 : CanNum -->> CAN控制器,值不能大于CAN_MAX_NUM 規定的值
** RcvCyBuf-->> 目標環形緩沖區指針
**返回值 :
**說 明 : 本函數用于驅動將收到的CAN數據寫入環形緩沖區Buf->CANRcvFS =CANRFS(CanNum);
Buf->RxCANID =CANRID(CanNum);
Buf->RDA =CANRDA(CanNum);
Buf->RDB =CANRDB(CanNum);
************************************************************************************************************/
CANFUNC_GLOBAL INT32U ReadCanRxBuf(eCANNUM CanNum,stcRcvCANCyBuf *RcvCyBuf);
/*
***********************************************************************************************************
**函數原型 : INT32U CANSendData(eCANNUM CanNum,INT32U Cmd,P_stcTxBUF Buf)
**參數說明 : CanNum -->> CAN控制器,值不能大于CAN_MAX_NUM 規定的值
Cmd -->> 發送命令字
Buf -->> 要發送的數據
**返回值 : 無
**說 明 : 本函數用于將數據發送到CAN總線
************************************************************************************************************/
CANAPP_GLOBAL INT32U CANSendData(eCANNUM CanNum,INT32U Cmd, stcRxBUF *RxBuf);
/*********************************************************************************************************
** End Of File
********************************************************************************************************/
#endif
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -