Vous pouvez utiliser la stty
commande pour définir ces paramètres.
Cela montrera tous les paramètres sur le premier port série (remplacer ttyS0
par ttyUSB0
si vous utilisez un port série USB):
stty -F /dev/ttyS0 -a
Cela définira le débit en bauds à 9600, 8 bits, 1 bit d'arrêt, sans parité:
stty -F /dev/ttyS0 9600 cs8 -cstopb -parenb
Une chose qui déroute généralement les gens est que la plupart des pilotes série réinitialiseront les paramètres par défaut une fois le périphérique fermé (c'est-à-dire qu'aucun processus n'a plus le périphérique ouvert). Ainsi, la stty
commande ci-dessus définira les paramètres, puis une fois terminée, le pilote les réinitialise à nouveau. Si votre logiciel POS ouvre d'abord l'appareil, puis effectue les stty
réglages, il doit rester jusqu'à ce que votre logiciel POS ferme à nouveau l'appareil (par exemple à la sortie).
J'aurais pensé que le logiciel POS devrait avoir un moyen de configurer lui-même ces paramètres. Si vous écrivez votre propre logiciel pour piloter l'imprimante, assurez-vous d'abord d'ouvrir le périphérique, puis d'exécuter la stty
commande.
Vous devrez peut-être également jouer avec d'autres paramètres, par exemple opost
, cela signifie que le post-traitement de sortie sera effectué. Si opost
et onlcr
sont tous deux définis, le onlcr
entraînera l'ajout d'un retour chariot supplémentaire (0xd) lorsqu'un octet de nouvelle ligne (0xa) est sorti, généralement pour empêcher l'impression d'escalier comme
This is a line
This is the next line
Cela peut ou non être ce que vous voulez. Si vous souhaitez une sortie un à un brute vers l'imprimante, opost
désactivez-la (ajoutez-la -opost
aux stty
paramètres).
La prise de contact (contrôle de flux) est également contrôlée avec stty
, sans en savoir plus sur l'imprimante, je ne peux pas dire si vous devez régler quoi que ce soit.
Consultez la stty
page de manuel pour plus d'informations.
screen /dev/ttyS0 <baud-rate>
(la valeur par défaut serait 9600, quels que soient les paramètres à l'échelle du système, même pas sûrs que cela existe)