你(们)好!
我们采用 TMS320F28377S 处理器制造 PCB 已大约5年。 电路板使用 CAN 总线与系统的其他部分通信。 电路板测试过程的一部分是测试 CAN 总线是否正常运行。 此功能适用于多达数百个电路板。 但是、在上一批中、我们有2个电路板发生故障、其中可以接收故障。
硬件工作正常。 我可以看到测试系统发送的消息位和来自处理器的确认位。 对于良好的电路板和坏的电路板、消息是相同的。
对于正常和不良的电路板、软件是相同的。
邮箱6被配置为接收来自测试系统的消息。 在正常电路板中、收到消息时、CAN_NDAT_21寄存器按预期设置为0x00000020。 在两个坏的主板中、该寄存器设置为0x00000010。 会设置错误的位、并且消息接收过程在此时中断。 邮箱5的 消息 ID 完全不同。
这些处理器具有相同的 PART_ID、REVID 和批次跟踪代码、并且它们的 UniqueID 值彼此接近。
这2个不良电路板中的错误位设置是怎么可能的?