您好!
我将 C2000 F28004X 用于 CAN 远程功能、我需要执行以下步骤:
1.接收远程标准 ID 0x701帧
2. 在接收远程帧后 ,发送一个字节的0x701数据帧,
我只使用一个消息对象来接收0x701远程帧并发送0x701数据帧、 MSG_OBJ_TY_RX_REMOTE -可以接收远程请求消息对象、 无法自动传输数据帧、因为 我希望反馈的一个字节数据 可以通过软件更改、 如果使用 自动发送、那么一个字节数据 不能由软件控制、现在我配置可以驱动和 MCU 知道何时接收到0x701远程帧、 然后我使用同一个报文对象来发送数据帧、可以发送0x701数据帧、但帧的长度由远程帧长度控制、如果远程帧的数据长度为0、 那么0x701数据帧的长度也是0,即使我 想设置为1,我也会尝试从 0将 CAN_O_IF1MCTL DLC (发送 IF1)写入1,或者尝试将 CAN_O_IF2MCTL DLC (接收远程帧时接收 IF1)从0写入1,它无法工作。 您能否帮助您设置 DLC 并使其正常工作?
我还尝试使用另一个消息 ID 来仅发送0x701数据帧,我发现 MCU 在接收到0x701数据帧而不是远程帧后,将发送一个字节的0x701数据帧。 如果我想让这两个步骤在开始时运行良好,应该如何配置 CAN 驱动器? 一个用于远程的报文对象,一个用于具有相同 ID 的数据,或者只有一个用于接收和发送的报文对象?