uwp - Windows 如何处理未使用的串口数据
问题描述
我有一个带有 USB 设备(我自己制作,因此可以在一定程度上对其进行修改)的应用程序,它以每 61 微秒大约 12 个字节的严格控制间隔不间断地输出数据。
在主机端,这是一台运行 UWP 应用程序的 Windows 10 计算机,我只按需使用这些数据。通常我会一次抓取一秒钟的数据,将其拆分为各种数组,然后对其进行一些 DSP 以从 USB 设备中提取我想要的信息。
我的问题是关于在我的 UWP 应用程序未侦听时发送到 COM 端口的数据。我可以按需收听,而忽略一个不断向其抛出数据的开放 COM 端口吗?我应该重新编程我的 USB 设备以按需提供数据吗?
解决方案
我的问题是关于在我的 UWP 应用程序未侦听时发送到 COM 端口的数据。我可以按需收听,而忽略一个不断向其抛出数据的开放 COM 端口吗?
根据您的要求,SerialPort.Handshake
属性适合场景。并可System.IO.Ports
用于uwp平台。你可以在这里参考 KazukiOta 的博客。
使用握手时,连接到 SerialPort 对象的设备会在缓冲区中至少有 (ReadBufferSize-1024) 个字节时停止发送数据。当缓冲区中的字节数为 1024 或更少时,将指示设备再次开始发送数据。如果设备以大于 1024 字节的块发送数据,这可能会导致缓冲区溢出。
推荐阅读
- c# - 如何在 Blazor WebAssembly 中获取静态图像文件的文件路径列表?
- javascript - 如何制作一个 for 循环来创建一个里面有一个数字的圆圈?
- swift - Swift Combine 等价于 concatMap
- flutter - 颤动的列表视图中的多张卡片
- c - 这是一些“C 中的重复错误循环”吗?
- dax - 使用 DAX Studio 从 Power BI 中导出表格,以便为 Excel 输出设置日期格式
- reactjs - 使用 React Hooks 单击上一个/下一个按钮时在 div 之间切换
- css - 如何避免css中两个对象的重叠?
- php - PHP gmdate("Y/m/d H:i:s", time()) 返回错误时间
- pine-script - 松脚本加密可能吗?