-         

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 19

Thema: LPT mit C ansteuern - Win 98

  1. #1
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    30.07.2005
    Beiträge
    170

    LPT mit C ansteuern - Win 98

    Anzeige

    SMARTPHONES & TABLETS-bis zu 77% RABATT-Kostenlose Lieferung-Aktuell | Cool | Unentbehrlich
    hallo,

    seit paar tagen schon versuche ich den 2. pin vom lpt port anzusteuern.
    ich habe auf den 2. pin den pluspol einer led und auf den 24. pin den minuspol hingelötet.

    jetzt versuch ich schon die ganze zeit die led zum leuchten zu bringen. aber es klappt nicht.

    ich glaube mein größtes problem liegt daran dass ich gelesen habe dass es outp oder outp nicht mehr gibt und der compiler bringt mir auch den fehler auch wenn ich conio.h einbinde.

    so sieht mein quellcode aus:

    int main(void) {
    0x378,0x02;
    return 0;
    }

    betriebssytem: win 98
    sprache: c

    wäre sehr dankbar für hilfreiche antworten

  2. #2
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    23.05.2004
    Beiträge
    119
    hallo
    Code:
    //--------------------------------------------------------------------------- 
    #include <vcl.h> 
    #pragma hdrstop 
    #include <conio.h> 
    #define Par_Sst 0x378 
    #define LPT1 0x378 
    #include "Unit1.h" 
    //--------------------------------------------------------------------------- 
    #pragma package(smart_init) 
    #pragma resource "*.dfm" 
    TForm1 *Form1; 
    //============================================== 
    void outp (unsigned int portadr, unsigned char value) 
    { 
     _asm mov edx,portadr 
     _asm mov al, value 
     _asm out dx,al 
    } 
    //--------------------------------------------------------------------------- 
    __fastcall TForm1::TForm1(TComponent* Owner) 
            : TForm(Owner) 
    { 
      
    } 
    //--------------------------------------------------------------------------- 
    void __fastcall TForm1::Button1Click(TObject *Sender) 
    { 
      outp(Par_Sst,1); 
    } 
    //--------------------------------------------------------------------------- 
    void __fastcall TForm1::Button2Click(TObject *Sender) 
    { 
      outp(Par_Sst,0); 
    } 
    //
    da habe ich es besser beschrieben
    http://www.roboternetz.de/phpBB2/viewtopic.php?t=1841

  3. #3
    Benutzer Stammmitglied
    Registriert seit
    28.07.2004
    Beiträge
    88
    Tag

    Mein Bruder hat ein Programm zum Testen von Logikschaltungen geschrieben.

    Mit dem kann man die 8 Datenpins des LPT's entweder manuell oder mittels Textdatei automatisch gesteuert setzen.

    Die Signale die von der Schaltung kommen werden über den Gameport erfasst.


    Du kannst es dir wenn du bei Yahoo registriert bist unter:
    http://de.groups.yahoo.com/group/Sepps_Gruppe/

    herunterladen.
    Das Programm heißt LogikControl.

    mfg Bastlwastl

  4. #4
    Benutzer Stammmitglied
    Registriert seit
    02.08.2005
    Beiträge
    78
    hallo!


    hab eine ähnliches problem wie Pitt1986

    ich arbeite hingegen aber unter winxp prof. und benutze den Bloodshed dev-c compiler version 4.9.9.2

    möchte auch einen Port/Pin ansprechen, um damit ein Relais zu schalten bzw. wenn es auch ohne Relais gehen würden um einfach einen Stromkreis mit ca. 12-14V zu schließen bzw. zu öffnen.

    bin leider auf dem gebiet nicht der profi.

    die Suche hier im forum hat mich leider auch nicht wirklich weiter geholfen!

  5. #5
    Benutzer Stammmitglied
    Registriert seit
    28.07.2004
    Beiträge
    88
    Tag

    Ich bin Sepp, Bastlwastl's Bruder.

    Er hat mich gebeten statt ihm zu antworten, da ich mich besser damit auskenne.

    Ich rate dir dass du deine Schaltung über Optokoppler ansteuerst.

    Ich werde dir das Programm so verändern, dass du es auch unter WinXP verwenden kannst.

    Wenn du etwas geduld hast, erstelle ich dir einen Schaltplan.

    mfg Sepp

  6. #6
    Benutzer Stammmitglied
    Registriert seit
    02.08.2005
    Beiträge
    78
    hey, das wäre ja super!!!

    soll ich dir das schon angefangene Programm mal zuschicken?

    oder gehts auch so?

    brauch ja "nur" den Aufruf für das Ansteuern.

    schon mal DANKE!!!

  7. #7
    Benutzer Stammmitglied
    Registriert seit
    02.08.2005
    Beiträge
    78
    habs mal ein bissle probiert, leider Fehlermeldung, wie gesagt programmiert unter C (nicht C++) und WinXP.

    Hab mich jetzt kundig gemacht, leider erscheint nach dem Ausführen des Programms folgende Fehlermeldung:

    main.exe hat ein Problem festgestellt und muss beendet werden.


    hier mal der Quellcode:


    #include <stdio.h>
    #include <stdlib.h>
    #include <time.h>
    #include <conio.h>

    void warte();

    int main(int argc, char *argv[])
    {
    int start;
    printf("Bitte 1 fuer Messstart eingeben:");
    scanf("%d",&start);
    if(start == 1)
    {
    _outp(0x378,0xFF); //alle DATA-Ausgänge (Pins) high setzen
    printf("Ausgang = 1");
    warte(10);
    _outp(0x378,0x00); //alle DATA-Ausgänge (Pins) low setzen
    printf("\nAusgang = 0");
    warte(20);
    }

    system("PAUSE");
    return 0;
    }


    void warte(int sekunden)
    {
    clock_t start;
    sekunden *= CLOCKS_PER_SEC;
    start = clock();
    while( clock() < (start + sekunden))
    ;
    }


    habe im Internet gelesen, dass am Parallelport bei einem "high" 5V anliegen.

    Wisst ihr warum es nicht funktioniert???

  8. #8
    Benutzer Stammmitglied
    Registriert seit
    02.08.2005
    Beiträge
    78
    hallo, ich bins mal wieder!

    das Programm müsste gar nicht auf XP laufen,
    besser wäre es sogar wenn es auf NT 2000 läuft!

    Könnt ihr mir dabei helfen?!

    THX!

  9. #9
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    07.07.2004
    Ort
    um Berlin
    Beiträge
    346
    XP und W2000 (und ME) verhalten sich da gleich.

    Siehe auch hier:
    http://www.roboternetz.de/phpBB2/vie...=103487#103487

    Blackbird

  10. #10
    Benutzer Stammmitglied
    Registriert seit
    28.07.2004
    Beiträge
    88
    @Blackbird

    Baut ME nicht auf Win98 auf?

    Soviel ich weis sperren sich nur NT-Systeme gegen den direkten Registerzugriff.

    @danionbike

    Wenn nur Daten ausgegeben werden sollen, dann kannst du das fertige Programm morgen bzw. übermorgen haben.
    (Ich verwende einen Treiber für den Zugriff auf den LPT unter Win 2000/XP

    Wenn aber noch Daten wie beim Programm Logikcontrol eingelesen werden sollen, dann wird es etwas länger dauern.

Seite 1 von 2 12 LetzteLetzte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •