您现在所在的是:

串口通信

回帖:2个,阅读:1516 [上一页] [1] [下一页]
1863
mawenxi
文章数:268
年度积分:50
历史总积分:1863
注册时间:2005/3/3
发站内信
发表于:2008/11/26 15:23:00
#0楼
我是这样理解的,RS232接受到一条完整的字节时,将通知CPU来取,当CPU来取走时候,是不是同时会将232的硬件缓冲区的字节已经被清除,等待下一个字节的来临?这是一个疑问!

2.我以前做过一个VB实验,开辟了一个缓冲区,这个缓冲区是什么含义?
 
  我这样理解------是不是这个缓冲区就是一片内存空间?联系上面,等硬件缓冲区的一个字节接受完后,被CPU取走,是取到哪里去?是给应用程序用了,还是被放到自己开辟的那片缓冲区里面了? 如果自己开辟的那片缓冲区数据被取走后,那缓冲区里面的数据是不是也和硬件缓冲区一样会被自动清除掉?
805
panch
文章数:1
年度积分:50
历史总积分:805
注册时间:2008/11/26
发站内信
发表于:2008/11/26 17:06:00
#1楼



[此贴子已经被作者于2008-11-27 8:38:47编辑过]
19257
pqsh 版主
文章数:7424
年度积分:1087
历史总积分:19257
注册时间:2006/8/22
发站内信
2018论坛解答高手
发表于:2008/11/27 9:40:00
#2楼
是这样的,RS232通讯有自己的硬件,有硬件的缓冲存储区并负责通知CPU通讯事件.
VB有自己管理通讯的软件,比如引用"通讯控件",这些其实是CPU或存储器来管理的.
通讯控件有输入输出缓冲(就是存储器,内存或硬盘),并对缓冲有一套管理机制.
RS232硬件来的数据,被控件接收后放到控件的缓冲区.同时控件发出通知给应用(可以是你自己编的VB程序),VB程序用控件的方法取走数据后,控件自己会把缓冲缩小或清除.
当然,你也可以不用控件,用VB自己从硬件获取数据,自己建立缓冲区(数组,变量--当然就都是存储器了)
,自己去管理缓冲区(增减,清除).
如果我忘了我
请帮忙记得我
pqsh@163,326199298@v&q同号

关于我们 | 联系我们 | 广告服务 | 本站动态 | 友情链接 | 法律声明 | 非法和不良信息举报

工控网客服热线:0755-86369299
版权所有 工控网 Copyright©2024 Gkong.com, All Rights Reserved

46.8003