打印

关于串口读写

[复制链接]
1067|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
sinadz|  楼主 | 2012-9-13 17:53 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
如果将pc串口缓冲区大小设为512字节,从下位机接收数据,再用ReadFile()去读数据。如果先读取30个字节的数据,然后再读30个字节数据,那么这30个数据是从什么地方开始读的??缓冲区头还是跟在前30个数据之后??再如果下位机发送数据很快,上位机来不及处理数据,那么数据是不是会丢失??

相关帖子

沙发
无冕之王| | 2012-9-13 18:02 | 只看该作者
LZ可以自己试试

使用特权

评论回复
板凳
hsbjb| | 2012-9-13 18:08 | 只看该作者
问题没有描述清楚:
1、你PC发送的波特率是多少?
2、一帧数据量多大?
3、帧与帧之间时间间隔多少?
4、既有上位机发送数据,又有上位机发送数据,流程到底是怎么样的?

使用特权

评论回复
地板
秋天落叶| | 2012-9-13 18:19 | 只看该作者
串口先接收30,时间T之后,再接收30,这个取决你2次的时间间隔是多少,如果时间T小于串口接受的2个bit的间隔,没有问题,否则将丢掉数据。
如果数据量小,才512字节,可以一下子接受完再做处理。

使用特权

评论回复
5
txcy| | 2012-9-13 18:29 | 只看该作者
LZ的问题的确是没有描述清楚

使用特权

评论回复
6
wulala| | 2012-9-13 20:40 | 只看该作者
看你用什么片子了,单片机的话一般缓冲区是不能存储数据的,所以如果来不及处理数据就会被之前的数据冲掉

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

304

主题

2313

帖子

0

粉丝