Question

J'utilise UCSIM pour faire un test unitaire sur des projets SDCC.

dans UCSIM / S51, vous pouvez simuler le trafic de ligne série par

s51 -s /dev/tty PROGRAM.ihx

ou

s51 -S in=testdata.in,out=testdata.out PROGRAM.ihx

sur cette dernière forme, les données sont immédiatement envoyées au simulateur qui provoque une perte de nombreux cadres.Donc, au lieu de donner aux données de test dans un fichier ordinaire, en utilisant le tuyau à la place:

s51 -S in=<(cat testdata.in),out=testdata.out PROGRAM.ihx

Maintenant, comment puis-je contrôler la sortie Baud de l'utilitaire `chat '?Ou existe-t-il un autre utilitaire que je peux utiliser pour produire des bits de vitesse spécifique?

Était-ce utile?

La solution

Réponse 1 est incorrect.Personne ne "nourrit" le contenu du fichier à la ligne de série.UCSIM lit depuis le fichier quand il est nécessaire.Le débit en bauds est contrôlé par des SFR de la minuterie et de UART.Si nécessaire, le nombre de tiques est simulé, un octet sera lu dans le fichier.

Autres conseils

Le tarif que vous alimentez le fichier in= n'est pas la manière dont le taux est défini.Le simulateur n'a aucun moyen de savoir lorsque votre application a initialisé le port série et est prêt à lire.Vous êtes probablement des données manquantes car le simulateur alimente le port série simulé avant l'exécution de votre code d'initialisation en série.

Ce que vous devez faire est de configurer un fichier FIFO avec mkfifo (voir la page Man), puis utilisez-le comme votre in= paramètre.Nourrissez ensuite que le fichier FIFO avec des données après votre application simulée est opérationnel.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top