Recently l got a problem about two EFM8BB3 communicate through UART0 with 2400bts(accurate value: 2407bts). When I get the power of these two MCU on simultaneously, the communication is normal, both transmition and reception.
But the weird thing is, when I change the sequence of power-on, one MCU first, the other next, the reception units of both MCU become abnormal. I have checked the real signal of the RX by oscilloscope, the signal is completely same as the other's TX…
Hope you guys can help me, thank you so much!
Did you check the Rx/Tx data with some COM port debug tool when this symptom appear ? And attached your project will help to troubleshoot the issue.
when ... the reception units of both MCU become abnormal
'forever' or just for the first message?
the obvious background is that a character is sent during the receivers power up and, probably. partially received.. This will lead to the receiver getting bad data. Is it possible that your code for the receiver get its knickers in a knot when bad data is received?
the receiver has already begun receiving before it powers up.
huh? do you mean bits are coming to the receiver before it powers up.
I do not know what you are doing, but it is not uncommon to have a pin to pin connection between the two and then "do not send till "sense pin is low".
HOWEVER with proper code this is not needed
1) either side must easily recover from bad data
2) either a handshake or a lost message is OK