本帖最后由 yyrl 于 2016-2-17 15:35 编辑
各位老师好,这里请教个问题:
我现在做的系统包含有几台机器,这几台机器的电路板都和一块状态检测板通过CAN总线进行通信,芯片为STM32103,状态检测板定时给所有电路板发消息,且一直不断电。此外,机器的电路板也分别通过RS422(USART2)接口和PLC从站通信。现在发现,有的时候上电后会出现一台机器无法通过422串口发送消息的现象。必须重新上电才能解决。经查,一旦上电前将CAN总线和状态检测板断开,就不会出现422串口不发消息的情况。而且通过在初始化中加入延时,即在CAN和USArt2初始化之前加入延时,会发现哪一台初始化延时时间短,那一台就容易出现不发消息的现象。
请问,CAN总线会影响Usart2的消息发送吗?毕竟由于状态检测板的CAN总线设置了重发机制,下面的设备在刚开始上电时CAN波形很密集。谢谢! |