打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
winCE winXP C# 串口
这个问题已经解决了。
首先,串口支持全双工模式,即串口的接收缓冲区和发送缓冲区是分开的,故可以使用多个线程同时,不互斥的同时读写串口。
然后,定义4个线程:一个主线程(界面线程,启动时的主线程),一个串口监听线程,一个处理接收到的串口数据的线程,一个写串口的线程。另外,再定义两个缓冲区队列,一个存放从串口接收到的数据(Qr),一个存放向串口写的命令(Qw)。
发送时:界面线程向Qw中插入一条向串口发送的数据帧,然后返回;写串口的线程从队列中取数据帧写到串口。两个线程间是一个生产者-消费者问题;
接收时:串口监听线程接收完整数据帧,放入Qr,然后继续监听串口;处理接收到的串口数据的线程从Qr中读取数据帧并处理,两个线程间也是一个生产者-消费者问题。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
2 21技术日记
CMScomm中的函数则么用?CMScomm的介绍太少
用Win32 API实现串行通信
API串口通信
串口通信工程笔记
【特别策划】中低压配电设备状态信息采集系统总体设计 及其实现中的关键软硬件技术
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服