我想在我的 Arduino 项目中添加一个条形码扫描仪。
在互联网上我看到很多具有“UART”兼容性的条码扫描仪。我查找了 UART 协议以及如何将其与
Serial
对象一起使用。
但是没有扫描仪说明要通过
Serial
对象发送哪些 UART 值,以便开始扫描、停止扫描或了解扫描仪何时获得值。他们似乎都认为我会知道这一点。
我尝试过搜索条码扫描仪的通用UART代码,但我似乎找不到任何东西。
是否有通过 UART 发送的常见命令/值来启动和停止条码扫描仪的扫描? (如果有,它们是什么?)
UART 是一种 RX/TX 协议,与其他协议不同。 I2C 或 SPI 没有主机必须始终启动/启动通信。 因此,通过 Arduino 和条形码扫描仪之间的 UART,两者都可以在需要时互相发送数据(数据将位于缓冲区中供接收器读取)。
如果您仔细观察这样的示例:https://www.rtscan.net/arduino-qr-code-scanner/
你会看到两件事:
if (mySerial.available() > 0 )
send_cmd()
功能用于向扫描仪发送数据/命令,以更改波特率(UART通信速度)。PS:在这种应用程序中,使用 SoftwareSerial 库非常重要,因为如果您尝试使用标准串行接口(引脚 0 和 1 以及 pc 和 Arduino 之间的默认串行连接),那么 pc-Arduino 链接将干扰 Arduino 扫描仪链接。