Je te rassure, je me doutais bien qu'il s'agissait d'une bidouille :)
Comme je vais être ammené moi aussi à jouer avec le port parallèle, j'ai fait quelques recherches pour étudier la question...
- Ah ? Pas possible de lire l'etat de ACK ? Y'a-t-il un moyen simple en bash de le lire ?
En bash, ça va pas être possible comme cela. Je n'arrives pas à remettre le neurone sur le nom de l'utilitaire en ligne de commande qui permet de configurer le port parallèle, mais une fois configuré dans un des modes IEEE 1284 (nibble?) la valeur que tu peux lire avec le cat correspondra à ces bits... mais en plus je n'ai pas de quoi essayer sous la main :(
La méthode "traditionelle" en C est de faire un appel ioctl: // on suppose que le device à été ouvert
unsigned char Status;
Error = ioctl(fd_device, PPRSTATUS, &Status);
if (Error == 0) {
Valeur = Status & PARPORT_STATUS_ACK;
}
[^] # Re: Un peu plus d'explication
Posté par Christophe --- . En réponse au message cat /dev/lp0 > foobar. Évalué à 2.
Je te rassure, je me doutais bien qu'il s'agissait d'une bidouille :)
Comme je vais être ammené moi aussi à jouer avec le port parallèle, j'ai fait quelques recherches pour étudier la question...
- Ah ? Pas possible de lire l'etat de ACK ? Y'a-t-il un moyen simple en bash de le lire ?
En bash, ça va pas être possible comme cela. Je n'arrives pas à remettre le neurone sur le nom de l'utilitaire en ligne de commande qui permet de configurer le port parallèle, mais une fois configuré dans un des modes IEEE 1284 (nibble?) la valeur que tu peux lire avec le cat correspondra à ces bits... mais en plus je n'ai pas de quoi essayer sous la main :(
La méthode "traditionelle" en C est de faire un appel ioctl:
// on suppose que le device à été ouvert
unsigned char Status;
Error = ioctl(fd_device, PPRSTATUS, &Status);
if (Error == 0) {
Valeur = Status & PARPORT_STATUS_ACK;
}