VB串口通信mscomm中传输和接收缓冲区怎么理解

 我来答
money0_04c351c2
2013-01-10 · TA获得超过4142个赞
知道大有可为答主
回答量:5505
采纳率:49%
帮助的人:1609万
展开全部
要把某个数字或者一段文字通过串行接口发送出去是一个很复杂的事。
要在铜线上严格按照通讯协议,以微秒级别的间隔发送高低电平是软件系统难以做到的。
所以,人们在串行接口芯片中预留了一些存储空间作为缓冲区。软件系统只负责将要发送的内容放进缓冲区,硬件系统只要发现缓冲区中有数据,就按照时钟晶振提供的精确时间间隔将数据转换为高低电平送到铜线上。
后来,由于硬件缓冲区很小(一般只有8个或16个字节),人们又通过软件方式在硬件缓冲区的上层再加一层软件缓冲区,其大小可以扩展至1024字节,甚至更高。这个就是MSComm控件里面的缓冲区了。
当你要发送一串数据时(比如200个),你可以直接送到MSComm里面,后面的操作全都不用管了。而实际上,MSComm会从其中按次序将16个字节送入硬件缓冲区,等硬件系统将数据发走后,再送16个…… 如此循环,直至全部发送完毕。接收缓冲区的作用与之类似。
二弼萌8
2013-01-09 · TA获得超过666个赞
知道小有建树答主
回答量:1159
采纳率:0%
帮助的人:335万
展开全部
要发送的数据先放在发送缓冲区中,然后由系统发送。
接受也是同样的道理,收下来放在缓冲区里,然后再处理
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式