Hallo Leute.
Hier im forum gibt es ja schon einige beiträge zum thema
"fehlender-lpt-port -habe-eine-lpt-karte-gekauft-und-nun-problem"
Ich bin leider auf dasselbe problem gestossen. ich habe eine lpt-karte
mit dem moschip-satz mcs9805 gekauft. ich möchte diese karte nun für
ponyprog, sowie zum programmieren von fpgas, msp430 und arm's benutzen.
ich weis das es sinniger wäre auf usb umzusteigen, aber direkt 4 usb
programmer (eben für avr, msp, arm und fpga) zu kaufen ist der tod einer
jeden geldbörse bzw. kontos ...
gibt es eine pci karte die noch die ursprünglichen adressen nutzt, bzw.
die man auf die original lpt-adressen einstellen kann.
nach einigen erfolglosen versuchen (ok es waren nicht viel, da ich am we
nicht viel zeit gehabt habe und nun nicht an meinem rechner zuhause
sitzen kann) habe ich feststellen müssen das sich die adressen meiner
lpt karte nicht verändern lassen (wie gesagt habe noch nicht viel
rumprobieren können).
hat jemand erfahrung mit einer solchen lpt-karte und weiß wie man die
adressen verbiegt und ob es dann klappt (zumindest mit pony-prog und
fpgas von xilinx) oder kann mir jemand eine pci-karte empfehlen die die
original adressen (und nach möglichkeit auch die original register)
verwendet ?
gruß
rene
hat keiner eine idee ?!
habe die karte bis jtzt noch nicht zum funktionieren gebracht. adresse
steht std-mässig immer auf cc00.
habe im datenblatt des chips aber gesehen das es wohl möglich ist die
std adressen 378 usw. zu verwenden (jedenfalls wird die registerbelegung
der ersten 8 register als kompatibel mit allen anderen std-lpt ports
deklariert).
wäre echt schade wenn ich den rechner jetzt nicht für uC-programmierung
benutzen kann ...
Ich hatte mit eben diesem Chip auch kein Glück.
Weder der mitgelieferte Treiber noch Treiber aus dem Netz haben
funktioniert.
Habe jetzt ein neues Mainboard ;-)
@jack
das will ich mir nicht antun ... habe einen dual-core von einem kumpel
geschenkt bekommen. und da mein alter rechner im moment tucken macht
(scheint ein thermisches problem zu sein, der resettet sich bis zu 10
mal bevor der stabil oben ist, und musste deshalb auch 2 monate am stück
durchlaufen da ich mir wegen der resetterei mein xp zerschossen habe)
möchte ich diesen rechner nutzen. aber ohne parallelport keine kekse ...
:-((
vllt find ich ja noch was. oder ich versuche an die pinbelegung des
nicht herausgeführten on-boards parallelports zu kommen. aber der hat
nur 2,00mm rastermaß ....
allet schei...
gruß
rene
ps. falls jemand noch eine idee hat wie man die lpt karte ans laufen
(und vor allem proggen bekommt) bitte her damit ... ich verzweifel hier
... :-(
Die Ansteuerung solcher Karten funktioniert über sogenannte Ports.
Die müssen immer an einer ganz bestimmten Stelle stehen, damit sie der
Treiber in Windows (oder meinetwegen Linux, was auch immer du benutzt)
findet. Grundsätzlich sind diese Portadressen aber einstellbar. Für
einen "normalen" LPT-Port müssen die Portadressen folgendermassen sein,
damit sie von sicher jeder Software erkannt werden:
Data-Register 0x378
Control-Register 0x379
Status-Register 0x37A
wenn ichs noch recht im Kopf habe. Was du jetzt machst, ist folgendes
(windows, in Linux weiss ich grade nicht auswendig wies geht):
Systemsteuerung, System, Registerkarte Hardware, dann Geräte-Manager.
Doppelklick auf deine ominöse Karte, dann wechseln zur Registerkarte
Ressourcen.
Nun musst du prüfen, ob bei "E/A Bereich" deine Werte mit denen im
Bildlein übereinstimmen. Wenn nicht entferne den Haken bei "Automatisch
konfigurieren" und wähle "Konfiguration basiert auf" "konfiguration
0000" aus. Dann musst du jeden einzelnen Eintrag im oberen Feld
editieren: IRQ, DMA, E/A-Bereich. Immer schön drauf achten, dass kein
Konflikt auftritt.
Nachtrag:
Traurig, dass gute "Bastlerschnittstellen" wie LPT und RS-232 immer mehr
verschwinden. Es gibt kaum noch PCs geschweige denn Laptops, welche mit
dieser Hardware ausgerüstet sind. Dann müssen improvisierte Basteleien
her, wie FT232-USB Converter und solcher Kram, was ich persönlich sehr
unschön finde.
>Wenn nicht entferne den Haken bei "Automatisch
konfigurieren" und wähle "Konfiguration basiert auf"
bei mir leider nicht ... (oder ich bin zu blöd dazu)
ich kann in dem ressourcen fenster keinerlei änderungen machen.
muß ich irgendwas generelles ändern (acpi oder sowas) um adressen ändern
zu können ?! eigentlich doch nicht ...
allerdings kann ich bei mir im bios auch nicht die pnp funktion
deaktivieren ...
leider kann ich da kein häkchen machen .. :-(
was muß ich denn einstellen um eine andere konfiguration zu verwenden ?
vllt. das sich da dann was ändern lässt (deswegen fragte ich wg dem
acpi)
die adresse zu ändern war auch mein erster gedanke .. :-(
Uuuuh, das sieht überl aus. Warum du die Portadresse nicht ändern kannst
kann ich dir leider auch nicht sagen. Spontan würde ich jetzt aber mal
das BIOS durchforsten, obs da irgend eine Oprion gibt.
Oder google mal nach eine Tool, das Portadressen ändern kann. Sowas
gibts sicher. Hier bin ich mit meinem Latein allerdings auch am Ende,
ich kann dir höchstens verraten dass deine Portadressen da falsch sind
;) So kanns nicht Funktionieren, jedenfalls mit der meisten Software.
Drucken wird wohl gehen, aber direkte Ansteuerung der Schnittstelle wird
mit Standardsoftware nicht gehen, da die alle davon ausgehen, dass der
LPT ab 0x378 ist. Du könntest höchstens in deiner Programmer-Software
nachschauen, ob sich da die Portadresse einstellen lässt. Bei meinem
Debugger, welcher auch über LPT läuft, kann ich die Portadresse von Hand
ändern.
mit dem bios könnte ebenfalls übel aussehen, da sich da nichts von wegen
pci-konfiguration oder pnp-os einstellen lässt. das ist sehr spärlich
bestückt. noch nichtmals die video-shadow geschichte ist da vorhanden ..
:-(
merkwürdig ...
@mtw
danke für die niederschmetternde antwort ....
war die karte also ein fehlkauf.
wie hast du das problem denn gelöst (wenn du es gelöst hast) ?
gibt es pci-karten die (von mir aus mit jumper,lötbrücken oder gutem
zureden) sich auf die std-adressen (hardwaremässig) switchen lassen ?
ich will mir echt nicht für jede dämliche programmieraufgabe einen
usb-programmer holen müssen ...
gruß
rene
@TheMason:
ich hab noch ein bisschen gegoogelt, und bin auf die Firma Exsys
gestossen. Die bauen solche Adapter, und die sehen auch ganz so aus, als
ob das richtige Schnittstellen wären. Es gibt RS-232 und LPT.
Z.B. in der RS-232 Karte (PCMCIA, Typ II also eigentlich eine PCI-Karte)
befindet sich ein richtiger 16C550-UART.
Ich hab bei der Firma mal angefragt, was so ein Teil kostet. Ich kann
dir die Preise nur für die Schweiz nennen, aber bei euch wirds wohl
ähnlich sein:
RS-232 Karte ca. 90 SFr (Dual Karte),
LPT-Karte ca. 80 SFr.
Ich hab grad noch ein Mail an die Verkäuferin geschickt und nachgefragt
ob die Karten DOS-Kompatibel sind. Antwort habe ich noch keine (erst vor
10 min geschrieben), aber die sollte morgen kommen. Ich werds euch dann
sagen, wenn ich genaueres weiss. Aber nachdem ich mal das Handbuch
durchgeblättert hab', dünkt mich, die Teile schauen recht vernünftig
aus. Angeblich kann man da die IO-Adressen selber zurechtbiegen (sind
einstellbar oder sollten es zumindest sein), auch der IRQ ist
einstellbar. Somit sollte also so eine Karte die Probleme mit LPT und
COM orerst mal lösen.
Jetzt müsste man nur noch eine Karte finden, die beides in einem
vereint: RS-232 und LPT. Die meisten neueren Laptops haben nämlich nur
noch einen PCMCIA-Schacht, deshalb müsstest du die Karten ständig aus-
und wieder einstecken, wenn du beide Schnittstellen brauchst.
@tobias
erstmal vielen dank.
ich hab auch mal bei reichelt geschaut. Da gibt es die EXSYS EX-41011.
Laut Datenblatt werden die io-adressen vom betriebssystem vergeben. hört
sich an als wenn ich dort evtl. dasselbe problem haben könnte (wenn ich
laut dem pdf von moschip die adressen bei xp und 2000 generell nicht
verändern kann, stimmt das ?!)
aber das hört sich ja gut an. mehr als einen weitereren fehlkauf kann es
nicht werden :-)))
gruß und dank
rene
Grundsätzlich vergeben alle NT Betriebssysteme die Portadressen
automatisch. Aber ich meinte, du kannst das auch auf Wunsch abschalten
und für die gewünschten Ports die Adressen manuell einstellen. Bei
meinem Desktop-PC klappt das jedenfalls; ich kann im Geräte-Manager die
Option "Automatisch Konfigurieren" ausschalten und dann von Hand
Portadressen vergeben.
Die beiden Produkte, auf die sich mein vorheriger Post bezieht, sind
EX-1352 (seriell) und EX-1356 (parallel).
siehe auch
http://www.exsys.ch/deutsch/produkte/ex_1352.html
und
http://www.exsys.ch/deutsch/produkte/ex_1356.html
Möglich; die Anbindung ist jedenfalls 16/32 Bit breit. Deshalb sagte ich
PCI. Kann aber auch ISA sein. Im Grunde ist das ja egal, hauptsache das
Ding funzt, oder? ;)
>ich kann im Geräte-Manager die>Option "Automatisch Konfigurieren" ausschalten und dann von Hand>Portadressen vergeben.
aber genau das funktioniert eben bei mir nicht.
ich habe nicht die option das häckchen bei "automatisch konfigurieren"
wegzumachen ...
sonst hätte ich wahrscheinlich glück gehabt mit meiner karte ....
Ja ich glaube das hängt von der Karte ab. Das Betriebssystem erlaubt
dies Grundsätzlich, es wird zwar nicht empfohlen aber wenn du ja eh
keinen parallelen Port hast kannst du ruhig die Adresse 0x378 vergeben.
Ich denke mal es liegt an deiner Karte dass es nicht geht, anders kann
ichs mir nicht erklären.
BTW: Da die oben aufgeführten Karten echte Schnittstellen sind, sollten
sowohl Windows als auch Linux sie unter den richtigen Portadressen
ansprechen können.
hat denn jemand speziell zu der o.g. karte (EXSYS EX-41011) einen
erfahrungswert ? (sprich ob die karte sich wirklich so einfach verhält
?!)
möchte nicht schon wieder einem fehlkauf aufsitzen ... :-(
zumal ich auch langsam mal wieder an meinem richtigen pc programmieren
möchte ... :-(
Ich hab mal zum Probieren den USB2LPT von Henrik Haftmann
(http://www-user.tu-chemnitz.de/~heha/bastelecke/Rund%20um%20den%20PC/USB2LPT/)
in der Version 1.5, also die mit dem Mega8 gebaut, und muss sagen das
Ding
funktioniert tadellos. Bei der Schaltung fehlte mir allerdings der
(übliche)
1k5 Widerstand von D- (USB) nach VCC. Erst nachdem der dran war, ging
alles!
Es wird zwar als "low-speed" Gerät bezeichnet, das bezieht sich meiner
Meinung nach nur auf den "Input", hatte beim Brennen eines 24LC64 mit
Willem Eprommer keinen wesentlichen Geschwindigkeitsverlust.
(Man merkt das eigentlich nur beim "Verify")
Nebenbei bemerkt brauchte ich nur eine Möglichkeit ein paar GAL's
(22V10)
mit GalBlast zu brennen. Das geht ausgezeichnet damit (wenn man
natürlich
die Ports freischaltet zB mit UserPort von Tomas Franzon)
Also kurz: USB2LPT geht unter Win32, Win16, DOS-Box auf den Portadressen
0x378, 0x278, 0x3BC in den Modi SPP, EPP, ECP und EPP+ECP.
Ein wirklich gelungenes Stück Arbeit!
@TheManson
Ich habe ähnliche Probleme mit einem Elnec T51Prog-Programmer, der eine
parallele Schnittstelle braucht. Meine Rechner (beide von Dell) haben
natürlich keine mehr, PCI-Karten, die ich gekauft habe, haben ICs von
Moschip drauf. An einer Karte habe ich den irgendwie nach mehreren
Misserfolgen in einem Rechner zum Laufen bekommen (NM9815, 2 parallel),
an der anderen Karte (MSC9835M, 2 seriell, 1 parallel) nicht. Dabei ist
mir eines aufgefallen: Sowohl die Programmiersoftware als auch das
Programm "PC Wizard"(Freeware) finden die parallele Schnittstellen auf
dem ersten, auf dem zweiten jedoch nicht. "PC Wizard" zeigt da lediglich
die seriellen an.
Fazit: Irgendwo in den (Un-)Tiefen der Windowstreiber scheint da was zu
haken. Selbst wenn der Gerätemanager keine Probleme meldet, kann etwas
faul sein. Das löst zwar dein Problem nicht, aber ist zumindest ein
Hinweis, dass es nicht an Ponyprog liegen muss.
Ich lasse jedenfalls in Zukunft die FInger von diesen "Chipmos"-Karten.
Wenn du Erfahrungen mit einer Exsys-Karte sammeln solltest, gib bitte
Bescheid.
Link für "PC Wizard": http://pc-wizard.softonic.de/
@all
erstmal danke für die infos. werde mir wahrscheinlich (auch auf die
gefahr eines weiteren fehlkaufs hin) die exsys karte holen. wenns dann
nicht klappt muß ich wohl oder übel meinen alten rechner weiternutzen,
denn ich habe echt keine böcke mir einen usb-programmer für meine fpgas,
einen für die msps, einen die arms und einen für die atmels zu holen.
ich nutze zwar momentan noch nicht alles so ausgiebig (vor allem mit
arms und msp430 mach ich zur zeit weniger) aber es wäre mir trotzdem zu
teuer 2-4 usb-programmer kaufen zu müssen (und gerade die
fpga-programmer dürften nicht billig sein, obwohl ich da keine weiteren
infos habe) ....
gruß
rene
@TheMason:
Ich habe heute noch Mail vom Exsys-Support bekommen.
Ich habe angefragt, ob die Karten eine PC-Gleichwertige Schnittstelle
anbieten und wie das mit den Portadressen aussieht. Der Techniker
meinte, die Exsys-Karte ist vollkommen identisch mit der Schnittstelle
eines PCs. ABER:
Die Portadressen (I/O Adressen) der Karte sind NICHT DOS-Kompatibel.
Wenn du also mit DOS-Programmen auf deine Exsys-Schnittstelle
zuzugreifen versuchst, wird das wahrscheinlich nicht funktionieren.
Allerdings wage ich immernoch zu behaupten dass man die I/O-Adressen
selber zurechtbiegen kann. Wie dem auch sei - mit irgendeiner
Windows-Software sollten die Karten m.E. laufen.
Wenn nicht:
Es gab hier im Forum mal einen (wahrscheinlich ziemlich viele ;))
Thread, wo dasselbe Problem behandelt wurde. Jemand hat dann einen Link
gepostet zu einer PCMCIA-Karte, die laut herstellerangaben auch mit dem
ältesten DOS noch laufen soll, da sie die gleichen Portadressen
verwendet. Leider finde ich den Link nicht mehr. Aber allenfalls wäre
eine Suche wohl keine schlechte Idee, wenn du wirklich eine
DOS-kompatible Karte brauchst.
Ich bin im Moment auch etwas verwirrt, aber ich denke mal ich werde mir
nächstens je eine dieser Exsys-Karten sichern. Wer weiss wie lange man
die noch bekommt. Lieber kaufe ich eine solange ich noch einen Laptop
mit RS232 und parallel habe ;) Notfalls kann man sich dann ja nach einer
anderen Lösung umsehen.
BTW: Einige Siemens-Business Notebooks haben noch RS232 On Board. Wenn
du also bei gelegenheit einen neuen Laptop kaufen willst/musst/darfst...
@tobias :
danke für deine mühen.
gerade das "ich-muß-einen-neuen-rechner-kaufen" wollte ich mir
eigentlich ersparen. wie gesagt habe den pc von einem kumpel geschenkt
bekommen und der ist deutlich schneller als meiner (da dual-core) und
ich möchte diesen rechner gerne verwenden.
ich schraub am wochenende mal den rechner auf, und versuche beim
motherboard hersteller das datenblatt zu bekommen. hoffentlich habe ich
glück.
auf dem board selbst ist wohl eine lpt drauf (jedenfalls vermute ich das
und das bios sagt mir auch das eine da ist), allerdings kein bracket
dazu und der pfostenstecker hat ein ganz leckeres rastermaß .... (kch
glaube 2 mm oder 1.27).
muß ich mir wohl (falls ich die infos bekomme) selbst ein bracket bauen.
eine karte wäre mir lieber gewesen da im falle eines kurzschlusses dann
einfach eine neue karte einstecken kann und nicht ein neues motherboard
holen muß ....
gruß
rene
Ich kann Dir nur raten, den USB2LPT aufzubauen, den "Mtw" schon gestern
empfohlen hat (11.12. um 9.11).
Du brauchst dazu lediglich einen Atmega8 (Dip) und einen 12MHz-Quarz.
Billiger gehts nicht.
@The Mason:
Ach sry, ich war mit meinen Überlegungen total neben den Schuhen.
Ich hab wohl deinen ersten Post nicht recht gelesen; ich dachte das
Problem ist an einem Laptop. Deshalb habe ich dir ja auch PCMCIA-Karten
vorgeschlagen ;)
Nun da du aber an einem Desktop arbeitest, sieht die Sache etwas anders
aus.
Meiner Meinung nach müsste es da schon passen, wenn du eine ganz normale
LPT-Karte kaufst oder RS232-Karte (Conrad hat welche im Angebot, die
nicht die Welt kosten [billiger als die PCMCIA] und die beide
Schnittstellen auf einer Karte haben). Eigentlich ist es bei richtigen
PCI-Karten möglich, die Portadressen zu verbiegen. Vielleicht ist deine
MOS-Chip Karte eine PCIe-Karte?
Wenn du PCI hast würde ich es auf jeden Fall mit einer ganz
stinknormalen Karte von C versuchen. Viel schiefgehen kann nicht dabei.
Oder schau mal hier:
https://www.distrelec.com/ishopWebFront/catalog/product.do/para/language/is/de/and/shop/is/CH/and/series/is/1/and/id/is/02/and/node/is/DD-2387.html
Den Shop gibts auch in D, und die Karten hier sind DOS-Kompatibel (das
heisst das sie mit "normalen" IO-Ports laufen). Und spotbillig
obendrein. Fraglich ist halt nur ob du noch PCI hast.
wg. Tobias Plüss:
WARNUNG vor billig!
Ich habe eine Karte vom großen C (2x parallel), da ist ein NM9815 von
Chipmos drauf. Das ist eine der zwei Karten (beide mit Chipmos), die bei
mir jede Menge Probleme machen. Vielleicht weil die neusten Treiber von
2002 sind und nie den Kompatibilitätstest bestanden haben. Manchmal ist
billig halt nicht (seinen) Preis-wert.
Am besten in den Computershop seiner Wahl gehen und vor dem Kauf einen
scharfen Blick auf die Karte werfen. Wenn der Chip mit "NM97", "NM98"
oder "MSC98" beginnt, rate ich nach meinen Erfahrungen davon ab.
Okay diese MOS-Chips scheinen echt eine "Plage" zu sein.
Warum sind auch die Computerhersteller so blöd und schaffen diese
Schnittstellen einfach ab? Wollen die einem vorschreiben welche
Schnittstelle man zu benutzen hat der was?
Wir können wohl froh sein wenns wenigstens noch PCI-Karten dafür gibt.
@detlev
würdest/könntest du eine exsy karte empfehlen ?
mit der nm9805 habe ich auch schon meine "erfahrung" gemacht.
weiß allerdings nicht so recht ob es bei mir am pc wirklich läuft da ich
die port-adressen nicht "verbiegen" kann ... (vllt. liegts aber auch am
main-board)
muß ich am wochenende nochmal versuchen rauszufinden ... ansonsten weiß
ich echt nicht weiter ausser meinen alten pc zu nutzen ...
@TheMason:
Die verbiegbarkeit der Portadressen hängt offensichtlich von der
entsprechenden Karte ab.
Bei meiner GraKa oder Netwerkkarte kann ich die Adressen auch nicht
veränern; beim COM und LPT gehts. Ebenso wenig kann ich die Adresse des
USB-Controllers oder des ATA-Controllers ändern.
Ich würde mal behaupten, es hängt von der Karte ab, ob die das Ändern
erlaubt oder nicht. Deshalb gings bei dir auch nicht, weil deine
MOS-Karte offenbar eine fixe Adresse will.
ich glaub dann bestell ich nochmal diese lpt karte nach ... (hatte
gerade vor ner halben stunde bei reichelt bestellt)
wenns nicht passt kann ich die beiden karten immer noch verhökern ...
@TheMason:
Mit Exsys-Karten habe ich (noch) keine Erfahrung. Aber die Treiber der
parallel-Karte sind von 2007 und laut Datenblatt Windows-zertifiziert,
das schafft Vertrauen. Mit z.B. 15.90EUR bei Reichelt ist sie auch kein
Luxus. Und noch schlechter kann sie eh' kaum sein.
Dieses Jahr ist die Karte jedoch kein Thema mehr für mich, da der
Programmer erst einmal an der NM9815-Karte läuft.
TheMason wrote:
> ich glaub dann bestell ich nochmal diese lpt karte nach ... (hatte> gerade vor ner halben stunde bei reichelt bestellt)> wenns nicht passt kann ich die beiden karten immer noch verhökern ...
Gibt dann auf jeden Fall deine Erfahrungen hier zum Besten. Du wirst
sicher nicht der letzte mit diesem Problem sein.
>Gibt dann auf jeden Fall deine Erfahrungen hier zum Besten. Du wirst>sicher nicht der letzte mit diesem Problem sein.
hoffe ich kann dieses problem endlich lösen ...
zumal ich bald urlaub habe und mit meinen fpgas weitermachen möchte :-)
und dafür habe ich nunmal keinen usb-programmer (und diesen werde ich
mir auch bestimmt nicht extra kaufen ....)
Vielleicht hilft es: Aus der PonyProg Doku:
http://www.lancos.com/e2p/ponyprog2000.html
Q: I have a Windows2000/XP PC with an extra LPT card, but PonyProg can't
select the added port, can I force it?
A: First you have to select the AvrISP-I/O interface instead of the API
version.
Then you have to edit ponyprog2000.ini file and disable port
autodetection: AutoDetectPorts=NO then you have to discover the real
address of the extra LPT port by looking at Computer Management console
-> Device Manager -> LPT ports -> resources. For example if the extra
LPT is LPT3 and the address is DF00 you need to enter the line
LPTPorts=378,278,DF00
Note that this fix works only in some version (use 2.06g and newer).
Gruß
Daniel
@daniel ..
aaaaah... danke
nach ersetzen der adresse 378 durch cc00 (ist die adresse meiner lpt
karte) hatte mir ponyprog diese angabe kurzerhand nach einem erneuten
start von ponyprog überbügelt (war nachher nur noch 378 zu sehen)
werds am wochenende mal probieren ...
danke, das hilft mir zumindest bei ponyprog weiter.
muß nur mal zusehen wie ich das mit meinen xilinx fpgas mache ...
Tobias Plüss wrote:
> Warum sind auch die Computerhersteller so blöd und schaffen diese> Schnittstellen einfach ab? Wollen die einem vorschreiben welche> Schnittstelle man zu benutzen hat der was?
Ja, genau genommen Microsoft. Die haben diese Schnittstellen als
"Erblast" (legacy) bezeichnet und die Computerhersteller aufgefordert,
nur noch auf USB zu setzen. Fairerweise muss man sagen, dass solche
"dummen" Schnittstellen, die zudem so knappe Resourcen wie Interrupts
für sich allein haben wollen, auch nicht mehr in das Konzept passen.
99.9999% aller Computernutzer haben damit kein Problem, nur halt Leute,
die veraltete oder selbst gebastelte Peripherie einsetzen wollen. Den
PS/2 Schnittstellen für Tastatur und Maus weint ja überhaupt keiner
nach.
> Wir können wohl froh sein wenns wenigstens noch PCI-Karten dafür gibt.
Das ist auch die richtige Methode. Die "Unbelehrbaren" haben ihre
Schnittstellen, die große Masse muss sich hingegen nicht damit
rumplagen.
> Okay diese MOS-Chips scheinen echt eine "Plage" zu sein.
Die Chips selber sind nicht das Problem, sondern die mangelhafte Pflege
der Treiber. Dafür fühlt sich offensichtlich niemend zuständig.
Eigentlich müssten die Hersteller der Karten sich darum kümmern. Die
geben aber nur die Treiber der Chiphersteller weiter, Eigenentwicklung
kostet ja Geld. Der Chiphersteller hingegen sieht seine Aufgabe in der
Herstellung von Hard- und nicht Software. Und Microsoft hat kein
Interesse daran, das zu unterstützen. Bei mir hat die eine Karte am
Anfang ja funktioniert. Irgendein Windows XP-Update muss dann zu den
Problemen geführt haben.
Ich habe mir vorher auch keine Gedanken darüber gemacht, wie
problematisch so etwas sein kann. Ich dachte, die Chips würden
softwareseitig wie die alten Bausteine aussehen und daher vom
Betriebssystem unterstützt werden. Dann wäre auch egal, aus welcher
Fabrik sie kommen. Dem ist aber offensichtlich nicht so. Inzwischen habe
ich neben Moschip und Oxford auch noch die Firma sunix
(http://www.sunix.com.tw) entdeckt, die solche Chips herstellt. Die
sollen sich auch per Treiber auf 0x378 re-mappen lassen, die Homepage
von sunix ist aber nicht erreichbar. Das ist schon wieder ein ganz
schlechtes Zeichen.
Ergänzung:
Die Sunix-Homepage lässt sich doch erreichen, aber nicht mit Firefox,
sondern nur mit dem IE. Die Treiber sind von Anfang 2005. Auch darum
werde ich daher einen Bogen machen.
@Detlev:
Aaaaha, Microsoft ist also der Schuldige. Von wegen Legay (endlich weiss
ich was legacy heisst ;)).
USB finde ich nicht wirklich die tollste aller Schnittstellen; als
PC-Anwender finde ich sie praktisch, aber aus elektronischer Sicht ist
sie ziemlich ... nicht so toll. Warum muss auch das Zeug so unnötig
kompliziert sein? USB wäre eine praktische Schnittstelle, wenn man sie
selber ansteuern könnte. Dann wäre es kein Problem - man rüstet einfach
alle Geräte, die früher mit RS-232 liefen auf USB um. Aber da man dazu
jetzt eine improvisierte Lösung braucht mit irgendwelchen USB-UARTS, ist
das ziemlich unschön, zumal diese Converter nicht wirklich immer
zuverlässig funktionieren und nicht überall gleich sind.
Warum Microsoft den COM-Port verbannen will ist mir ein Rätsel. Was
denken sich die dabei? Eigentlich sollten sie doch wissen dass es Leute
gibt die sowas noch brauchen.
Tobias Plüss wrote:
> Aaaaha, Microsoft ist also der Schuldige.
Wer denn auch sonst? ;)
> Warum Microsoft den COM-Port verbannen will ist mir ein Rätsel. Was> denken sich die dabei? Eigentlich sollten sie doch wissen dass es Leute> gibt die sowas noch brauchen.
Aus deren Sicht kann ich es verstehen. 99.99% brauchen ihn nicht und die
restlichen 0.01% zahlen auch nicht mehr für ihr Windows, verursachen
aber überproportional viel Aufwand im Support. Oder sie sagen sich, dass
solche Do-It-Yourself-Typen ohnehin früher oder später zu Linux
wechseln.
Ich mag USB auch nicht. Vor allem, weil ich unter Windows noch in der
Regel noch weitere Treiber brauche. Auf der Hardwareseite wäre das wohl
beherrschbar, schließlich gibt es von ATMEL schon Prozessoren mit
USB-Schnittstelle. Mir fehlen noch Bespielprojekte, wo man sich die
Software für den uC abgucken kann.
@Detlev:
Die meisten Notebooks werden auch mit einer Firewire
IEEE1394-Schnittstelle ausgerüstet. Man braucht die aber auch nicht
wirklich; ich selber hab überhaupt kein Gerät das mit so ner
Schnittstelle läuft. Und die meisten Digitalcameras, wo man früher sowas
einsetzte, können heute sowieso USB.
RJ11-Buchsen gibt es auch noch zu hauf. Aber wer will schon noch mit
einem 56k-Modem im Internet surfen? Von dem her erlaubt Microsoft noch
einen Haufen Zeug, das unnötig wäre.
Eigentlich könnte man mit einem PC auskommen, der nur noch
USB-Anschlüsse hat.
hi
ich hätte noch ne Idee zum Adressenverbiegen, naja zwei sogar^^
erstmal in der registry nachschauen, vielleicht kann man da drin
rumbügeln.
andere idee, im gerätemanager in dem Ressourcendialog, wo der Haken
deaktiviert ist, mal Windows Enabler (googlen) benutzen, vielleicht kann
der ja was ausrichten
Ele
Wenn auf deinem Board ein LPT mit 2mm Raster ist dann kannst du ein
Paralellbrakeout von einem Shuttle PC nehmen. Die haben auch 2mm Raster
intern.
Kostenpunkt: 5 Euro bei Reichelt BestNr: SHUTTLE PC08
Dann hast du den echten LPT1 und kommst am billigsten weg.
Richtig ist:
* PCI-Karten mit Parallelport sind register-kompatibel
zu ISA-Parallelports, AUSSER bei den Portadressen
(Interrupt und DMA unklar, aber braucht niemand)
* Man kann die Portadressbasis nicht verstellen,
jedenfalls nicht in den ISA-Bereich
* Die Offsets zu den Portbasisadressen sind gleich zur ISA-
Implementation (also Steuerport = Basisadresse + 2), ABER
* Die Offsets zu ECP-Registern sind NICHT gleich.
Stattdessen gibt es eine gesonderte ECP-Basisadresse
* Die Portadressen-Basis kann man im Gerätemanager "schätzen".
Die normalen Portadressen okkupieren 3-8 aufeinanderfolgende
Adressen, die ECP-Adressen stets 3.
* Gängige Software fürs Parallelport kann man so konfigurieren,
dass sie beliebige angebbare Basisadressen "frisst",
bspw. PonyProg2000, XILINX iMPACT, nicht jedoch AVRDUDE.
Bei aktueller Software ggf. beim Entwickler nachhaken
* Es sollte möglich sein, "Portadress-Umsetzer-Treiber" zu
schreiben.
Einen habe ich gefunden, läuft aber ab Windows XP nicht mehr.
http://www-user.tu-chemnitz.de/~heha/hs_freeware/dknack_.exe
Das Portadressen-Umsetzen ist hier nur eine
Rand-Funktionalität!
* Andernfalls steht einem Patch widerspenstiger Software
nichts im Wege! Irgendwo im Code- oder initialisierten Datensegment
wird die feste Portadressbasis schon stehen...
henni
Hallo Henrik,
danke für deine Auskünfte.
Nun mal ne Frage: Du sagst, widerspenstige Software könne man ggf.
"Patchen".
Nun habe ich so eine Software. Es ist ein Debugger, der mit dem
Debug-Gerätlein, welches am LPT hängt, kommunizieren will. Das
Debug-Gerätlein debugt nachher das Target.
Die Software gabs noch für Windows NT, wurde aber seither nicht mehr
weiterentwickelt. Und offenbar ist sie auch auf die fixen Portadressen
festgelegt. Es wird zwar ein Treiber mitgeliefert, mit dem funktioniert
die Software auch (aber halt nur mit der Standard-Portadresse). Könnte
man ggf. diesen Treiber patchen? Und wenn ja, wie mache ich das?
Oder kannst DU sowas machen?
Anbei mal der Treiber, vielleicht ist dir ja mal langweilig, dann
könntest du das Ding mal auseinander nehmen ;) Ich weiss nämlich nicht
wies geht.
Grüsse
Tobias
Hallo zusammen,
Dieses Thema ist zwar schon etwas älter, aber vielleicht gibts noch
jemand der sich dafür interessiert.
Ich habe das selbe Problem mit eine Karte mit einem "Moschip". Wir
benötigen einen Parallelport für einen Dongle für eine Software die
nicht mehr vertrieben wird (daher auch keine USB-Dongles erhältlich).
Ich habe etwas interessantes festgestellt: Ich habe hier einen neuen
Dell-Laptop und ein altes Toshiba-Notebook, welches noch einen
Parallelport besitzt. Beim Dell habe ich keine Chance den Dongle via
PCMCIA zu erreichen, beim Toshiba funktioniert es, obwohl das
Moschip-Teil die selben I/O-Adressen benutzt. Für mich heisst das, dass
es wohl nicht an der Hardware liegen kann, sondern Windows Mist baut,
oder nicht?
Grüsse,
Mr. Twister
Mr. Twister schrieb:> Hallo zusammen,>> Dieses Thema ist zwar schon etwas älter, aber vielleicht gibts noch> jemand der sich dafür interessiert.>> Ich habe das selbe Problem mit eine Karte mit einem "Moschip". Wir> benötigen einen Parallelport für einen Dongle für eine Software die> nicht mehr vertrieben wird (daher auch keine USB-Dongles erhältlich).>> Ich habe etwas interessantes festgestellt: Ich habe hier einen neuen> Dell-Laptop und ein altes Toshiba-Notebook, welches noch einen> Parallelport besitzt. Beim Dell habe ich keine Chance den Dongle via> PCMCIA zu erreichen, beim Toshiba funktioniert es, obwohl das> Moschip-Teil die selben I/O-Adressen benutzt. Für mich heisst das, dass> es wohl nicht an der Hardware liegen kann, sondern Windows Mist baut,> oder nicht?>> Grüsse,> Mr. Twister
Für den Fall, dass immer noch jemand eine Lösung suchen sollte oder
aktuell, so wie ich, auf dieses Problem stoßen sollte:
Lösung:
1. PONYPROG2000.INI im Programmordner öffnen
2. folgenden Eintrag von "YES" auf "NO" abändern >>> AutoDetectPorts=NO
3. folgenden Eintrag mit den Infos aus Gerätemanager/LPT/Ressourcen
ergänzen: z.B. E/A-Bereich E400 - E407 >>> LPTPorts=E400
4. speichern - FERTIG!
------------------------------------------------------------------------
Anlass war bei mir ebenfalls der sagenumwobene MosChip MCS9805, der als
separate PCI-Steckkarte auf dem Mainboard sitzt.
Nachdem ich die INI-Datei abgeändert hatte, lief mit PonyProg 2.07a beta
alles einwandfrei!
Hallo!
Um das Problem mit den PCI- und PCIexpress-LPT-Karten mal abzurunden:
Solche Karten können m.W. niemals auf Standard-Adressen (378h usw.)
laufen, weil dieser Adressbereich in der Südbrücke (south bridge) des
Chipsatzes für ISA - und eben nicht für PCI/PCIe reserviert ist. Diese
Adressen gelangen schlicht und ergreifend gar nicht zum PCI (obwohl das
erstaunlicherweise nicht für Port-80h-Debuggerkarten gilt), sondern
werden von der Südbrücke auf den board-internen ISA-Bus geroutet, wo
dann solches Geraffel wie die PS/2-Maus-Emulation, der System Management
Bus (aka I²C) und der Boot-ROM dran hängt. Oder eben nichts beim Zugriff
auf 378h.
Ein Großteil der Programme hat eine Möglichkeit, solche
Nicht-Standard-Adressen zu verwenden (bspw. PonyProg2000 oder Xilinx
iMPACT), man mus nur mal die Readme-Datei durchlesen.
Wieder andere Programme (vornehmlich DOS-Programme) kann man durch einen
geschickten Patch dazu bringen, die passende Adresse zu benutzen; der
Patch ist dann rechnerspezifisch.
Schließlich gibt es noch die Möglichkeit, den Treiber von USB2LPT so zu
ändern, dass er die Portzugriffe (bspw. via Debugregister) eben nicht
aufs USB2LPT-Gerät (mit dem ATmega8 oder dem CY7C68013) umleitet,
sondern auf die PCI/PCIe-Karte. Das macht - im Gegensatz zu USB - keine
nennenswerten Geschwindigkeitseinbußen.
Interesse?
Unter Win64 sind die Hürden übrigens weniger hoch als bei USB2LPT, weil
nur die Interna des Prozessors, nicht die von Windows, bekannt sein
müssen, um einen solchen Umleitungstreiber zu schreiben (natürlich in
X64-Assembler).
Henrik Haftmann schrieb:> Schließlich gibt es noch die Möglichkeit, den Treiber von USB2LPT so zu> ändern, dass er die Portzugriffe (bspw. via Debugregister) eben nicht> aufs USB2LPT-Gerät (mit dem ATmega8 oder dem CY7C68013) umleitet,> sondern auf die PCI/PCIe-Karte. Das macht - im Gegensatz zu USB - keine> nennenswerten Geschwindigkeitseinbußen.> Interesse?
Großes Interesse! Hast du das irgendwo schon mal veranschaulicht?
Ich nutze eine DELOCK 61612 PCMCIA--> LPT Karte mit einem OXPCI840 Chip.
Leider kann ich in Windows die Adressen nicht frei konfigurieren :(
Delock Treiber: http://www.delock.de/download/driver/61612/A/158
Oxford Treiber: http://www.plxtech.com/download/file/1006/217075