我正在使用 NXP 的LPC1768 ARM Cortex M3 微控制器(数据表,用户手册)。我想在用户手册“16.5.8 CAN 控制器自测”部分中描述的自测模式下测试 CAN 总线外围设备,但它不起作用。
我尝试了 NXP 知识库中描述的这些 NXP 示例,并使用了 NXP 示例代码(can_self_test 代码)。所有引脚配置运行正常,所有 CAN 总线配置和 CAN 总线消息帧也运行正常(一一控制)。但是在这一步之后的 CAN1_Send 函数内部:
CANx->CMR = 0x41;
错误标志被设置。尽管如此,CAN1_Send 返回 SUCCESS。
事实上,这个错误状态意味着“总线关闭错误”。“总线关闭错误”表示存在帧错误和 CAN 控制器错误。我测试数据帧和 CAN 控制器。有用。
我使用 RS-232 电缆连接 CAN1 和 CAN2。对于自测,我使用 CAN1。