FTX-PROG 技术文档
本文档旨在帮助用户安装和使用 FTX-PROG,这是一个在 Linux 命令行下替代 FTDI 的 FTProg 实用程序的软件,用于配置 FTDI 的 FT-X 系列的 USB 接口。
1. 安装指南
安装依赖
首先,需要安装以下依赖项:
sudo apt-get install build-essential gcc make libftdi-dev
下载与编译
然后,从 GitHub 下载源代码,解压缩,并在解压缩后的目录中打开终端,执行以下命令:
make
别忘了插入你的 FT-X 设备!
2. 使用说明
运行程序
运行以下命令以获取所有可能的选项:
sudo ./ftx_prog
显示当前设置
使用以下命令显示当前设置:
sudo ./ftx_prog --dump
配置 CBUS 引脚
使用以下命令为可配置的 CBUS 引脚设置特定的功能:
sudo ./ftx_prog --cbus [cbus 引脚编号] [功能]
查看 --help
了解所有可能的功能,以及查阅 应用笔记 了解它们的作用。注意引脚编号是基于零的,因此 --cbus 0
对应于 CBUS0
引脚。
最常用的功能包括:
RxLED
(当数据从主机发送到 USB 设备时低电平脉冲)TxLED
(当数据从 USB 设备发送到主机时低电平脉冲)TxRxLED
(当数据任一方向发送时低电平脉冲)SLEEP
(当接口处于 USB 挂起模式时低电平)
反转 RS232 信号
仅适用于 FT230X
和 FT231X
使用以下命令反转芯片上该引脚的极性:
sudo ./ftx_prog --invert [rs232 引脚]
可能的引脚包括:
txd
(接口的数据输出引脚)rxd
(接口的数据输入引脚)rts
(请求发送输出引脚)cts
(清除发送输入引脚)dtr
(数据终端就绪输出引脚)dsr
(数据设置就绪输入引脚)dcd
(数据载波检测输入引脚)ri
(振铃指示器输入引脚)
将 RI
引脚设为低电平(或极性反转时为高电平)超过 20 毫秒将唤醒 USB 主控制器,如果已经启用了远程唤醒(使用 --remote-wakeup on
)。
I2C
仅适用于 FT200XD
和 FT201X
以下选项的功能未经测试:
sudo ./ftx_prog --i2c-slave-address <数值>
设置 FT-X 在 I2C 总线上的从设备地址。
sudo ./ftx_prog --i2c-schmitt [on|off]
I2C 引脚上的施密特触发器可以开启或关闭。
sudo ./ftx_prog --i2c-device-id <数值>
设置 I2C 设备 ID。
SPI / FT1248
仅适用于 FT220X
和 FT221X
以下选项的功能未经测试:
sudo ./ftx_prog --ft1248-cpol [高|低]
SPI / FT1248 总线上的时钟可以是活动 高
(如 SPI 模式 1
)或活动 低
(如 SPI 模式 3
)。
sudo ./ftx_prog --ft1248-bord [msb|lsb]
SPI / FT1248 总线上的位顺序可以是 msb
先行或 lsb
先行。
sudo ./ftx_prog --ft1248-flow-control [on|off]
当 SS_n 不活跃时开启流量控制。
RS485
以下选项的功能未经测试:
sudo ./ftx_prog --rs485-echo-supp [on|off]
如果接口在 RS-485 系统中使用,则启用回声抑制。
其他
sudo ./ftx_prog --load-vcp [on|off]
控制是否加载虚拟 COM 端口(VCP)驱动程序。
sudo ./ftx_prog --remote-wakeup [on|off]
允许接口通过非 USB 方式唤醒。
使用 sudo ./ftx_prog --help
查看所有命令行选项的详细信息。
还有其他配置选项尚未在用户界面中实现。EEPROM 中用户可配置区域的支持也是可能的。
3. 项目 API 使用文档
本项目提供的命令行接口即为用户使用的 API,具体使用方式请参考上述使用说明。
4. 项目安装方式
请参考本文档中的“安装指南”部分进行项目安装。
本文档所描述的项目在 GPL v2 许可下发布,欢迎提出问题报告和合并请求。此项目维护较为被动,可能长时间没有更新。如果 PR 详细解释、注释清晰且符合代码风格,则更有可能被合并。
- mybatis-plusmybatis 增强工具包,简化 CRUD 操作。 文档 http://baomidou.com 低代码组件库 http://aizuda.comJava00
- open-eBackupopen-eBackup是一款开源备份软件,采用集群高扩展架构,通过应用备份通用框架、并行备份等技术,为主流数据库、虚拟化、文件系统、大数据等应用提供E2E的数据备份、恢复等能力,帮助用户实现关键数据高效保护。HTML055
- 每日精选项目🔥🔥 12.27日推荐:解锁高效测试的新工具-Shortest🔥🔥 每日推荐行业内最新、增长最快的项目,快速了解行业最新热门项目动态~~017
- Cangjie-Examples本仓将收集和展示高质量的仓颉示例代码,欢迎大家投稿,让全世界看到您的妙趣设计,也让更多人通过您的编码理解和喜爱仓颉语言。Cangjie041
- 毕方Talon工具本工具是一个端到端的工具,用于项目的生成IR并自动进行缺陷检测。Python039
- PDFMathTranslatePDF scientific paper translation with preserved formats - 基于 AI 完整保留排版的 PDF 文档全文双语翻译,支持 Google/DeepL/Ollama/OpenAI 等服务,提供 CLI/GUI/DockerPython03
- advanced-javaAdvanced-Java是一个Java进阶教程,适合用于学习Java高级特性和编程技巧。特点:内容深入、实例丰富、适合进阶学习。JavaScript0103
- taro开放式跨端跨框架解决方案,支持使用 React/Vue/Nerv 等框架来开发微信/京东/百度/支付宝/字节跳动/ QQ 小程序/H5/React Native 等应用。 https://taro.zone/TypeScript09
- Yi-CoderYi Coder 编程模型,小而强大的编程助手HTML012
- excelizehttps://github.com/xuri/excelize Excelize 是 Go 语言编写的一个用来操作 Office Excel 文档类库,基于 ECMA-376 OOXML 技术标准。可以使用它来读取、写入 XLSX 文件,相比较其他的开源类库,Excelize 支持操作带有数据透视表、切片器、图表与图片的 Excel 并支持向 Excel 中插入图片与创建简单图表,目前是 Go 开源项目中唯一支持复杂样式 XLSX 文件的类库,可应用于各类报表平台、云计算和边缘计算系统。Go02