I set CAN1 as a bus monitor looking for data from the Module,
I connected CAN0 to 9pinSubD pins 3,7,9
I connected Can1 to the same
I have +12V to pins 3-, 9+, to power the modul and SW CAN
I am seeing no activity
+++++++++++++++++++++++++++++++++++++++++start code
/*
Work in-progress. Attempting to see data on Can1/Bus Monitor.
*/
#include <cvirte.h>
#include <stdio.h> // Include file for printf
#include <stdlib.h> // Include file for strtol
#include <windows.h> // Include file for Win32 time functions
#include <userint.h>
#include <string.h>
#include <utility.h>
#include "Gm-Can-Test.h"
#include "nican.h" // Include file for NI-CAN functions and constants
/* NI-CAN Status */
NCTYPE_STATUS status=0;
/* NI-CAN handles */
NCTYPE_OBJH NetIntfObjhRx=0;
NCTYPE_OBJH NetIntfObjhTx=0;
int main (int argc, char *argv[])
{
int RunStatus = 0;
RunStatus = CanTest();
return RunStatus;
}
int CanTest (void)
{
char Interface1[6];
char TxString[80];
NCTYPE_UINT32 TransceiverMode;
NCTYPE_UINT32 TransceiverType;
int RunStatus = 0;
NCTYPE_CAN_DATA Transmit;
// Handle for Network Interface Object (receiver)
NCTYPE_OBJH RxHandle = 0;
// Handle for the CAN object (transmitter)
NCTYPE_OBJH TxHandle = 0;
NCTYPE_ATTRID AttrIdList[8];
NCTYPE_UINT32 AttrValueList[8];
NCTYPE_UINT32 Baudrate;
sprintf(Interface1,"CAN0");
/* Configure the 1. CAN Network Interface Object */
TransceiverMode = NC_TRANSCEIVER_TYPE_SW ;
status = ncSetAttribute (NetIntfObjhTx, NC_ATTR_TRANSCEIVER_TYPE,
sizeof(TransceiverMode), &TransceiverMode);
AttrIdList[0] = NC_ATTR_BAUD_RATE;
AttrValueList[0] = 33333;
AttrIdList[1] = NC_ATTR_START_ON_OPEN;
AttrValueList[1] = NC_TRUE;
AttrIdList[2] = NC_ATTR_READ_Q_LEN;
AttrValueList[2] = 10;
AttrIdList[3] = NC_ATTR_WRITE_Q_LEN;
AttrValueList[3] = 0;
AttrIdList[4] = NC_ATTR_CAN_COMP_STD;
AttrValueList[4] = 0;
AttrIdList[5] = NC_ATTR_CAN_MASK_STD;
AttrValueList[5] = NC_CAN_MASK_STD_DONTCARE;
AttrIdList[6] = NC_ATTR_CAN_COMP_XTD;
AttrValueList[6] = 0;
AttrIdList[7] = NC_ATTR_CAN_MASK_XTD;
AttrValueList[7] = NC_CAN_MASK_XTD_DONTCARE;
status = ncConfig(Interface1, 8, AttrIdList, AttrValueList);
TransceiverMode = NC_TRANSCEIVER_MODE_SW_WAKEUP;
status = ncSetAttribute(NetIntfObjhTx, NC_ATTR_TRANSCEIVER_MODE,
sizeof(TransceiverMode), &TransceiverMode);
status = ncConfig(Interface1, 8, AttrIdList, AttrValueList);
// Open Transmitting Objects
status = ncOpenObject("CAN0::XTD0x100", &TxHandle);
Transmit.Data[0] = 0x00;
Transmit.Data[1] = 0x00;
Transmit.Data[2] = 0x00;
Transmit.Data[3] = 0x00;
Transmit.Data[4] = 0x00;
Transmit.Data[5] = 0x00;
Transmit.Data[6] = 0x00;
Transmit.Data[7] = 0x00;
status = ncWrite (NetIntfObjhTx, sizeof(TxString), TxString);
TransceiverMode = NC_TRANSCEIVER_MODE_NORMAL ;
status = ncSetAttribute(NetIntfObjhTx, NC_ATTR_TRANSCEIVER_MODE,
sizeof(TransceiverMode), &TransceiverMode);
return RunStatus;
}
++++++++++++++++++++++++++++++++++++end code