Frage

Ich verwende UCSIM, um den Einheitstest auf SDCC-Projekten zu leisten.

In UCSIM / S51 können Sie den seriellen Zeilenverkehr mit

simulieren generasacodicetagpre.

oder

generasacodicetagpre.

In letztererer Form werden die Daten sofort an den Simulator gesendet, der verursacht, dass viele Frames verloren gehen.Anstatt die Testdaten in der einfachen Datei mit Pipe stattdessen zu verwenden:

generasacodicetagpre.

Nun, wie kann ich den Ausgang Baud aus dem Utility "Cat" steuern?Oder gibt es ein anderes Dienstprogramm, das ich in einem bestimmten Satz, um Bits verwenden zu können?

War es hilfreich?

Lösung

Antwort 1 ist falsch.Niemand "füttert die Inhalte der Datei in die serielle Zeile.UCSIM liest aus der Datei, wenn dies erforderlich ist.Die Baudrate wird von SFRs von Timer und UART gesteuert.Wenn nötig, dass die Zählung von Ticks simuliert werden, wird ein Byte aus der Datei gelesen.

Andere Tipps

Die Rate, die Sie mit der In= Datei füttern, ist nicht, wie der Preis eingestellt ist.Der Simulator hat keine Möglichkeit, zu wissen, wann Ihre Anwendung den seriellen Anschluss initialisiert hat, und ist bereit zu lesen.Sie fehlen wahrscheinlich Daten, da der Simulator den simulierten seriellen Anschluss vor dem Ausführen Ihres seriellen Initialisierungscodes fährt.

Was Sie tun müssen, ist eine FIFO-Datei mit mkfifo eingerichtet (siehe MAN-Seite), dann verwenden Sie das als Ihren In= Parameter.Dann füttern Sie diese FIFO-Datei mit Daten, nachdem Ihre simulierte Anwendung ab- und auszuführen ist.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top