imx6ull uart receive

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

imx6ull uart receive

15,161 Views
Oman
Contributor II

In the imx6ull platform, the serial port encounters abnormal data reception. The  description is as follows:

Problem Description:

If the external device is connected to the imx6ull serial port, it will emit a noise that low level when it sleeps,The waveform is a low level, about 40 ~ 50us.The baud rate of communication is 9600bps, 8n1

Read serial port data for a long time in imx6ull application layer, and receive data of 0xff all the time.

Q1. After calculating 9600 baud rate, the start bit time is 104us, while the time of 40 ~ 50us should not be recognized as the beginning of a data by the serial controller. Why can we receive the binary data of 0xff?

 

Q2. After testing, it is found that if the external device is disconnected, the application program can still read the secondary data of 0xff. Why can the data still be read after the device is disconnected?

 

this question happend at EVB board,I think it's the linux driver that causes this problem.

All IMX platform should all have it.

You can use GPIO port to simulate TX for testing

 

Labels (1)
0 Kudos
Reply
22 Replies

1,002 Views
michaelyang
Contributor I

HI james, i meet this issue too, the discription as below:

connection type : RTU terminal <--->RS232<--->i.Mx6ULL

1. RTU output about 40us down level signal (the signal acturally is RTU sleep signal) 

2. the i.Mx6ULL received this down level signal as the UART start bit, so the RS 232 will keep open status 3. while the next signal is normal data signal, it is normal, but after the normal data transfer end, that thte RTU will repeat send the sleep down level signal, the RS232 keep in open status. if this cycle repeat about 10 times ,that the i.Mx6ULL will keep output 0xff eventhough switch off the connection RS232 and i.Mx6ULL hope get your response earlier~

1,010 Views
Oman
Contributor II

Thinks for your reply.

I agree with you, but the key to the problem is to receive 0 XFF all the time.According to your analysis, the only time to receive 0xff is when 40us is received, but actually the received 0xff is like flood the screen, and it's useless to disconnect the external device.

0 Kudos
Reply