如何在计算机上模拟 USB/蓝牙串行通信?

如何在计算机上模拟 USB/蓝牙串行通信?

我正在将数据流从 AVR328P(安装在 Arduino 上的微型)发送到运行 Windows 10 的计算机。通信是串行的,但实际上是通过蓝牙进行的,并且在我配对设备时已在计算机中创建了串行端口。我通过 python 中的 pySerial 库接收数据。

我想知道 Windows 如何模拟串行端口。有硬件 UART 吗?如果答案取决于我使用的计算机类型,我如何找到它的工作方式的描述?我还想知道输入缓冲区的大小(以字节为单位),因为我在接收数据时遇到了问题。

答案1

我想知道 Windows 如何模拟串行端口。有硬件 UART 吗?

不可以。蓝牙 COM 端口仅是软件。PC 内的蓝牙模块通常通过 USB 或 PCIe 连接。

我还想知道输入缓冲区的字节大小

“输入”缓冲区位于微控制器端的蓝牙模块内。由于通信错误会导致延迟,因此您必须使用某种流量控制来实现 >=115200 波特的适当速率。

不同模块的实际 fifo 大小差别很大。我见过的模块最多有 600 字节缓冲区,有些模块有字节 uart fifo。这应该记录在模块手册中。

相关内容