Crate busmust_sys

Crate busmust_sys 

Source

Structs§

BMBitrate
CAN channel bitrate configuration, used by [super::api::BM_SetBitrate]
BMCanMessage
Busmust CAN Message concrete type, usually used as payload of BMData. The total length of this structure is 72B, it supports both classic and FD CAN messages.
BMCanStatusInfo
CAN channel status detailed information, retrieved by calling [super::api::BM_GetStatus], see ISO11898 for details.
BMCapability
Busmust Device capability flags, retrieved when enumerating devices using [super::api::BM_Enumerate].
BMChannelInfo
Channel information, created when enumerating devices by [super::api::BM_Enumerate] and used when opening device by [super::api::BM_OpenEx]
BMData
Busmust data, abstract structure which holds concrete payload messages of various types (i.e. CAN messages).
BMDataHeader
Busmust data header, each BMData contains a header which indicates payload information.
BMIsoTPStatus
ISO-TP status report, used by ISO-TP operation callback function.
BMIsotpConfig
ISOTP Protocol (See ISO15765-2 for details) configuration.
BMIsotpFlowControlConfig
BMIsotpTimeoutConfig
BMMessageId
Busmust CAN Message ID. You could also use an u32, but please take care of memory alignments.
BMRxFilter
CAN channel RX filter item structure, used by [super::api::BM_SetRxFilters] The filter support masking ID, flags and payload according to its type, in order for a message to be accepted, all the fields are masked using AND logic: (flags & filter.flags_mask == filter.flags_value) AND (ID & filter.id_mask == filter.id_value) AND (payload & filter.payload_mask == filter.payload_value)
BMRxMessageCtrl
Busmust RX CAN Message control fields. The first few fields (until FDF) are bit compatible with BMTxMessageCtrl.
BMTxMessageCtrl
Busmust TX CAN Message control fields. The first few fields (until FDF) are bit compatible with BMRxMessageCtrl.
BMTxTask
CAN channel TX task item structure, used by [super::api::BM_SetTxTasks] Once the CAN device is armed with TX tasks, it will try to parse the TX task and send CAN messages automatically. The difference with a software triggered CAN message in BusMaster is that hardware triggered CAN messages are more precise in time and could reach a higher throughput.
BMTxTaskIncDataPattern
BMTxTaskIncIdPattern
BMTxTaskRndDataPattern
BMTxTaskRndIdPattern

Enums§

BMCanMode
CAN mode IDs, used by [super::api::BM_SetCanMode] to change the operation mode of CAN device.
BMDataType
Busmust data type flags, must be given in BMData.
BMIsotpMode
ISO-TP operation mode.
BMLogLevel
Busmust library log level, see [super::api::BM_SetLogLevel] for details.
BMMessageFlags
CAN Message type flags, used in BMCanMessage
BMRxFilterType
CAN RX filter type IDs, used in BMRxFilter
BMStatType
CAN runtime statistics item IDs, used in [super::api::BM_GetStatus].
BMStatus
Busmust device & operation status, most APIs would return a status code to indicate the result of an operation
BMTerminalResistor
Terminal resistor values, used by [super::api::BM_SetTerminalRegister] to change the terminal resistor of CAN device.
BMTxTaskType
CAN TX task type IDs, used in BMTxTask.

Constants§

BM_DATA_HEADER_SIZE
Size (in bytes) of BM Data header, which contains type, routing, length and timestamp.
BM_DATA_MAX_SIZE
Size (in bytes) of BM Data, which contains a header and payload.
BM_DATA_PAYLOAD_MAX_SIZE
Size (in bytes) of BM Data payload, which contains a concrete message in CAN-FD | LIN | FLEXRAY | ... type.
BM_ERROR_DESC_MAX_SIZE
Size (in bytes) of an error description string.

Unions§

BMMessageCtrl
Busmust CAN Message control fields.