Pour rester assez indépendant du système, utilisez un langage de programmation multiplateforme :comme Python, utilisez une bibliothèque série multiplateforme comme :pySerial et effectuez le traitement dans un script. J'ai utilisé pySerial et j'ai pu exécuter le script sur plusieurs plates-formes sans presque aucun changement dans le code source. En utilisant BASH, vous vous limitez un peu.
N'est-ce pas ce que vous cherchez ?
while read -r line < /dev/ttyS2; do
# $line is the line read, do something with it
# which produces $result
echo $result > /dev/ttyS2
done
Il est possible que la réouverture du périphérique série sur chaque ligne ait des effets secondaires, auquel cas vous pouvez essayer :
while read -r line; do
# $line is the line read, do something with it
# which produces $result
echo $result > /dev/ttyS2
done < /dev/ttyS2
Vous pouvez également déplacer la redirection de sortie, mais je suppose que vous devrez désactiver la mise en mémoire tampon stdout.