社区
C#
帖子详情
用SerialPort.Write 写串口数据的问题
zyleon
2007-09-05 06:07:48
SerialPort.Write函数写串口数据后,怎么样才能判断数据是否已经全部写到输出缓冲区里面了呢,这个函数应该不是阻塞的吧,发现write后,立即就返回了,但实际上串口还有一些数据没有写进去,怎么样才能知道数据已经全部写到输出缓冲区里面了呢
...全文
971
9
打赏
收藏
用SerialPort.Write 写串口数据的问题
SerialPort.Write函数写串口数据后,怎么样才能判断数据是否已经全部写到输出缓冲区里面了呢,这个函数应该不是阻塞的吧,发现write后,立即就返回了,但实际上串口还有一些数据没有写进去,怎么样才能知道数据已经全部写到输出缓冲区里面了呢
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
liyunpeng_111
2007-12-10
打赏
举报
回复
自已连自己bytetoread()看看接受缓存就可以了
owennol
2007-09-12
打赏
举报
回复
加标志位
你在另外一头Read的时候,只有读到标志位时,才停止读取
nwgogogo
2007-09-12
打赏
举报
回复
用wirteLine试试
Avoid
2007-09-12
打赏
举报
回复
如果数据量大的话,更改wirtetimeout的值
zyleon
2007-09-12
打赏
举报
回复
我跟踪了下,没写完就返回了
Avoid
2007-09-12
打赏
举报
回复
返回了就表明写入了。
默认写入超时为500毫秒
lljfl
2007-09-12
打赏
举报
回复
你用BytesToWrite==0试试
zyleon
2007-09-12
打赏
举报
回复
没有人知道吗
zyleon
2007-09-12
打赏
举报
回复
up
串口
(
Se
ria
l
Port
)的使用
并口与通讯
串口
(COM): 使用
Se
ria
l
Port
控件 一、
Se
ria
l
Port
属性 1、需要引入的头文件 using System.IO; using System.IO.
Port
s; 2、属性 2.1、控件如下: 2.2、属性如下: BaudRate:波特率 DataBits:
数据
位 Parity:奇偶校验位
Port
Name:端口号 StopBits:停止位 ByteToRead:获取输入缓冲区的 IsOpen:获取是否开启
串口
3、事件
串口
通信的事件有三个: DataRe
C#
串口
Se
ria
l
Port
控件
串口
对于工控领域应用较为广泛
Android -
串口
通讯(
Se
ria
l
Port
)
最早的博客里就是用过 Google 提供的 demo,最近想再
写
个其他的demo发现用起来有点麻烦,还需要导入其他 module,因此在网上找到了也是自Google开源的Android
串口
通信Demo。话不多说,直接开搞。demo地址放在了最后。
C#中用
Se
ria
l
Port
类中的
Write
()方法发送十六进制数
在C#中用
Se
ria
l
Port
类中的
Write
()方法向
串口
发送十六进制数的方法: MSDN对
Se
ria
l
Port
::
Write
()是这样解释的: 将
数据
写
入串行端口输出缓冲区。 重载列表 名称说明
Write
(String) 将指定的字符串
写
入串行端口。
Write
(array<Byte>[]()[], Int32, Int32) 使用缓冲区的
数据
将指定数量...
C#中
Se
ria
l
Port
的使用
B忙不过来时(B的
串口
输入缓冲区快满了)会设置自己的RTS为低电平,这样A的CTS也变为低电平。B的
串口
输入缓冲区快空时,会设置自己的RTS为高电平,这样A的CTS也变为高电平。ReadExisting将获得B4 AE D0,"B4 AE"会被解释为"串",D0是汉字的区码,所以ReadExisting会将D0保留在输入缓冲区内。未找到,就一直等待,直至超时。
串口
输入缓冲区获得新
数据
后,会以DataReceived事件通知System.IO.
Port
s.
Se
ria
l
Port
对象,可以在此时读取
串口
数据
。
C#
111,128
社区成员
642,535
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章