串口是一个很重要的通信方式,但是要用好串口并不是那么简单,比如如何接收不等长的数据等。你们是如何处理的呢?大家来说说你们的做法。 |
UART
选择一种合适的通信协议,不行吗? |
增设一个计时器,根据波特率超过两个以上的字节传送时间就判这一帧接收完毕。我常用这个方法的 |
用定时器做超时判断 |
要是不等长的多个字节,自己定义一个帧,包括字节数和数据,帧头帧尾了! |
楼上的已经给出了答案,定时器超时接收 |
在通信过程中,传输的数据一般都需要定义一个特定的帧结构,根据该帧结构进行判断。在实际应用中纯流数据一般都没有意义。 |
我一般是用6楼的方法。。。
|
可以参考modbus |
把帧协议定好是一种,超时接收也是一种,看接收什么样个的 数据 |
modbus!比较好的选择! |
一般是接收1个就进中断一次,有时协议的8的整数倍的,可以收8个进一次中断 |
对于串口而言,处理数据,如果自己定义的话,收发都用定长的较为方便,比较好处理数据,但是如果实际不是定长,那就需要用到中断,在中断里面处理实际接收的数据, |