Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

Problem mit Druckerport LPT1

 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu QBasic.
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Benny90



Anmeldungsdatum: 01.04.2008
Beiträge: 19

BeitragVerfasst am: 01.04.2008, 15:50    Titel: Problem mit Druckerport LPT1 Antworten mit Zitat

Hallo,
ich möchte seit langem wieder einmal meine selbstgebauten
Interface ausprobieren.
Habe aber ein kleines Problem mit dem Druckerport. Da das System den Zugriff auf den Port nicht mehr zulässt habe ich das kleine Tool "UserPort" aber komme einfach nicht klar mit den Zahlen die ich oben in die leeren Felder eintragen muss.

Habe mit diesem kleinen Programm die Nummer des Datenports herausgefunden aber funktioniert leider auch nicht:

CLS
DEF SEG = 0 : CLS
A=PEEK(1032): B = PEEK(1033)
C = A + B * 256 : PRINT C : DEF SEG

Ich hoffe ihr könnt mir weiterhelfen.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Sebastian
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 5969
Wohnort: Deutschland

BeitragVerfasst am: 01.04.2008, 16:00    Titel: Antworten mit Zitat

Hallo,

bitte erklär noch ein bisschen genauer, was du versuchst und was dabei nicht funktioniert: Welches Betriebssystem (SP?) benutzt du? Hat der PC einen "richtigen" Parallelport oder handelt es sich dabei um eine nachgerüstete Schnittstelle (Steckkarte / USB-Adapter)? Mit welchen Benutzerrechten versuchst du das Ganze? Was ist das für ein Interface?

Viele Grüße!
Sebastian
_________________

Die gefährlichsten Familienclans | Opas Leistung muss sich wieder lohnen - für 6 bis 10 Generationen!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Benny90



Anmeldungsdatum: 01.04.2008
Beiträge: 19

BeitragVerfasst am: 01.04.2008, 16:10    Titel: Antworten mit Zitat

Hallo Sebastian,

ich arbeite mit dem Betriebssystem "Windows XP"
Schnittstelle wurde keine nachgerüstet, die Ansteurung hat schon einmal funktioniert.

Das Interface ist eine Relaiskarte oder auch eine 7- Segmentanzeige.

Mein Problem ist nur noch, was die ganzen Zahlen bedeuten die ich bei "UserPort" eintragen muss wie z.B. (378 - 37F) und welche nun die richtigen sind damit das ganze richtig funzt.

mfg benny90
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Elektronix



Anmeldungsdatum: 29.06.2006
Beiträge: 742

BeitragVerfasst am: 01.04.2008, 16:11    Titel: Antworten mit Zitat

Eine direkte Programmierung der LPT-Ports unter WinXP ist nicht möglich- auch nicht in der DOS-Box. Du kannst die Schnittstellen nur mit einem Treiber ansprechen, etwas anderes läßt das System nicht mehr zu.
Als Treiber kann man nehmen: inpout32.dll.
_________________
Und die Grundgebihr is aa scho drin- DOS is jo nett.


Zuletzt bearbeitet von Elektronix am 01.04.2008, 16:14, insgesamt einmal bearbeitet
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Benny90



Anmeldungsdatum: 01.04.2008
Beiträge: 19

BeitragVerfasst am: 01.04.2008, 16:20    Titel: Antworten mit Zitat

Dazu hab ich ja das Programm "UserPort" das den Zugriff auf den Port ermöglicht.

Das Programm schreibe ich in QBasic oder Quick Basic (out ...,255)
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Elektronix



Anmeldungsdatum: 29.06.2006
Beiträge: 742

BeitragVerfasst am: 01.04.2008, 16:40    Titel: Antworten mit Zitat

Ui, sorry, hab nicht genau genug gelesen... verlegen mit den Augen rollen
_________________
Und die Grundgebihr is aa scho drin- DOS is jo nett.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
HorstD



Anmeldungsdatum: 01.11.2007
Beiträge: 110

BeitragVerfasst am: 01.04.2008, 21:22    Titel: Antworten mit Zitat

>>Mein Problem ist nur noch, was die ganzen Zahlen bedeuten die ich bei "UserPort" eintragen muss wie z.B. (378 - 37F) und welche nun die richtigen sind damit das ganze richtig funzt. <<

Diese Zahlen sind die Hexadezimal-Adressen der Schnittstelle.
Die Zahlen findest du im Gerätemanager unter Anschlüsse - Druckeranschluss - Ressourcen.

OUT 888, xx ist identisch mit OUT &H378, xx

Übrigens gibt dein Programm die falsche Adr. aus.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Benny90



Anmeldungsdatum: 01.04.2008
Beiträge: 19

BeitragVerfasst am: 02.04.2008, 12:29    Titel: Antworten mit Zitat

Im Gerätemanager stehen zwei verschiedene Adressen ( E/A Bereich 0378 - 037F / 0778 - 077F)

Habe es schon ausprobiert indem ich in UserPort in beide leeren Felder die selbe Adresse eingegeben habe, hat aber leider auch nicht funktioniert.
Und immer wenn ich in UserPort auf start drücke kommt ein blauer Bildschirm mit der Meldung : IRQL_NOT_LESS_OR_EQUAL

Was mach ich falsch?

Und was kann ich an meinem Programm verändern dass die richtige Adresse ausgegeben wird ?

DEF SEG = 0 : CLS
A=PEEK(1032): B = PEEK(1033)
C = A + B * 256 : PRINT C : DEF SEG


Zuletzt bearbeitet von Benny90 am 05.04.2008, 11:57, insgesamt einmal bearbeitet
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
wolfjuli



Anmeldungsdatum: 06.03.2008
Beiträge: 50

BeitragVerfasst am: 03.04.2008, 07:52    Titel: Antworten mit Zitat

Wegen der Programmänderung:

Code:
def seg = 0
ba = peek(&h408) + peek(&h409) * 256 'Druckerport Basisadresse
print ba


Wegen UserPort:

Leider funktionierts bei mir auch nicht. weinen Ich kann auf den COM-Port nur nach dem Systemstart zugreifen, solange mein Prog läuft. Sobald ich es schließe verweigert Windows den zugriff. hab auch da schon alles Probiert aber weder mit löschen und neu einschreiben, noch mit aktualisieren funktioniert das wieder, erst wenn ichden PC wieder neu starte...

Mfg
Julian
_________________
Alles sollte so einfach wie möglich gemacht werden, aber nicht einfacher.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Benny90



Anmeldungsdatum: 01.04.2008
Beiträge: 19

BeitragVerfasst am: 03.04.2008, 12:15    Titel: Antworten mit Zitat

Mit dem Programm von wolfjuli bekomm ich die selbe Adresse wie mit meinem Programm heraus peinlich
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Benny90



Anmeldungsdatum: 01.04.2008
Beiträge: 19

BeitragVerfasst am: 05.04.2008, 11:43    Titel: Antworten mit Zitat

Ich hatte schon einmal einen Pc mit Windows XP und da hat alles ohne Probleme funktioniert. verwundert

Will endlich mal wieder nach langer Zeit mit meinem Interface und meiner Tonorgel herumexperimentieren . grinsen
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Eisbaer



Anmeldungsdatum: 16.10.2004
Beiträge: 354
Wohnort: Deutschland,Bayern

BeitragVerfasst am: 07.04.2008, 22:46    Titel: Antworten mit Zitat

Naja wie gesagt das war einmal.

Vorschlag währe auf FreeBasic umzusteigen,

Wo volle 32 Bit Kompalität zu Windows herrscht, und auch eine DLL "inpout32.dll" angesprochen und genutzt werden kann.
Zusätzlich ist das ganze dann nicht mehr Speicher limitiert, oder unterliegt irgendwelchen Anderen Beschränkungen.. XD
_________________
Eigene Webseite:
http://www.eisbaer-studios.de
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu QBasic. Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

 Impressum :: Datenschutz