珠海建设网站机构,wordpress主题预览插件,遂溪网站建设公司,WordPress使用自己主题串口握手协议的XON\XOFF原理有人可能搞不清楚#xff0c;看看下面这个例子你应该能有所感悟。 假设电脑A和电脑B通过RS232串口通信 A 和 B协商使用软件握手协议(dcb.fOutX TRUE), 定义XonChar \ XoffChar 比如XonChar 1, XoffChar 2. 现在, A向B发送字符2, B向A发送字符串看看下面这个例子你应该能有所感悟。 假设电脑A和电脑B通过RS232串口通信 A 和 B协商使用软件握手协议(dcb.fOutX TRUE), 定义XonChar \ XoffChar 比如XonChar 1, XoffChar 2. 现在, A向B发送字符2, B向A发送字符串helloworld. A能收到字符串helloworld吗? 不行的. B向A发送字符1后, A将会收到字符串helloworld. 问题是A向B发XoffChar? 还是B向A发XoffChar? 举个形像例子李四有很多书现在一本本的传递给张三张三突然要去厕所想李四暂停一会儿于是 张三对李四说“暂停”李四听到后就停下来不再把书传给张三。 “张三”就是通信的接收端“李四”是通信的发送端。 XoffChar的传送方向是 接收端 —— 发送端 当张三从厕所回来后对李四说“我回来了开始吧”。于是李四把剩余的书一本一本的传递给张三 。 同理XonChar的传送方向也是 接收端 —— 发送端。 问题发送端接收到XoffChar之后还没有发送成功的字符由谁保管 答 操作系统。 串口发送信息使用WriteFile(), 如果是overlap方式,发送端收到XoffChar后WriteFile()会返回FAILE, GetLastError() ERROR_IO_PENDING. 如果是非overlap方式,程序会在WriteFile()在停下来, 等待发送成功,当然,还要考虑到Timeout的设置. 接下来继续深入WriteFile的Overlap原理。