*Du programme,
*Du port parallèle,
Electronique
Les sorties
Les entrées
Les contrôles
*Programmation
Attention
Home

Paralleleport ,n'est pour le moment pas disponible par default par des raccourcis dans le menu K ou sur le bureau.
Il se lance donc de 2 manières différentes: "pp" et "kparelleleport".
pp s'utilise seulement en ligne de commande, et nécessites des
arguments. Faîtes "pp --help" pour plus d'informations.
kparalleleport dispose d'une interface graphique.
Eléctronique:
broche nom fonction
1 Strobe Impulsion à zéro avant envoi
2 D0 Bit de donnée
3 D1 Bit de donnée
4 D2 Bit de donnée
5 D3 Bit de donnée
6 D4 Bit de donnée
7 D5 Bit de donnée
8 D6 Bit de donnée
9 D7 Bit de donnée
10 ACK Bit d’état
11 Busy Bit d’état
12 PE Bit d’état
13 Select Bit d’état
14
LF Bit de
contrôle en sortie
15 ERR Entrée
16 INIT Bit de contrôle en sortie
17 Select Bit de contrôle en sortie
18 a 25 Masse
Les sorties:
Une sortie sur le port paralèle envoie 5 volts si elle est
active, et moins quand elle n'est pas active. Ce courant peut
être directement utiliser pour alimenter de petites diodes, ou
alors être amplifié pour actionner de petits moteurs, ou
un relais, afin d'y brancher n'importe quel apareil utilisant du
courant beaucoup plus puissant ( lumière, moteur...)
Le
transistor utilisé étant un transistor npn. Il est
parfois nécessaire d'insérer un potentiomètre
variable entre +ordi et B, afin de régler la sensibilité
du transistor ( lors de l'utilisation d'un relais par exemple).
+ ordi étant la sortie du port parallèle à amplifier
- ordi la masse
B la base du transistor
C le collecteur
E l'émetteur
G un générateur
M le recepteur contrôlé par le port parallèle ( relais, moteur, lumière...)
Les entrée:
Les entrées du port parallèle sont du type tout ou rien:
elles sont par exemple utilisées en reliant la masse à
une de ces entrées par l'intermédiaire d'un interrupteur.
Mais
parfois, le besoin est de relier cette entrée à un signal
analogique, mais d'origine numérique, c'est à dire
à un signal composé seulement d'états hauts et bas
successifs, mais récupéré de manière
analogique (par exemple la reception d'un signal infra rouge de
télécommande grâce à une diode
récéptrice).
Là aussi , il est parfois nécessaire d'insérer un
potentiomètre variable entre +ordi et B, afin de régler
la sensibilité du transistor afin de régler la tension de
passage de l'état haut/bas.
+ signal correspond au signal à récupérer,
+ ordi à l'entrée du port parallèle,
- signal et - ordi à la masse
Les contrôles:
Ils peuvent être utilisés comme une entrée.

Sous linux:
Programme d'exemple en C :
#include <unistd.h> /* pour libc5 */
#include <sys/io.h> /* pour glibc */
#include <asm/io.h>
int main()
{
int valeur;
if(ioperm(888, 3, 1)) // ouvre les 3 ports (888, 889, 890)
{
perror("erreur d'ouverture/fermeture du port parallèle en écriture ) ");
return(-1);
}
outb(255,888); // met toutes les broches à l'état haut (+5V)
sleep(1); // attend 1 seconde
outb(0,888); // remet les broches à l'état bas
printf("La valeur lue sur le registre d'entrée est %d\nLa valeur lue sur le registre de contrôle est %d\n",inb(889),inb(890)); // affiche les valeurs lues sur le registre de lecture (889) et de contrôle (890). Une lecture sur le port d'écriture (888) renvoie la dernière valeur écrite sur le port.
if(ioperm(888, 3, 0)) // ferme les 3 ports (888, 889, 890)
{
perror("erreur d'ouverture/fermeture du port parallèle en écriture ) ");
return(-1);
}
}
Où:
portbase au registre d'écriture ( 956 pour LPT0, 888 pour
LPT1, 632 pour LPT2 (souvent, on les trouve sous forme
héxadécimale)).
portbase+1 au registre de lecture,
portbase+2 à celui de contrôle.

- 2 appels successifs à ioperm(int port, int nombre, int
état) avec état=1 peu provoquer un reset
instantané de l'ordinateur,
- lors de l'utilisation de programmes utilisant le port parallèle avec une imprimante branchée dessus,
- à ne pas provoquer de courts circuit sur le port
parallèle, celui ci étant souvent sur la carte
mère.