<< 点击显示目录 >> 主页 贝加莱CAN通讯使用例程说明 > 通过编程实现CAN通讯 > 功能块与函数说明 > CAN_Lib > CAN_Lib - CAN Function Blocks and Functions > CANgetid() |
这个函数用来确认异常对象背景下触发的CAN标识符(见 can_id)。
一个长度为8字节的数据区的地址 被 转移到该函数中,收到的长度为 data_lng的数据 被复制到该 区域 。
这个功能块只能有条件地 用于冗余。
适用的限制在下面的章节中描述。
其他信息可以在 "冗余 " 部分找到 。
输入/输出 |
参数 |
数据类型 |
说明 |
IN |
enable |
BOOL |
该功能块只有在 enable 为0时才会执行 。 |
IN |
data_adr |
UDINT (given as a pointer) |
接收数据的数据区的地址。 |
OUT |
data_lng |
USINT |
收到的数据的长度,以字节为单位。 |
OUT |
can_id |
UDINT |
异常的CAN标识符。 |
OUT |
status |
UINT |
错误编号 (0=无错误)。 |
CANgetid(enable,adr(data_adr),data_lng,can_id,status)
如果CAN功能块在C函数中被本地调用(并且FBK结构在该函数中被本地声明,而不是用_LOCAL/_GLOBAL),那么静态FBK内存必须被初始化为0。
由于由异常触发的CAN标识符可以在异常对象中确定,所以可以 使用 CANexcep() 函数以相同的异常号 exc_no来定义多个CAN标识符 。