Announcement

Collapse
No announcement yet.

USB Modem nach Einstecken nicht betreibbar

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • USB Modem nach Einstecken nicht betreibbar

    Sorry mir ist gerade aufgefallen, dass es hier die falsche Sprache ist, aber vielleicht ist das ja ein allgemeines USB Problem. Wäre trotzdem für Hilfe dankbar.



    Hallo zusammen,
    ich arbeite gerade mit einem USB Modem. Wenn ich es einstecke, ist es
    an COM3 ansprechbar.
    Jetzt kommt das aber.....
    nicht wenn ich es nach dem Neustart mit meiner in VC++ geschriebenen SW anspreche.
    Dann ist es erst anzusprechen, wenn ich vorher Hyperterminal oder das mitgelieferte Programm in Betrieb genommen habe. Ab dann ist das Modem an COM3 für meine SW "sichtbar".

    Ich habe in VC++ eine Klasse die den port in Betrieb nimmt

    //Call CreateFile to open the com port
    CString stPort;
    stPort.Format(_T("\\\\.\\COM%d"), nPort);
    m_hComm = CreateFile(stPort, GENERIC_READ | GENERIC_WRITE, 0, NULL, OPEN_EXISTING, bOverlapped ? FILE_FLAG_OVERLAPPED : 0, NULL);
    if (m_hComm == INVALID_HANDLE_VALUE)
    {
    TRACE(_T("CSerialPort::Open, Failed to open the comms port\n"));
    ThrowSerialException();
    }



    es wird kein Fehler zurückgeliefert, aber ansprechen kann ich das Modem nicht.
    Erst nachdem ich Hyperterminal mit Com3 geöffnet und geschlossen habe, funktioniert das writen von Daten.

    Muss man den Port irgendwie initiialisiern? Hat jemand schon einmal ein ähnliches Problem gehabt. Die Klasse läuft an einer echten RS232 ohne Probleme.

    Gruss
    Peter


    habe das Problem gefunden. Man muss dem USB Modem ein DTR setzen
    port.SetDTR();
    port.SetRTS();
    Wusste nicht, dass man einem Modem, was keine "festen" Leitungen hat auch
    Verbindungen simulieren muss.

    Problem gelöst, falls mal jemand draufstossen sollte

    Gruss Peter
    Zuletzt editiert von wp1; 27.04.2008, 21:41. Reason: falsche Prog.-Sprache
Working...
X