ALL03 USB adapter D.I.Y.

[본 게시물은 영문으로도 제공 합니다. 수집한 기초 자료들의 대부분이 외국 블로그에서 얻은 정보들이라
자신의 블로그에 자료를 공우해준 고마운, 얼굴도 모르는 외국의 친구들(?)에게 제가 추가하고 수정하고
개발한 내용을 함께 공유하고자 함입니다.
영어 발로쓴거냐고 뭐라 하지 마시고 영문법상 오류가 보이시면 알려주세요]

[I will attach English description for this page, because I'v got lots of information for ALL03 univeral programmer
from non-Korean web pages especially 'http://matthieu.benoit.free.fr'(thank you Matthieu Benoit) and I want to share
my result with them. I ask for understanding for my lack of English.]




대학다닐때 아르바이트 비용을 모아 로봇을 만들기 위해 청계천 상가에서 거금을 들여
ALL03이라는 프로그래머를 샀었다. 근데 요게 인터페이스가 ISA 방식이라 요즘 PC에서는
사용 할 수가 없어 한쪽 구석에 쳐박혀 있었다.
웹 서핑중 우연히 이 ALL03에 대한 내부 회로도와 간단한 테스트가 가능한 소스를 구할 수가 있어서
여기에 TUSB3210 USB 슬레이브 컨트롤러를 달아 USB인터페이스가 가능하도록 해봤다.

I have an ALL03 universal programmer that has only legacy ISA interface.
So it can not be used with recent PC environment.
I'v found schematics, diagrams and test program sources from Matthieu Benoit's home page,
and I started to develop USB interface adapter for ALL03 universal programmer with this helpful information.
I'll use the name of 'ALL03 USB adapter' for my project.

You may can get useful information from below link (Matthieu Benoit's blog).
http://matthieu.benoit.free.fr

The TI's USB client controller TUSB3210 is used for this project.
It has on-die 8051 controller with USB engine so you can program your own USB client.
Your 8051 firmware can be download through USB connection or can be stored at external serial-EEPROM,
but I choosed USB downloading method because of simplicity.

우선 TUSB3210과 3.3V-5V인터페이스가 가능한 버퍼를 이용해 회로를 꾸민다.
The first of all is designing schematics.

다음으로 아트웍 작업 진행
And then, doing artwork.

동판 애칭 및 부품 삽입
Etching, soldering, testing...

최종 완성
This is my result.

ALL03 프로그래머는 +-12V와 5V전원이 필요해 외부에 +-15V, 5V 출력이 가능한 DC전원을
달아 줬다.

하드웨어가 준비 되었으니 이제 다음 삽질, 코딩 작업이 남았다.
우선 TUSB3210용 펌웨어를 코딩하고 다음으로 윈도우즈용 디바이스 드라이버작성
마지막으로 어플리케이션을 만들면 된다. 참 쉽죠?..

프로그래머블 디바이스마다 프로그래밍 하는 방법이 모두 다르므로
각각의 디바이스에 맞게 어플리케이션을 새로 코딩해 줘야 하는데
우선 32KB짜리 SRAM을 read/write 테스트 할 수 있는 간단한 코드 부터 시작 했다.

EEPROM, UV-EPROM, SEEPROM, PAL, GAL, PIC, AVR등등 많은 디바이스들을
프로그래밍 할 수 있으나 일일히 프로그래밍 알고리즘을 만들어야 하는
아주 간단한(?) 일만 남았다....

I attached +-15VDC, +5VDC output power supply because the All03 universal programmer
needs +-12VDC and 5VDC power.
(My ALL03 USB adapter has +-12VDC regulator)

Next job is coding. The coding step is like this,
firmware coding for TUSB3210 -> USB Device driver coding -> application coding
It's extremely(?) simple things....

I coded a simple test applicaiton for checking ALL03 functionality
and testing 32KB SRAM write/read I/O. It works well.. not bad... ha-ha..

The ALL03 assessing is composed of one to four or five bytes read/write, so
access speed is slower then ISA interface because the USB transaction has lots of
overhead for handshaking (USB communication is good for bulk data transfers).

----------------------------------------------------------------------------------
사용상 편의를 위해 문서화된 파일과 함께 배포하려 했으나 아직 문서화 작업을
진행 하지 못해 문서는 제외하고 배포합니다.
내용 업데이트 및 문서화가 진행되면 아래 링크도 같이 업데이트 됩니다.

I published schematics, device driver and test application source for Windows XP OS.
But my ALL03 USB adapter card is under-development, so my program has no device
programming capability and it might has software bugs.
I'll update my software continuously.

ALL03 USB adapter schematics (Rev:1.1): Download
Test application sources (Ver:0.10): Download
USB device driver and firmware pack for 32bit Windows XP: Download page

배포하는 회로도 및 소스/바이너리 파일들은 아직 버그가 많이 있을 수 있습니다.
배포된 회로도 및 소스/바이너리 파일들의 저작권은 저에게 있으며 제작자 동의없는
상업적 이용을 금지합니다.
----------------------------------------------------------------------------------

댓글 없음:

댓글 쓰기