Die Anwendung verwendet serielle Kommunikation über USB und funktioniert gut, wenn der PC von der Festplatte bootet.Serielle Kommunikation über USB mit einem LIVE USB-Boot
Ich habe ein LiveUSB-Image (. ISO) des Betriebssystems erstellt. Hat den gleichen PC vom USB-Laufwerk gestartet, der das .iso-Image enthält.
Jetzt ist der Prüfling verbunden und die Anwendung wird ausgeführt, die berichtet, dass es Müll auf der Linie die meiste Zeit gibt. Allerdings funktioniert es bei einigen Versuchen, es ist sehr inkonsistent.
Ich konnte nicht verstehen, wie sich ein Boot von einem Live USB von einem HDD Boot unterscheidet.
FYI, PC hat Fedora Core 22 mit 4.0.4 Linux Kernel.
Serielle Kommunikation: Baudrate ist 115200 mit 1 Stoppbit.
Jede Hilfe wird sehr geschätzt.
Danke,
Shahab
bearbeiten
I dmesg
und fand einen Unterschied überprüft haben,
cdc_acm : failed to set dtr/rts
auf Live-USB-Boot. Im anderen Fall wird es nicht gesehen. Ähnlich wie question auf Stackoverflow.
Eine weitere Beobachtung, die serielle Kommunikation funktioniert gut, wenn das Gerät angeschlossen ist und der PC vom Live-USB-Stick startet. Wenn das USB-Kabel zum Gerät nicht angeschlossen und wieder eingesteckt ist, wird das Problem gemeldet.
Live USB und HHD haben unterschiedliche MBR. Dies hängt auch davon ab, wie der USB-Stick vom BIOS formatiert oder sichtbar ist. Einige BIOS können Ihnen erlauben zu wählen: HDD, FDD etc. –
@EugenKonkov danke für den Kommentar. Ich konnte jedoch nicht verstehen, wie ein MBR die serielle Kommunikation unterbricht. – user3612463
Ihre Anwendung erwartet Daten im Format wie HDD, aber Sie erhalten es in einem anderen Format (ISO). Aus diesem Grund wird nicht erwartet, dass der Fehler oben angezeigt wird. Können Sie Byte für Byte vergleichen, was Sie in beiden Fällen erhalten? Dump empfangen Daten in Datei und leiten Sie dann Daten aus Datei in Ihre App um. Falls Ihre App beim Umleiten von Daten aus der Datei keinen Fehler meldet, sind Sie sicher, dass das Problem in Ordnung ist. Wenn ein Fehler ausgegeben wird, liegt ein Problem in den Daten vor. –