首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Linux TTY和驱动程序

Linux TTY和驱动程序
EN

Stack Overflow用户
提问于 2012-11-09 22:21:21
回答 1查看 840关注 0票数 0

对于一个项目,我们有几个FTDI串行到USB转换器在一个自定义的硬件。其中一些串行到USB转换器具有需要设置的特殊参数(即它们从哪里获取数据)。现在,正常的设置方法是使用FTD2XX库,这将允许我们直接将USB上的数据设置为串行转换器。然而,D2XX驱动程序不能与标准的ftdi_sio驱动程序同时使用,这意味着我们不能像普通设备一样使用串口。

我在这里有三个基本选择:

  1. 修改标准驱动程序以使用新的IOCTL。由于我们有一个非常具体的环境,我们的目标,我会对此很好,但我不确定是否有可能处理所有可能的细微差别,可能产生的USB转换器如何工作时,把不同的模式。
  2. 让所有东西都使用D2XX驱动程序。这并不理想,因为如果我们需要使用另一个FTDI usb到串行转换器,任何需要使用该串行转换器的程序也必须使用D2XX驱动程序,这将是很好的,直到我们想要使用不同的USB到串行转换器(就像我们随后打开/dev/ttyUSBX一样)。
  3. 制作一个假TTY,如/dev/serialX,然后将信息传递给D2XX驱动程序。这样,我们仍然可以正常地打开串口,但是我们可以添加新的函数来执行更高级的选项。命名类似于我们现在所做的工作,即使用udev创建指向正确端口的符号链接。

在这里,选项3可能是最好的选择,但我不确定具体如何去做。我已经查看了开瓶函数,但这似乎并不完全符合我的要求,主要是能够在假串口上设置TTY设置,并在真正的串口上设置相同的设置。我猜想在这里会以某种方式使用mknod/mkdev,但我不知道具体如何使用。

解决这个问题最好的方法是什么?

EN

回答 1

Stack Overflow用户

发布于 2012-11-12 17:46:19

正常的方法是利用FTDI芯片可以使用一个小的附加EEPROM来加载配置设置的事实。因此,不使用D2XX设置自定义参数,而是刻录EEPROM,FTDI将自动配置自己。然后使用noraml串口驱动程序。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13316872

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档