主题中讨论的其他器件:C2000WARE
大家好、
客户有一些问题需要您的帮助:
在 CAN 通信中、有几个名词、它们在不同的地方是不同的、这有点令人困惑。
28075中有两个完全相同的 CAN 模块、CAN A 和 CAN B。CAN A 和 B 中有32个邮箱、邮箱也称为按摩对象。 当使用时、这32个邮箱需要从0到31进行编号(如果它们没有按顺序设置、例如设置33的邮箱、这是错误的?) 这种理解是否正确?
有各种类型的标识符、例如 CAN 标识符、消息标识符、CAN ID 和消息 ID (它们是前两个的短写代码、对吧?)、并且有 MSGID、MsgVal、 消息程序对象 ID、 消息程序对象 ID 号、如何区分它们? 标识符和 ID 是相同的吗?
每个节点设备是否需要 ID、每个节点设备是否需要 ID、每个节点 ID 是否需要邮箱的 ID、以及每个节点邮箱发送的消息是否需要 ID?
CAN 模块内有两个优先级比较: 当来自不同节点的多个器件同时向总线发送数据时、消息标识符用于确定优先级、邮箱编号用于在同一器件需要传输多个数据时确定优先级。 不知道这是否正确?
在当前例程中、固定消息标识符的数据主要通过 CANA 发送、而通过 CANB 接收相同消息标识符的数据。 这相对简单、因为消息标识符是相同的。 但是、在实际应用中、需要传输几种不同类型的变量数据、因此为每个数据设置唯一的消息标识符是很自然的。 这是接收器需要使用消息标识符来确定接收到的数据是什么变量的时间。 如何设置此多消息标识符以传输多个数据? 此时是否有可引用的例程?
6.CAN_setupMessageObject 函数用于设置哪个邮箱发送哪个 MSGID 数据、那么如何实现发送多个不同 MSGID 数据的同一邮箱? 连续使用多个 CAN_setupMessageObject 函数是否不会导致以后覆盖上一个函数?
CAN_setupMessageObject (CANB_BASE、RX_MSG_OBJ_ID、0x955555、
CAN_MSG_FRAME_EXT、CAN_MSG_OBJ_TYPE_RX、0、
CAN_MSG_OBJ_RX_INT_ENABLE、MSG_DATA_LENGTH);
您可以帮助检查此案例吗?
此致、(&H)
本