问题标签 [ftdi]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c - 不理解 V2DIP FTDI 板上的键盘值
我正在开发 V2DIP FTDI 板。刷新 USBHOSTHidKDB 等键盘固件后,我得到的键盘值如下:
等等。有人知道这些值是什么吗?如果您知道这个概念,请帮助我。
python - Pylibftdi 库不工作(串行模式,UM232H)
首先,我对 python 和 Linux 都很陌生。也就是说,我正在尝试使用 pylibftdi 库与 FTDI UM232H 芯片通信。我在 Linux Ubuntu 12.04 上运行我的脚本。我安装了我在这里得到的库:http: //pylibftdi.readthedocs.org/en/latest/ ,显然一切正常。我还能够成功运行一些示例。
然后我尝试编写一些代码来与设备通信:我将它连接到总线供电配置中(为了从 USB 获取电源),然后我将 TX 和 RX 引脚短路,这样我在 TX 上发送的内容将在 RX 上读回。我没有收到任何错误,但我无法在 RX 上读回任何内容。这是我非常简单的代码:
即使我安装了它,我也无法获得 libftdi_verion 信息。
有人知道我做错了什么吗?有没有其他人遇到过这样的问题?提前致谢!
c - USBHOSTHidKdb 固件代码中使用的函数“number()”的逻辑
USBHostHIDkdb.c 中使用 number() 的函数。该代码将驱动程序附加到主机。并在击键事件发生时将键盘使用 ID 写入 UART。
if (status == USBHOSTHID_OK) { while (1) { if (vos_dev_read(hUSBHOST_HID, buf, 8, &num_read) == USBHOSTHID_OK) {
}
windows - 在非阻塞时处理 tcl readhandler 中的非持久 eof
我在 Windows 上使用 FTDI D2xx 驱动程序在 BitBash 模式下运行 tcl8.5/tk8.5 应用程序(问题发生在 XP、7 和 8 上)。还使用 ftd2xx c 扩展来访问 FTDI dll。
我有一个用户的报告,该应用程序最初运行良好,但在一天不使用后,在后台运行,它突然从 5M 增长到 100M 并开始消耗 99% 的 cpu。(情况不妙!)
在此之前我遇到过 USB 问题,特别是如果 USB 是“热拔出”的。它可能会导致应用程序被阻止并且 Windows 无法杀死它。我的应用程序从不需要读取 USB,它只是写入(控制它),但我发现在 BitBash 模式下,FTDI 芯片会发送回连续的数据流。处理读取会清除读取缓冲区,因此如果 USB 被拔出,则没有待阻止的读取,我可以优雅地退出。
但是现在,我认为 readhandler 给我带来了问题。我编写了一小段测试代码,模仿了我认为可以解决问题根源的实际应用程序。无论如何,我不理解 tcl 的行为。
这是代码:
以下是上述代码的输出:
输出说明:
首先,读取处理程序被多次调用(每个“.”),缓冲区不完整(长度 -1)并且没有 eof 条件。最终,某些事情要么超时,要么达到内部缓冲区限制,读取被迫完成。同时提出了一个EOF。“...126987”的每一行需要大约一秒钟的时间来写。
在一定数量的 EOF 之后(即 ....126987 的行 - 在这种情况下为 164 - 非常可重复),取决于写入通道的数据量以及是否刷新通道,在没有 EOF 的情况下完成读取(第 164线)。
到目前为止,读取事件中断率是可以容忍的,但随后它会猛增并消耗大量处理它的周期。在较慢的机器上,没有时间做任何有用的事情。
我对此有很多难以表达的问题。但首先:
我不明白为什么读取处理程序会在 0 字节未决和非 eof 条件下被调用。缓冲区中是否必须至少有一个字节才能“可读”?
我不明白为什么 EOF 是瞬态的。我希望USB端口上的EOF意味着它被拔掉了,但事实并非如此。
如果我在写入 USB 后刷新通道,我得到的只是 0 长度读取,即使我终止应用程序并重新启动它,这种情况仍然存在。清除此问题(进入慢速模式)的唯一方法是从 USB 中拔出设备并重新开始(不刷新)。我不知道该怎么做。我必须刷新通道才能让写入实际进入 FTDI 芯片。
我应该为此使用固定长度的读取而不是获取吗?
python - pySerial setDTR 无法正常工作
起初,我在 Python 2.7.x、Windows 7 (64) 和 FTDIFT232RL 的最新版本中使用 PYthon 2.7.5、pySerial(所以不是真正的 RS232 串行端口)。只是为了测试我创建了这段代码:
主要的:
RTS 运行良好,但 DTR 有问题。当我将 DTR 设置为 False 时,我可以在示波器上看到 DTR 确实设置为低电平,但在大约 700 毫秒后它又回到了高电平(我这边没有任何中断)。在这个时候 setDTR(False) 不再工作了。我必须先调用 setDTR(True) ,然后 setDTR(False) 再次工作(但在 700 毫秒后又回到高电平)。时间700ms都是一样的。我试图更改“dsrdtr”或“rtscts”的配置,但没有帮助。
我有基于 C++ 的 Qt 应用程序,它可以正确地与我的设备一起使用,现在我只是想将它重写为 Python,所以我 100% 确定我的设备是正确的。
编辑:我在笔记本电脑上使用真正的 RS232 COM 端口进行了尝试,它工作正常。因此,pySerial 似乎与带有 FTDI 芯片的虚拟 COM 端口存在问题......
c++ - 如何在 OSX 上使用 FTDI D2XX 库?
我正在尝试以波特率 3750000 但在 OSX 上与连接到 EasySync USB2-H-5004-M USB 到 RS485 转换器的 USB 设备通话。
我有一些在 Windows 上运行的 c++ 代码,并且刚刚设法让它在 OSX 上编译(使用 D2XX dylib 而不是 dll),但是我在某处的通信有问题,我不确定从哪里开始以及如何解决这个问题。
我正在使用 openFrameworks/c++,列出设备的方法如下所示:
问题出在 OSX 上,我得到以下输出:
这看起来不对。例如在 Windows 上,在端口 A/通道 1/设备索引 0 上,我看到:
快速查看 /dev 看起来还不错:
并通过系统信息我得到:
我已按照FTDI OSX 安装指南(pdf 链接)中的说明安装了 D2XX 驱动程序,但我不确定我缺少什么/做错了什么。
如何使用 FTDI D2XX 库与设备正确通信?
ftdi - FTDI 的 libMPSSE 上的“遇到 NULL 表达式”
我的问题特定于 FTDI 的库 libMPSSE 以在 Linux 上使用 USB 到串行端口(SPI、I2C 等)适配器。
当我执行与库链接的任何程序时,将调用方法 Init_libMPSSE()(没有显式调用)并抛出以下消息。
有没有人遇到过这个问题并找到了解决方法?
谢谢。
c - 从 c 程序读取串行数据正在部分工作
我想通过 ac 程序读取连接到 FTDI 板的笔式驱动器数据的内容。我有以下代码,我可以使用它读取部分数据,但有时并非每次我将板连接到 PC 时都会发生这种情况。你能告诉我应该对代码进行哪些更改吗
android - Delphi XE5在android中使用ftdi jar文件
我正在尝试在 Android 应用程序中使用 Delphi XE5 中的 FTDI (d2xx) jar 文件。 http://www.ftdichip.com/Drivers/D2XX.htm
但我不能让我工作.. 有没有人有任何关于如何导入(这个)外部 jar 文件的例子?或者已经完成了这个 jar 文件并让它工作(所以我知道这是可能的)。
我已经尝试了 XE5 中的方法 - Fun with external Java libraries 的乐趣 好吧,我没有乐趣,我无法让我工作(容易吗?)。我不知道要加载什么类。我有一个分配的“DEXClassLoader”,但不知道要加载什么类。如果我查看 dex 文件,我认为它应该是“com/ftdi/j2xx/D2xxManager”,但我收到“java.lang.classnotfoundException:com/ftdi/j2xx/D2xxManager”消息。
我发现的第二个选项是来自 Bian long (coderage 8) 的选项,我仍在研究这个,但我的 XE5 演示许可证即将用完。(我还找到了“Android 2 Delphi Import Tool”。但我不知道它是否有效。如果有效我想购买它。它只有 80 欧元)
如果我不能让它工作,我们将不会更新到 XE5(但我想..)并等到有更多的文档/示例。
谁能帮我..
c++ - Thorlabs APT 入门
我希望那里的其他人有编程 APT - DC 伺服控制器的经验。我的客户想要一个自定义解决方案,因此使用 ActiveX 控件是不可行的。
我想一旦我能弄清楚如何发送基本消息,我将能够很好地遵循 API,但我在开始时遇到了困难......并且文档似乎没有明确说明如何实际发送向控制器发送消息。
IE,我应该使用 FTDI 接口,使用 FT_Write/FT_Read 命令来操作设备吗?
我已经运行了以下代码,该代码贯穿了初始设置,在我尝试使 LED 闪烁的最后一行失败。
作为参考,我正在编写一个 32 位应用程序 - 在 64 位笔记本电脑上工作。