LP
Section : Manuel du programmeur Linux (
4)
Mise à jour de la version anglaise : 15 janvier 1995
Index
Menu principal
NOM
lp - Imprimantes parallèles
SYNOPSIS
#include <
linux/lp.h>
CONFIGURATION
lp[0-2] sont des périphériques caractères pour les imprimantes à
liaison parallèle.
Ils ont un numéro majeur 6 et un numéro mineur 0-2.
Le numéro mineur correspond aux ports d'imprimantes d'adresse de base
0x03bc, 0x0378 et 0x0278.
Habituellement, ils ont un mode d'accès 220 et un propriétaire root.lp.
On peut utiliser les ports parallèles soit en scrutation (polling) soit
en interruption.
L'utilisation en interruption est surtout recommandée
avec un haut trafic (p.ex. : imprimante laser).
Pour les imprimantes matricielles classiques, la scrutation suffira.
Par défaut, le système utilise la scrutation.
DESCRIPTION
Les appels système
ioctl(2)
suivants sont supportés :
- int ioctl(int fd, LPTIME, int arg)
-
Fixe la durée pendant laquelle le pilote s'endort avant de revérifier
l'état de l'imprimante après que le tampon ait été rempli.
Avec une imprimante rapide, on peut diminuer ce délai ;
avec une imprimante lente on peut l'augmenter.
La durée est indiquée dans arg, en centièmes de secondes.
La valeur par défaut est 2 (soit 0,02 seconde).
Cela n'influe que sur le pilote en scrutation.
- int ioctl(int fd, LPCHAR, int arg)
-
Indique le nombre maximum d'itérations d'attente active que le pilote
en scrutation effectue alors qu'il attend que l'imprimante soit prête.
Si l'impression est trop lente, augmenter cette valeur ;
si le système ralentit trop, la diminuer.
Le nombre est indiqué dans arg, la valeur par défaut est 1000.
Cela n'influe que sur le pilote en scrutation.
- int ioctl(int fd, LPABORT, int arg)
-
Si arg vaut 0, le pilote réessaiera en cas d'erreur d'impression,
sinon il abandonnera.
La valeur par défaut est 0.
- int ioctl(int fd, LPABORTOPEN, int arg)
-
Si arg vaut 0,
open(2)
sera annulé en cas d'erreur, sinon l'erreur sera ignorée.
Par défaut, elle est ignorée.
- int ioctl(int fd, LPCAREFUL, int arg)
-
Si arg vaut 0, on bloquera l'écriture sur le port parallèle au cas
où les broches erreur, plus-de-papier
ou imprimante-hors-ligne sont validées.
Sinon, ces signaux seront ignorés.
Par défaut, ils sont ignorés.
- int ioctl(int fd, LPWAIT, int arg)
-
Indique le nombre d'itérations d'attente active à effectuer
avant d'activer la broche STROBE pour que l'imprimante accepte
le caractère écrit, et le nombre d'itérations à effectuer
avant d'éteindre à nouveau la broche STROBE.
Les spécifications indiquent que ce délai devrait être de
0,5 microsecondes, mais l'expérience a montré que le délai induit
par le code du pilote est suffisant.
La valeur est indiquée dans arg, elle vaut 0 par défaut.
Ceci concerne autant le gestionnaire en interruption
que celui en scrutation.
- int ioctl(int fd, LPSETIRQ, int arg)
-
Cet
ioctl(2)
nécessite des privilèges superutilisateur.
Son argument est de type
int
contenant une nouvelle IRQ pour l'imprimante.
Comme effet de bord, l'imprimante est réinitialisée.
Si arg vaut 0, le gestionnaire en scrutation sera utilisé,
ce qui est le comportement par défaut.
- int ioctl(int fd, LPGETIRQ, int *arg)
-
Stocke la valeur actuelle d'IRQ dans arg.
- int ioctl(int fd, LPGETSTATUS, int *arg)
-
Stocke l'état actuel du port dans arg.
Les bits ont les significations suivantes :
LP_PBUSY | Entrée OCCUPÉE inversée, active à 1
|
LP_PACK | Entrée ACQUITTEMENT, active à 0
|
LP_POUTPA | Entrée PLUS-DE-PAPIER, active à 1
|
LP_PSELECD | Entrée SELECT, active à 1
|
LP_PERRORP | Entrée ERREUR, active à 0
|
Référez-vous au manuel de votre imprimante pour la signification
de ces signaux.
Des bits non documentés peuvent également être présents,
suivant le type d'imprimante.
- int ioctl(int fd, LPRESET)
-
Réinitialise l'imprimante.
Pas d'argument.
FICHIERS
/dev/lp*
VOIR AUSSI
chmod(1),
chown(1),
mknod(1),
lpcntl(8),
tunelp(8)
TRADUCTION
Ce document est une traduction réalisée par Christophe Blaess
<http://www.blaess.fr/christophe/> le 18 octobre 1996
et révisée le 17 juillet 2008.
L'équipe de traduction a fait le maximum pour réaliser une adaptation
française de qualité. La version anglaise la plus à jour de ce document est
toujours consultable via la commande : « LANG=C man 4 lp ».
N'hésitez pas à signaler à l'auteur ou au traducteur, selon le cas, toute
erreur dans cette page de manuel.
Index
- NOM
-
- SYNOPSIS
-
- CONFIGURATION
-
- DESCRIPTION
-
- FICHIERS
-
- VOIR AUSSI
-
- TRADUCTION
-
Dernière mise à jour : 17 juillet 2008