beginTransmission()

Description

Initialize transmission state.
Note: Usage for this function is similar to the beginTransmission() function for Wire. Immediately after calling this function, the write() and endTransmission() functions must be called to complete the transmission task.

Syntax


CAN.beginTransmission(id)
CAN.beginTransmission(id, ext)

Parameters

id:External CAN device ID
ext:Data transmission format. This parameter is not needed for the function to work. When not set, the default, CAN_STDID, is used.

  1. CAN_STDID:Standard data frame, comply with CAN 2.0A standard. ID range: 0 ~ 0x7FF
  2. CAN_EXTID:Extended data frame, based on CAN 2.0B standard. ID range: 0 ~ 0x1FFFFFFF
  3. CAN_STDID_REMOTE:Standard data frame, comply with CAN 2.0A standard. ID range: 0 ~ 0x7FF
  4. CAN_EXTID_REMOTE:Extended data frame, comply with CAN 2.0B standard. ID range: 0 ~ 0x1FFFFFF

Returns

None

Examples

#include <CANBus.h>
unsigned char buf[8] = {0, 1, 2, 3, 4, 5, 6, 7};

void setup() {
    Serial.begin(115200);
    CAN.begin(CAN_500KBPS); // Configure CAN bus transmission speed to 500KBPS
}

void loop() {
    CAN.beginTransmission(0x00);               // Set the CAN device ID to 0x00, using standard data grame.
    CAN.write(buf, 8);                         // Sent 8 bytes of data
    CAN.endTransmission();                     // End transmission
    delay(10);
}

See also

write()
endTransmission()


Libraries Reference Home

The text of the 86Duino reference is licensed under a Creative Commons Attribution-ShareAlike 3.0 License. Code samples in the reference are released into the public domain.