271 lines
6.9 KiB
C
271 lines
6.9 KiB
C
/**------------------历史版本信息-------------------------------------------------------
|
|
|
|
** 修 改 人:
|
|
|
|
** 版 本:
|
|
|
|
** 日 期:
|
|
|
|
** 描 述: 初始版本,TJA1042T CAN收发器
|
|
|
|
**-------------------------------------------------------------------------------------*/
|
|
#include "CanTrcv.h"
|
|
/***************************************************************************************/
|
|
static CanTrcv_WorkModeType SeCanTrcv_e_WorkMode;
|
|
static CanTrcv_WakeReasonType SeCanTrcv_e_WakeReason;
|
|
static CanTrcv_WakeModeType SeCanTrcv_e_WakeMode;
|
|
static ComUint8 SeCanTrcv_u_IsInit;
|
|
/****************************************************************************************
|
|
@函数名称 : void DeInitCanTrcv_Parameter(void)
|
|
|
|
@参数 : void
|
|
|
|
@返回值 : void
|
|
|
|
@描述 : 上电初始化CAN收发器模块所有参数
|
|
|
|
@最后编辑时间 : 2015/03/13
|
|
|
|
@版本 : V1.0
|
|
|
|
@备注 :
|
|
*****************************************************************************************/
|
|
void DeInitCanTrcv_Parameter(void)
|
|
{
|
|
SeCanTrcv_u_IsInit = COM_FALSE;
|
|
}
|
|
/****************************************************************************************
|
|
@函数名称 : void ReInitCanTrcv_Parameter(void)
|
|
|
|
@参数 : void
|
|
|
|
@返回值 : void
|
|
|
|
@描述 : 上电初始化CAN收发器模块所有参数
|
|
|
|
@最后编辑时间 : 2015/05/7
|
|
|
|
@版本 : V1.0
|
|
|
|
@备注 :
|
|
*****************************************************************************************/
|
|
void ReInitCanTrcv_Parameter(void)
|
|
{
|
|
SeCanTrcv_u_IsInit = COM_TRUE;
|
|
}
|
|
/****************************************************************************************
|
|
@函数名称 : void InitCanTrcv_Parameter(void)
|
|
|
|
@参数 : void
|
|
|
|
@返回值 : void
|
|
|
|
@描述 : 上电初始化CAN收发器模块所有参数
|
|
|
|
@最后编辑时间 : 2015/03/13
|
|
|
|
@版本 : V1.0
|
|
|
|
@备注 :
|
|
*****************************************************************************************/
|
|
void InitCanTrcv_Parameter(void)
|
|
{
|
|
SeCanTrcv_e_WorkMode = CANTRCV_STANDBY;
|
|
SeCanTrcv_e_WakeReason = CANTRCV_WAKE_BY_NONE;
|
|
SeCanTrcv_e_WakeMode = CANTRCV_WAKE_VIA_BUS;
|
|
SeCanTrcv_u_IsInit = COM_TRUE;
|
|
}
|
|
/****************************************************************************************
|
|
@函数名称 : void GetCanTrcv_WorkMode(CanTrcv_WorkModeType *LeCanTrcv_e_WorkModePtr)
|
|
|
|
@参数 : CanTrcv_WorkModeType *LeCanTrcv_e_WorkModePtr
|
|
|
|
@返回值 : void
|
|
|
|
@描述 : 获取CAN发收器工作模式
|
|
|
|
@最后编辑时间 : 2015/03/13
|
|
|
|
@版本 : V1.0
|
|
|
|
@备注 :
|
|
*****************************************************************************************/
|
|
void GetCanTrcv_WorkMode(CanTrcv_WorkModeType *LeCanTrcv_e_WorkModePtr)
|
|
{
|
|
*LeCanTrcv_e_WorkModePtr = SeCanTrcv_e_WorkMode;
|
|
}
|
|
/****************************************************************************************
|
|
@函数名称 : void SetCanTrcv_WorkMode(CanTrcv_WorkModeType LeCanTrcv_e_WorkMode)
|
|
|
|
@参数 : CanTrcv_WorkModeType LeCanTrcv_e_WorkMode
|
|
|
|
@返回值 : void
|
|
|
|
@描述 : 设置CAN发收器工作模式
|
|
|
|
@最后编辑时间 : 2015/03/13
|
|
|
|
@版本 : V1.0
|
|
|
|
@备注 :
|
|
*****************************************************************************************/
|
|
void SetCanTrcv_WorkMode(CanTrcv_WorkModeType LeCanTrcv_e_WorkMode)
|
|
{
|
|
if( CANTRCV_NORMAL == LeCanTrcv_e_WorkMode)
|
|
{
|
|
SET_CANTRCV_NORMAL();
|
|
SeCanTrcv_e_WorkMode = LeCanTrcv_e_WorkMode;
|
|
}
|
|
else if( CANTRCV_STANDBY == LeCanTrcv_e_WorkMode)
|
|
{
|
|
SET_CANTRCV_STANDBY();
|
|
SeCanTrcv_e_WorkMode = LeCanTrcv_e_WorkMode;
|
|
}
|
|
else
|
|
{
|
|
/*Avoid Warning*/
|
|
}
|
|
}
|
|
/****************************************************************************************
|
|
@函数名称 : void GetCanTrcv_WakeReason(CanTrcv_WakeReasonType *LeCanTrcv_e_WakeReasonPtr)
|
|
|
|
@参数 : CanTrcv_WakeReasonType *LeCanTrcv_e_WakeReasonPtr
|
|
|
|
@返回值 : void
|
|
|
|
@描述 : 获取CAN发收器唤醒源
|
|
|
|
@最后编辑时间 : 2015/03/13
|
|
|
|
@版本 : V1.0
|
|
|
|
@备注 :
|
|
*****************************************************************************************/
|
|
void GetCanTrcv_WakeReason(CanTrcv_WakeReasonType *LeCanTrcv_e_WakeReasonPtr)
|
|
{
|
|
*LeCanTrcv_e_WakeReasonPtr = SeCanTrcv_e_WakeReason;
|
|
}
|
|
/****************************************************************************************
|
|
@函数名称 : void ClearCanTrcv_WakeReason(void)
|
|
|
|
@参数 : void
|
|
|
|
@返回值 : void
|
|
|
|
@描述 : 清除CAN发收器唤醒源
|
|
|
|
@最后编辑时间 : 2015/03/13
|
|
|
|
@版本 : V1.0
|
|
|
|
@备注 :
|
|
*****************************************************************************************/
|
|
void ClearCanTrcv_WakeReason(void)
|
|
{
|
|
SeCanTrcv_e_WakeReason = CANTRCV_WAKE_BY_NONE;
|
|
}
|
|
/****************************************************************************************
|
|
@函数名称 : void SetCanTrcv_WakeMode(CanTrcv_WakeModeType LeCanTrcv_e_WakeMode)
|
|
|
|
@参数 : CanTrcv_WakeModeType LeCanTrcv_e_WakeMode
|
|
|
|
@返回值 : void
|
|
|
|
@描述 : 设置CAN发收器唤醒模式
|
|
|
|
@最后编辑时间 : 2015/03/13
|
|
|
|
@版本 : V1.0
|
|
|
|
@备注 :
|
|
*****************************************************************************************/
|
|
void SetCanTrcv_WakeMode(CanTrcv_WakeModeType LeCanTrcv_e_WakeMode)
|
|
{
|
|
(void)LeCanTrcv_e_WakeMode;
|
|
}
|
|
/****************************************************************************************
|
|
@函数名称 : void GetCanTrcv_WakeMode(CanTrcv_WakeModeType *LeCanTrcv_e_WakeModePtr)
|
|
|
|
@参数 : CanTrcv_WakeModeType *LeCanTrcv_e_WakeModePtr
|
|
|
|
@返回值 : void
|
|
|
|
@描述 : 获取CAN发收器唤醒模式
|
|
|
|
@最后编辑时间 : 2015/03/13
|
|
|
|
@版本 : V1.0
|
|
|
|
@备注 :
|
|
*****************************************************************************************/
|
|
void GetCanTrcv_WakeMode(CanTrcv_WakeModeType *LeCanTrcv_e_WakeModePtr)
|
|
{
|
|
*LeCanTrcv_e_WakeModePtr = SeCanTrcv_e_WakeMode;
|
|
}
|
|
/****************************************************************************************
|
|
@函数名称 : void CanTrcv_MainFunction(void)
|
|
|
|
@参数 : void
|
|
|
|
@返回值 : void
|
|
|
|
@描述 : CAN_TRCV_MAINFUCTION_CALL_CYCLE ms调用
|
|
|
|
@最后编辑时间 : 2015/03/13
|
|
|
|
@版本 : V1.0
|
|
|
|
@备注 :
|
|
*****************************************************************************************/
|
|
void CanTrcv_MainFunction(void)
|
|
{
|
|
if( COM_FALSE != SeCanTrcv_u_IsInit )
|
|
{
|
|
|
|
}
|
|
else
|
|
{
|
|
/*Avoid Warning*/
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|