Stichworte: USB, LPT, Parallel, Parallelport, Druckerport, Konverter, Adapter
USB2LPT — zur Übersicht
USB2LPT, Liste der funktionierenden Programme
Diese Liste sollte durch entsprechendes Feedback wachsen…
Hinweis: Der Einsatz von USB2LPT mit Programmiergeräten kann
falsch oder schlecht programmierte Chips zur Folge haben!
Ursache ist die durch die Zeitdehnung auftretende mögliche Verlängerung
von Programmierimpulsen. Das hängt letztlich davon ab,
- ob die PC-Software oder das Programmiergerät
den Programmierimpuls erzeugt
- ob der Chip ĂĽberhaupt bestimmte zeitliche Anforderungen stellt.
In der Regel sind ISP-Chips (neuere Mikrocontroller, JTAG),
serielle EEPROMs sowie Flash-Speicher davon ausgenommen.
Ist die Dauer des Programmierimpulses wichtig (bspw. für die verlässliche
Programmierung in der Serienproduktion), sollte von USB2LPT Abstand
genommen werden. Überhaupt sollte die zugehörige Software nicht auf
allzu schnellen Rechnern installiert werden, weil dies (je nach Qualität
des Brennprogramms) zu zu kurzen Impulsen fĂĽhren kann.
|
Hinweis 2: Obwohl der Einsatz von USB2LPT mit Programmiergeräten
naheliegend erscheint, ist in der Regel davon abzuraten.
Die Programmierzeiten sind unerträglich lang.
Den Vogel schieĂźt die GALEP-Software ab, da dauert das Brennen der kleinsten
PIC mehrere Minuten.
PCMCIA-Parallelports haben diesen Nachteil nicht.
|
- AVRDUDE (Kommandozeilen-Programmierer fĂĽr Atmel AVR, ATmega)
In der Regel wird man -P lpt1
angeben,
auch wenn im Gerätemanager unter Windows XP „LPT3“ steht.
Man beachte, dass AVRDUDE implizit mit nur 3 festen Portadressen arbeitet:
lpt1 = 0x378
lpt2 = 0x278
lpt3 = 0x3BC
Also genau so wie bei der Eigenschaftsseite „Emulation“ für's USB2LPT im Gerätemanager.
Geschwindigkeit: ca. 5 % (ATmega16 auslesen: 360s statt 18s), 16 IN-Befehle pro Bit, auch beim Schreiben
- PonyProg2000
(Freeware-Programmer bes. fĂĽr PIC, ATmega, serielle EEPROMs)
- Es muss in der INI-Datei die automatische
Schnittstellen-Suche abgeschaltet werden: „AutoDetectPorts=NO“!
- Xilinx iMPACT
(JTAG-Programmer bes. fĂĽr Xilinx-CPLDs und FPGAs)
- Die automatische Port-Detektion versagt, und es sind folgende
Umgebungsvariablen zu setzen:
set XIL_IMPACT_ENV_LPT_BASE_ADDRESS=378
(oder ensprechend der Einstellung im Gerätemanager)
set XIL_IMPACT_ENV_LPT_ECP_ADDRESS=778
(immer LPT_BASE + 400h)
Wo werden unter 2k/XP Umgebungsvariablen eingestellt?
Hier:
Start→Einstellungen→Systemsteuerung→System→Erweitert→Umgebungsvariablen
- Anwendungsbericht von Sebasitan Mate:
- Erfolgreich angewendet wurde USB2LPT 1.7 unter Windows XP mit dem
Pollin CPLD-Board mit Xilinx ISE 6.3i, siehe auch
Screenshot.
- Die höchste Programmiergeschwindigkeit wurde mit einer
Schreibcache-Verzögerung von 22 ms erreicht.
- Die Programmierzeit betrug 145 s (statt 5 s mit einem echten Parallelport).
- Unter Parallels Desktop 4 am Mac sollte der virtuelle Parallelport deinstalliert werden.
- ispVM System (neuer Treiber), fĂĽr ispLSI1016E (CPLD)
etwa gleiche Performance wie fĂĽr echtes Parallelport
- ispLEVER (ispVM-System, von
Lattice), gute Performance!
- Sämtliche (meine)
h#s-Programme (logisch!)
- LabView
- Willem Eprom 0.97ja
Report von Paul Baumann:
Im Gerätemanager müssen unter dem Reiter „Emulation“
bei der Anzapfungsmethode alle 3 Häkchen gesetzt sein.
LPT-Erweiterung steht auf EPP 1.9
Ich denke mal, der Haken bei „Debugregister“ reicht,
und sicherlich auch SPP, wenn man das ECR auf „unidirektional“ stellt.
(ECR-Vorgabe bei Auslieferung ist „bidirektional“ = PS/2-Modus.)
- SP12 (Programmer fĂĽr Atmel-AVR,
http://www.xs4all.nl/~sbolt/e-spider_prog.html)
- WinPIC
- PIC-Programmiersoftware von www.sprut.de
- Antennenanalyzer von Gerd Koetter (bspw. hier)
- MSP430-Programmierung via msp430-jtag
- Discolitez Deluxe32
FĂĽr DiscoLitez gibt es auch ein
Plugin
für den Betrieb mit einem konventionellen USB→Drucker-Adapter, sowie ebenda alternative (bessere) USB-Lösungen.
- GALEP-4 (GALEP-3 ungetestet),
allerdings nur mit Patch, nicht empfehlenswert, weil unendlich langsam!
- DataIO 2700 mit einigermaĂźen akzeptabler 8-facher Zeitdehnung.
Allerdings kann es sein, dass es noch mehr zu tun gibt. Siehe Link.
- Xeltek SuperPro Z Auslesen eines EPROMS 2732 (4 KB) dauert 20 Sekunden, ein 27C020 braucht Minuten…
Benötigt Debugregister-Trap und funktioniert daher nur bis max. Windows 2000 oder unter VMWare!
- Synfox-Frequenzsynthesizer via I²C
Umgebung:Windows XP in der „Parallels Desktop 3.0 Virtual Machine“ unter Mac OSX 10.5.7 auf MacBook Pro
- PowerSDR und SDR-1000
(Software Defined Radio, fĂĽr Funkamateure)
Low-Speed reicht locker.
Es wurde ein
Problem mit der quarzlosen Version 1.6 gemeldet,
ggf. Quarz (12000 kHz) und Kondensatoren (2x 22 pF 0603) nachbestĂĽcken
und Firmware 1.5 drauf brennen, dann ging es angeblich besser.
Neu (fĂĽr Win64): Ich habe eine Ersatz-PortTalk.dll
geschrieben, die den Treiber per DeviceIoControl() aufruft,
was ja schon funktioniert.
Diese einfache DLL kann man als Referenzimplementierung der
USB2LPT-Gerätesteuer-API ansehen.
Diese enthält bereits Kode zum Ansteuern von USB2LPT mit neuester Firmware
(mit HID-Interface),
um „treiberlos“ (sowohl unter Win64 als auch unter Win32) zu laufen.
- Wild GIF12 (Leica-Kartenleser)
Mangels Test funktioniert es damit wohl noch nicht: