Ich habe hier ein STM32F407G-DISC1 Evalboard (mit STM32F407VGT6 drauf). Das programmiere ich mit Hilfe von STM32CubeMX und STM32CubeIDE.
Der USB_OTG_FS ist als Full Speed (12 MBit/S) Device konfiguriert. Darauf setzt die USB_DEVICE Middleware auf.
Ich mag damit (Debug-)Ausgaben auf einen virtuellen COM-Port machen. Nachdem erstmal relativ viel funktioniert (die Ausgaben kommen bei meinem Terminalprogramm an), musste ich feststellen, dass ohne auf dem PC geöffneten COM-Port alles ins Stocken gerät, da CDC_TransmitCplt_FS (Data transmitted callback) nicht mehr aufgerufen wird, und ich mir die Beine in den Bauch warte, dass meine Puffer wieder frei werden.
Meine Frage ist also : Wie kann ich im Programm feststellen, ob ein Programm auf dem PC meinen virtuellen COM-Port geöffnet hat oder nicht ? Wenn es niemanden interessiert, kann ich mir ja sogar die ganzen Ausgaben sparen.