#include "stdafx.h" #include ".\simulatecan.h" CSimulateCan::CSimulateCan() { m_dwDevType = 9; //设备类型USBCAN2 //init_config.Filter = 1; //单滤波 //init_config.Mode = 0; //正常模式 //init_config.Reserved = 0; } CSimulateCan::~CSimulateCan() { } BOOL CSimulateCan::LoadDLL() { return TRUE; } BOOL CSimulateCan::OpenDevice(DWORD devInd) { /*if (m_wrapper.VCI_OpenDevice(m_dwDevType, devInd, 0) != STATUS_OK) return FALSE;*/ return TRUE; } void CSimulateCan::CloseDevice(DWORD devInd) { /*m_wrapper.VCI_CloseDevice(m_dwDevType, devInd);*/ } BOOL CSimulateCan::InitCAN(DWORD devInd, DWORD CANInd, PVCI_INIT_CONFIG pInitConfig) { //init_config.AccCode = pInitConfig->AccCode; //init_config.AccMask = pInitConfig->AccMask; //init_config.Timing0 = pInitConfig->Timing0; //init_config.Timing1 = pInitConfig->Timing1; //if (m_wrapper.VCI_InitCAN(m_dwDevType, devInd, CANInd, &init_config) != STATUS_OK) // return FALSE; return TRUE; } BOOL CSimulateCan::StartCAN(DWORD devInd, DWORD CANInd) { /*if (m_wrapper.VCI_StartCAN(m_dwDevType, devInd, CANInd) != STATUS_OK) return FALSE;*/ return TRUE; } BOOL CSimulateCan::ResetCAN(DWORD devInd, DWORD CANInd) { /*if (m_wrapper.VCI_ResetCAN(m_dwDevType, devInd, CANInd) != STATUS_OK) return FALSE;*/ return TRUE; } BOOL CSimulateCan::ClearBuffer(DWORD devInd, DWORD CANInd) { /*if (m_wrapper.VCI_ClearBuffer(m_dwDevType, devInd, CANInd) != STATUS_OK) return FALSE;*/ return TRUE; } void CSimulateCan::ReadErrInfo(DWORD devInd, DWORD CANInd, PVCI_ERR_INFO pErrInfo) { /*m_wrapper.VCI_ReadErrInfo(m_dwDevType, devInd, CANInd, pErrInfo);*/ return; } BOOL CSimulateCan::ReadCANStatus(DWORD devInd, DWORD CANInd,PVCI_CAN_STATUS pCANStatus) { /*if (m_wrapper.VCI_ReadCANStatus(m_dwDevType, devInd, CANInd, pCANStatus) != STATUS_OK) return FALSE;*/ return TRUE; } ULONG CSimulateCan::GetReceiveNum(DWORD devInd, DWORD CANInd) { ULONG len = 1 /*m_wrapper.VCI_GetReceiveNum(m_dwDevType, devInd, CANInd)*/; return len; } ULONG CSimulateCan::Transmit(DWORD devInd, DWORD CANInd, PVCI_CAN_OBJ pSend,ULONG Len) { ULONG len = 1; /*VCI_CAN_OBJ_ZLG frameinfo; frameinfo.ID = pSend->ID; frameinfo.DataLen = pSend->DataLen; frameinfo.ExternFlag = pSend->ExternFlag; frameinfo.RemoteFlag = pSend->RemoteFlag; frameinfo.SendType = 0; frameinfo.TimeFlag = pSend->TimeFlag; frameinfo.TimeStamp = pSend->TimeStamp; memcpy(frameinfo.Data, pSend->Data, 8); memcpy(frameinfo.Reserved, pSend->Reserved, 3); len = m_wrapper.VCI_Transmit(m_dwDevType, devInd, CANInd, &frameinfo, Len);*/ return len; } ULONG CSimulateCan::Receive(DWORD devInd, DWORD CANInd, PVCI_CAN_OBJ pReceive,ULONG Len, INT WaitTime/* =-1 */) { ULONG len = 1; //VCI_CAN_OBJ_ZLG frameinfo[100]; //len = m_wrapper.VCI_Receive(m_dwDevType, devInd, CANInd, frameinfo, Len, WaitTime); //if (len > 0) //{ // for (int i=0;i