Serielle Schnittstelle Com1 ansteuern



  • Eine Andere Möglichkeit wäre die Funktion für das Empfangen in einen Timer zu packen.



  • Sunday schrieb:

    die schnittstelle muss geöffnet sein, bevor du sie konfigurieren kannst.

    // Timeouts fuer Port setzen
    void SetReadTimeouts(HANDLE hCom)
    {
      COMMTIMEOUTS timeouts;
    
      timeouts.ReadIntervalTimeout         = 100; // Zeit zwischen 2 Zeichen
      timeouts.ReadTotalTimeoutMultiplier  = 0;   // pro Zeichen
      timeouts.ReadTotalTimeoutConstant    = 1;
      timeouts.WriteTotalTimeoutConstant   = 0;   // kein Timeout beim Schreiben
      timeouts.WriteTotalTimeoutMultiplier = 0;
    
      if (!::SetCommTimeouts(hCom, &timeouts))
      {
        // ... Fehler
      }
    }
    
    // hCom ist im Header definiert (HANDLE hCom)
    void __fastcall TForm1::OpenComPort(char *Port)
    {
      if ((hCom = OpenComm(Port)) != INVALID_HANDLE_VALUE)
      {
        // mit default-Werten initialisieren
        SetDeviceControlBlock(hCom, CBR_9600, 8, NOPARITY, ONESTOPBIT);
    
        // Timeouts setzen
        SetReadTimeouts(hCom);
      }
    }
    
    void __fastcall TForm1::Button1Click(TObject *Sender)
    {
      OpenComPort("COM1");
    }
    

    wenn du auf Button1 klickst, solltest du schonmal keine fehler bekommen, es sein denn deine Com existiert nicht.

    🙂

    Könnten Sie mir an meine E-Mail Adresse

    techniker100@hotmail.de

    Wie ich den Anschluss COM1 über C++ ansteuern kann.
    Bei mir Funktioniert das Irgend wie nicht.
    Könnten Sie mir vielleicht einen einfachen Quellcode mailen.



  • Gilt das für alle Windows_Betriebssysteme.
    Also kann ich die Funktion auf einem XP-Sytem und auch auf einen anderen wie Win-95 oder was muss ich dann beachten. Wenn ich das auf einem anderem Betriebssystem tun möchte?

    HANDLE hCom = ::CreateFile(Port,
    GENERIC_READ | GENERIC_WRITE,
    0,
    0,
    OPEN_EXISTING,
    FILE_ATTRIBUTE_NORMAL,
    0);



  • Hallo

    hier findest du die Doku zu der Funktion, dort stehen auch Versionspezifische Eigenheiten.

    bis bald
    akari



  • Diese Seite kenne ich schon hab schon ein paar mal versucht dort irgendwas zu verstehen. Bin aber leider voll die Englisch Niete.
    Könntest du mir vielleicht sagen wie der unterschied zwischn XP und 98 ist.



  • bronstein schrieb:

    Bin aber leider voll die Englisch Niete.

    schau mal bei Langenscheidt oder Pons vorbei. die haben gute englisch wörterbücher. sind ja auch nur 2 kleine sätze die auf einen unterschied zwischen winxp und win98 hinweisen.


Anmelden zum Antworten