AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Datenregister der LPT schnittstellle abfragen.
Thema durchsuchen
Ansicht
Themen-Optionen

Datenregister der LPT schnittstellle abfragen.

Ein Thema von snow · begonnen am 30. Dez 2007 · letzter Beitrag vom 30. Dez 2007
Antwort Antwort
snow

Registriert seit: 28. Jun 2007
277 Beiträge
 
#1

Datenregister der LPT schnittstellle abfragen.

  Alt 30. Dez 2007, 10:05
Hallo

ich benutze die inpout32.dll zur ansteuerung der lpt-schnittstelle. Dazu brauch Die Portnummer Des Datenregisters. Da mein programm auch ohne user eingaben funktionieren soll wollt ich mal fragen ob jemand weiss wie ich an diese Daten komme. Werden solche einstellungen in der Regestry gespeihert und wenn ja wo?

gruß snow

PS:// die verwendung einer Tabelle will ich verhindern, da viele PC(z.b notebooks) von diesen Standarteinstellungen abweichen.

Auch brauch ich die infos nicht nur für lpt1/lpt2 sondern allgemein.
  Mit Zitat antworten Zitat
Reinhard Kern

Registriert seit: 22. Okt 2006
772 Beiträge
 
#2

Re: Datenregister der LPT schnittstellle abfragen.

  Alt 30. Dez 2007, 14:51
Zitat von snow:
Hallo

ich benutze die inpout32.dll zur ansteuerung der lpt-schnittstelle. Dazu brauch Die Portnummer Des Datenregisters. Da mein programm auch ohne user eingaben funktionieren soll wollt ich mal fragen ob jemand weiss wie ich an diese Daten komme. Werden solche einstellungen in der Regestry gespeihert und wenn ja wo?

gruß snow

PS:// die verwendung einer Tabelle will ich verhindern, da viele PC(z.b notebooks) von diesen Standarteinstellungen abweichen.

Auch brauch ich die infos nicht nur für lpt1/lpt2 sondern allgemein.
Hallo,

das wird in den meisten Fällen nicht mehr funktionieren:

Eine feste IO-Adresse haben nur Standard-LPTs auf dem Motherboard, die sind aber fast ausgestorben.

Bei PCI-Steckkarten wird der IO-Bereich vom Treiber beim Booten festgelegt, kann sich also jederzeit ändern, z.B. beim Stecken anderer Karten.

Redirected Ports (USB,Ethernet) haben überhaupt keine IO-Adresse.

Also beschränkst du dich gleich auf 2F8/3F8 oder du brauchst eine ganz andere Software.

Gruss Reinhard
  Mit Zitat antworten Zitat
Muetze1
(Gast)

n/a Beiträge
 
#3

Re: Datenregister der LPT schnittstellle abfragen.

  Alt 30. Dez 2007, 15:08
Zitat von Reinhard Kern:
Also beschränkst du dich gleich auf 2F8/3F8 oder du brauchst eine ganz andere Software.
Das wäre nicht zu empfehlen, die seriellen Ports zu nutzen.

@snow: was hast du überhaupt vor? Vllt. kann man das ganze ja mit der WinAPI lösen.
  Mit Zitat antworten Zitat
snow

Registriert seit: 28. Jun 2007
277 Beiträge
 
#4

Re: Datenregister der LPT schnittstellle abfragen.

  Alt 30. Dez 2007, 17:56
Ich will Pollin-K8 Relaiskarten ansteuern.

dazu muss ich einfach den Zustand der 8 Relais zum LPT schicken(ins Datenregister). Mein Arbeitgeber hat aber viele Relaiskarten(Modelleisenbahn-Weichensteuerung). er benutz Pollin PCI erweiterungskarten.(hat also auch E/A-Bereiche). Da der user aber nicht so viel wissen haben soll um meine software zu verwenden soll sich dass programm automatisch die E/A-Bereiche für LPTX besorgen.

Ich weiss, dass die InpOut32.dll nicht der von Bill Gates anerkannter Weg ist aber ich find einfach keine Freeware LPT-Komponente bzw kein Tutorial für eine WinAPI-Lösung.(ich weiss es gibt hier eins im Forum aber dass check ich net).

gurß snow
  Mit Zitat antworten Zitat
Twinsetter

Registriert seit: 30. Dez 2007
9 Beiträge
 
#5

Re: Datenregister der LPT schnittstellle abfragen.

  Alt 30. Dez 2007, 18:28
Hallo zusammen!

Bin heute über eine ganz andere Sache ins Forum gestolpert.

Also, wenn ich die richtig verstanden habe möchtest Du Daten über die parallele Schnittstelle ausgeben bzw. eingeben. Überlicherweise gibt es am PC nur max. 2 parallele Schittstellen - LPT1 (Adr. 378hex) und LPT2 (Adr. 278hex). Weitere Parallelports sind eher unüblich, Du kannst sogar davon ausgehen, daß die meisten Systeme nur den LPT1 besitzen.

Vielleicht hilft Dir erst einmal folgender Code weiter:
http://www.swissdelphicenter.ch/de/showcode.php?id=830

Das Beispiel ist eigentlich recht flexibel gehalten, so daß Du theoretisch auch mit anderen Ports arbeiten kannst, Du brauchst halt nur die Portadresse.

Ansonsten würde ich Dir das Buch "PC-Schittsellen" von Michael Thieser empfehlen. Hier sind alle gängigen Schnittstellen beschrieben und auf der dem Buch beiliegenden CD sind auch verschiedene Schnittellenbibliotheken (in C, Pascal, VB und Powerbasic) dabei.
Am Ende des Buches gibt es auch einen Hardwareteil, wo unter anderem auch ein Seriell-Parallelwandler hard- und softwaremäßig beschrieben wird.
Das Buch hat die ISBN 3-7723-8092-1. Das Buch ist zwar schon älter, beschreibt aber alles rech ordentlich
  Mit Zitat antworten Zitat
snow

Registriert seit: 28. Jun 2007
277 Beiträge
 
#6

Re: Datenregister der LPT schnittstellle abfragen.

  Alt 30. Dez 2007, 19:10
Nein Der Code ist direkt, sprich unter windows >NT nicht einsatzfähig.

Es funktioniert ja schon mit der .dll aber da ich weiss, dass mein Kunde mehrere ERweiterungskarten nutzen will muss auch LPT3,4,5 usw unterstütz werden.

gruß snow

PS:// ich hab grad was bemerkt.... der Pegel der Schnittstelle ist genau andersrum als die programm eingabe. Sprich wenn ich pin eins auf 1 schalte hab ich 0 V wenn ich auf aus schalte hab ich 5-7 Volt.
  Mit Zitat antworten Zitat
Twinsetter

Registriert seit: 30. Dez 2007
9 Beiträge
 
#7

Re: Datenregister der LPT schnittstellle abfragen.

  Alt 30. Dez 2007, 23:41
Gibt es in der DLL eine Funktion mit der man die vorhandenen Schnittstellen abfragen kann? Wenn nicht, dann hast Du wahrscheinlich verloren. Solche hardwarenahen Abfragen gehen nun mal nur über Assembler vernünftig.

Versuchs mal mit dem Windows-API. Wahrscheinlich muß Du nur über alle Hardwarekomponenten "enumerieren". Bei Delphi gibt es eine Hilfe zum Windows-API. Geb dort mal bei Suchen DeviceCapabilities oder LPT ein. Vielleicht kommst du dann weiter.

Hab noch mal auf die Schnelle gegoogelt. Vielleicht hilft dieser Link http://entwickler-forum.de/archive/index.php/f-122.html weiter. Dort wird einiges zu Schnittstellen beschrieben.

Schau mal bei der JEDI-Komponentensammlung vorbei. Ich meine, daß es da was passendes gibt.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:14 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz