- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
在我的 Ubuntu 10.10 桌面上通过串行端口连接了一个带有 UART 公头接口(interface)的条码阅读器。从专有的自述文档中,我了解到我必须启用 ACK/NAK 握手才能从设备获取我发送的命令的 ACK 或 NAK。 Linux环境下使用C串口编程的,不知道如何开启。
有人可以解释一下吗?
更新:
执行以下操作以启用软件握手 -
system ("stty ixon -ixoff -F /dev/tty");<br/>
bzero (shcmd, 64);<br/>
sprintf (shcmd, "stty ixon -ixoff -F %s", UART_DEVICE);<br/>
system (shcmd);<br/>
设置速度 -
system("stty speed 9600");<br/>
bzero (shcmd, 64);<br/>
sprintf (shcmd, "stty speed 9600 -F %s", UART_DEVICE);<br/>
system (shcmd);<br/>
写了一个命令 -
unsigned char req_rev[6] = {0x05,0xA3,0x04,0x00,0xFF,0x55};<br/>
n = write(fd, req_rev, 6);<br/>
从设备读取 -
int n = read(fd, result, 254);<br/>
但每次阅读时我都得到“EGAIN”。知道我为什么会这样吗?
最佳答案
ACK/NACK 不存在。存在的是 XON/XOFF。从这里开始:
文档对 XON/XOFF 使用 ACK/NACK,您的问题是“如何在我的串口上设置 XON/XOFF”。
文档是正确的,您应该做的第一件事是通过发送适当的命令在您的设备中启用 ACK/NACK 机制。要获得帮助,您需要浏览文档或提供更多信息。
关于linux - 为 UART 串口通信启用 ACK/NAK 握手,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9192169/
我试图了解 Android Open Accessory API 如何与 Arduino ADK 板一起工作,我已经能够发送和接收信息,但我只想知道一切是如何工作的。我得到了这个功能描述: int A
我正在尝试对包含“NAK”字符 (http://www.theasciicode.com.ar/ascii-control-characters/nak-negative-acknowledge-as
我一直在学习计算机网络方面的书(这不是作业题) 其中一个问题比较了基于 ACK 和 NAK 的数据传输协议(protocol),重点是对于基于 NAK 的协议(protocol),当接收到第 (x +
我正在尝试让一个 Android USB 主机程序连接到一个从属设备,它实际上是一个 USB 串口转换器。从设备当前设置为在没有可用数据时返回 NAK,我正在轮询从设备以查看是否有任何 IN 数据,方
在我的 Ubuntu 10.10 桌面上通过串行端口连接了一个带有 UART 公头接口(interface)的条码阅读器。从专有的自述文档中,我了解到我必须启用 ACK/NAK 握手才能从设备获取我发
先介绍一下 我正在尝试制作 MFRC522 library对于 Arduino 在用 C 编程的 ATmega328 上工作(我首先使用“普通” Controller ,使其在以后的状态下在树莓派上工
我是一名优秀的程序员,十分优秀!