Problem mit Parallel-Port



  • Hi Leute!

    Ich hab en Problem mit dem Prallel-Port! Ich benutze Dev-Cpp Version 4.9.8.0 unter Win 98! Ich hab mich hier im Forum ma umgeguckt was es über den Parallel-Port gibt und da stand das ich mit dem Befehl _outp der in conio.h is
    die pins des Parallel-Ports auf High (also auf Strom) setzen kann!
    So nur mein Dev-Cpp sagt :"`_outp' undeclared (first use this function)" obwohl ich conio.h in den Includes hab! Kann mir einer sagen wie ich des hinbekomm das des läuft?

    Dangge

    Fatala-error



  • Schau mal in den Hilfen von Dev-Cpp Version 4.9.8.0
    Solche Commandos sind von Compiler zu Compiler typischerweise unterschiedlich in der namensgebung (Warum weis keiner)
    oder such im conio.h headerfile mal nach "outp". Das _outp kenne ich aus MS VC 6.0 die gleichen Funktionen kannte ich unter Borland als "outp"



  • Hi!

    Ich hab ma in der Hilfe nachgeschaut aber da steht im zusammenhang mit output nurdie Ausgabe auf den Bildschirm und nicht auf einen Port. Danach hab ich wie du gesagt hat in die conio.h geschaut un nach _outp oer outp gesucht. Ich hab aber keins von beiden gefunden!



  • Du soltlest sowieso auf diese (btw. Compilerabhängigen) Funktionen verzichten und Port I/O mittels Betriebssystem API machen, sonst fliegst du bei Windows z.B. spätestens wenn die Applikation nichtmehr auf einem Playstation-Series-Windows (9x/me) sondern auf einem NT-Nachfolger (NT4, 2k, XP, ...) auf die schnautze. Wie das mit der API funktioniert findest du in den FAQ des MFC-Forums, des VCL-Forums und des WinAPI-Forums dokumentiert. es ist auch nicth viel schwieriger als die Funktionen outp und inp zu verwenden.

    -junix



  • @junix: Wenn ich dich richtig verstanden habe soll outp unter z.B. win2k nicht klappen, das möchte ich aber stark bestreiten, könnte natürlich sein das mein Compiler intern noch was umbiegt, aber bisher hatte ich mit outp keinerlei Probleme unter W2k.

    Bzw. was würdest du denn vorschlagen wenn man das Programm möglichst Betriebssystemübergreifend machen will, die API-Funktionen kann man unter Linux ja knicken.

    Oder renn ich hier gerade gegen die Wand mit der Aussage (bin immer lernbereit 🙂 😕



  • Naja, möglich dass es doch geht, würd ich mich nicht darauf verlassen. ist - ganz nebenbei - auch kein Ansi C (outp und inp).

    Um portabel zu bleiben, musst du dir selber ne Lib zusätzlich zur libc schaffen. Das heisst konkret:
    Einen eigenen Unit schreiben, der Zugriffsfunktionen zur Verfügung stellt, damit du die Schnittstelle bedienen kannst. (In C++ wärs ne Wrapper-klasse)
    Diesen unit musst du dann portieren für jedes Betriebssystem (also z.B. Linux/Solaris/Windows). Wenn du glück hast, sitzt auf dem System eine Library wie z.B. Posix, die meines Wissens einen Zugriff Ports beherrscht. Dann kannst du den Port auf Windows und Posix (z.B.) minimieren, wobei dann posix wieder Linux, Solaris, etc. impliziert.

    So funktioniert das im Allgemeinen. Ist etwas umständlich erklärt, aber ich hoffe du verstehst trotzdem was ich meine (o:

    -junix



  • Galeon schrieb:

    ...aber bisher hatte ich mit outp keinerlei Probleme unter W2k.

    Ich hatte mit _inp und _outp nur Probleme auf NT basierenden Systemen.


Anmelden zum Antworten