beginTransmission()
描述
初始化传送状态。注意:此函式的用法和 Wire 函式库中的 beginTransmission() 类似,你必须在后面紧接着呼叫 write() 和 endTransmission(),才能完成一次传送行为。
语法
CAN.beginTransmission(id)
CAN.beginTransmission(id, ext)
参数
id
:外部 CAN device 的 ID 编号
ext
:传送资料的格式。此参数是非必要的,如果没有输入此参数,预设值是 CAN_STDID。
- CAN_STDID:标准资料帧,符合 CAN 2.0A 规范,ID 范围:0 ~ 0x7FF
- CAN_EXTID:扩展资料帧,使用 CAN 2.0B 规范,ID 范围:0 ~ 0x1FFFFFFF
- CAN_STDID_REMOTE:标准远端帧,符合 CAN 2.0A 规范,ID 范围:0 ~ 0x7FF
- CAN_EXTID_REMOTE:扩展远端帧,符合 CAN 2.0B 规范,ID 范围:0 ~ 0x1FFFFFFF
回传
无回传值
范例
#include <CANBus.h> unsigned char buf[8] = {0, 1, 2, 3, 4, 5, 6, 7}; void setup() { Serial.begin(115200); CAN.begin(CAN_500KBPS); // 设定 CAN 的传输速度为 500KBPS } void loop() { CAN.beginTransmission(0x00); // 外部 CAN device 的 ID 为 0x00,使用标准资料帧 CAN.write(buf, 8); // 送出 8 bytes 资料 CAN.endTransmission(); // 结束传送 delay(10); }
See also
- write()
- endTransmission()
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.