Can Get Set Configuration
This reference collection includes Vector documentation reproduced with permission. Snippets may require configuration-specific symbols and are not all standalone programs. Sources and validation limits.
Syntax
long canGetConfiguration(long channel, canSettings settings);
long canSetConfiguration(long channel, canSettings settings);
Function
The CAN controller parameters can be set or read. canSetConfigurationperforms an automatic reset of the CAN controller.
Parameters
Channel
The CAN channel.
struct canSettings
{
float baudrate; //in bit/s
unsigned char tseg1, tseg2; //length of the time segments 1 and 2 in time quanta
unsigned char sjw; //sync jump width in time quanta
unsigned char sam; //number of sampling points (1 or 3)
unsigned int flags; //see description below
};
Flags for canGetConfiguration:
Bit Position | Value, Description |
|---|---|
0, 1 | 0: unknown transceiver 1: Low speed 2: Single wire 3: High speed |
8 | 0x100: The channel is configured for CAN FD |
All others | Reserved |
Flags for canSetConfiguration:
Bit Position | Value, Description |
|---|---|
0 | 0: Normal mode 1: Silent mode (acknowledge not created) |
All others | Reserved, and must be 0. |
Return Values
1 = success0 = error
int ret;
int channel = 1;
canSettings settings;
settings.baudrate = 1000000;
settings.tseg1=5;
settings.tseg2=2;
settings.sjw=2;
settings.sam=1;
settings.flags = 0;
write("Set 1 MB");
ret = canSetConfiguration(channel, settings);
ret = canGetConfiguration(channel, settings);
if (ret) {
write("Settings: baud= %f, tseg1 = %d, tseg2= %d, sjw = %d, sam = %d, flags = 0x%x",settings.baudrate,
settings.tseg1, settings.tseg2, settings.sjw, settings.sam, settings.flags);
}
Source detail restored from the authorized CANoe 12 help. Hardware support and API availability must be checked against the installed product version.