|
|
地板

楼主 |
发表于 2026-10-23 05:30:44
|
只看该作者
ALL03 USB适配器DIY
[本帖亦有英文版本]
[我将为本页附上英文说明,因为我从非韩语网站(特别是http://matthieu.benoit.free.fr,感谢Matthieu Benoit)获取了大量关于ALL03通用编程器的信息,我想与他们分享我的成果。我的英语水平有限,敬请谅解。 ]大学时期,我用打工攒下的钱,在清溪川(Cheonggyecheon)的一个市场上花了一大笔钱,买了一台名为“ALL03”的编程器,打算用来制作机器人。然而,由于它采用的是老旧的 ISA 接口标准,无法在现代个人电脑(PC)上使用,因此一直被闲置在角落里吃灰。后来,我在上网时偶然发现了 ALL03 的内部电路图以及一些简单的测试源代码。于是,我为它加装了一个 TUSB3210 USB 从设备控制器,从而实现了 USB 接口功能。
我有一台 ALL03 通用编程器,它仅配备了老式的 ISA 接口,因此无法在现代 PC 环境中使用。不过,我在 Matthieu Benoit 的个人主页上找到了相关的电路原理图和测试程序源代码。利用这些宝贵资料,我开始着手为 ALL03 通用编程器开发一款 USB 接口适配器。
我将这个项目命名为“ALL03 USB 适配器”。
你可以通过下方链接(Matthieu Benoit 的博客)获取相关有用信息。
http://matthieu.benoit.free.fr/
本项目采用德州仪器(TI)的 USB 从设备控制器 TUSB3210。该芯片内部集成了 8051 控制器及 USB 引擎,支持用户自行编写 USB 从设备程序。 8051 固件既可通过 USB 连接进行下载,也可存储在外部串行 EEPROM 中。
首先,利用 TUSB3210 和一个支持 3.3V-5V 接口的缓冲器来构建电路。
第一步是设计原理图。
ALL03 编程器需要 ±12V 和 5V 电源,因此我连接了一个能够输出 ±15V 和 5V 的外部直流电源。
硬件准备就绪后,接下来就是编程工作了。
首先,我需要为 TUSB3210 编写固件,接着编写 Windows 设备驱动程序,
最后开发应用程序。很简单,对吧?
由于每种可编程器件的编程方式各不相同,
我必须为每一种器件分别编写应用程序代码。
我先从一段简单的代码开始,用于测试 32KB SRAM 的读写操作。虽然我可以对
诸如 EEPROM、UV-EPROM、SEEPROM、PAL、GAL、PIC 和 AVR 等多种器件进行编程,
但摆在我面前的还有一项“非常简单(?)”的任务——为每种器件单独编写编程算法。
……
我连接了一个输出为 ±15VDC 和 +5VDC 的电源,因为 ALL03 通用编程器需要 ±12VDC 和 5VDC 的供电(我的 ALL03 USB 适配器内置了 ±12VDC 稳压电路)。
接下来的工作是编程。具体流程如下:
编写 TUSB3210 固件 -> 编写 USB 设备驱动程序 -> 编写应用程序。
非常简单。
我编写了一个简单的测试程序,用于验证 ALL03 的功能,并测试 32KB SRAM 的读写操作。运行情况良好。
ALL03 的访问操作涉及 1 到 4 或 5 个字节的读写,因此其访问速度比 ISA 接口要慢;这是因为 USB 事务在握手过程中会产生较大的开销(USB 通信更适合批量数据传输)。
----------------------------------------------------------------------------------
我本打算随程序附带相关文档以方便用户使用,但由于
文档尚未完成,目前发布时暂不包含文档。
待后续内容和文档完善后,下方的链接将会同步更新。
我已发布了适用于 Windows XP 操作系统的电路原理图、设备驱动程序以及测试应用程序的源代码。不过,我的 ALL03 USB 转接卡目前仍处于开发阶段,因此我的程序尚不具备设备编程功能,且可能存在软件缺陷(Bug)。
我会持续更新我的软件。
ALL03 USB 转接卡原理图(版本:1.1)http://matthieu.benoit.free.fr/a ... 3_adapter_schem.pdf
测试应用程序源代码(版本:0.10)http://matthieu.benoit.free.fr/all03/source/all03usb_test_app.zip
适用于 32 位 Windows XP 系统的 USB 设备驱动程序及固件包 http://matthieu.benoit.free.fr/a ... r_win32_xp_v1_0.zip
所提供的原理图以及源代码/二进制文件可能仍包含不少缺陷。
这些原理图及源代码/二进制文件的版权归我所有;
未经作者许可,禁止将其用于商业用途。
----------------------------------------------------------------------------------
作者:undergnak 时间:2012年1月10日 晚上 10:28:00
评论 2 条:
canito 2021年4月4日 上午 12:30
请问能提供 TUSB3210 的源代码吗?
回复
回复
undergnak 2021年4月9日 上午 7:11
转眼已过去近 10 年了……
抱歉,这个个人项目的源代码我已经找不到了。你可以自行编写代码,主要分为两部分:USB 枚举(USB enumeration)以及用于模拟 ISA 卡的 GPIO 控制。此外,你也可以参考 http://matthieu.benoit.free.fr 上的测试代码。
|
|