L'état 1 n'est pas exactement un niveau de tension de 5V. C'est d'ailleurs en réalité une tension beaucoup plus faible, parce qu'il est très difficile pour un circuit de fournir une tension correspondant exactement à son alimentation.
On considère que l'état 1 est présent seulement quand la tension d'entrée est supérieure à une valeur fixée notée VIH, et à l'inverse, que l'état 0 est présent quand la tension d'entrée est inférieure à une valeur fixée plus faible notée VIL.
Afin d'exclure toute erreur possible, une sortie à l'état 1 doit présenter une tension supérieure à une valeur fixée notée VOH, avec VOH<VIH, et une sortie à l'état 0 doit présenter une tension inférieure à une valeur fixée plus faible notée VOL.
On a nécessairement VIH>VOH>VOL>VIL.
En résumé, pour les tensions de sortie:
- état 1 -> V>VOH
- état 0 -> V<VOL
Et pour les tensions d'entrée:
- si V>VIH -> état 1
- si V<VIL -> état 0
- si VIL<V<VIH -> état indéterminé
Le problème, c'est que ces quatre niveaux (VIH, VOH, VOL et VIL) diffèrent d'une technologie à l'autre, et notamment entre la logique TTL de l'interface parallèle et les circuits CMOS utilisés dans le montage.
Les 4514/15 considèrent que l'état 1 est présent dès que la tension d'entrée est supérieure à VIH=3,5V. Or, le circuit en logique TTL du PC qui pilote le port parallèle peut très bien ne présenter, pour une état 1, qu'une tension de sortie égale à VOH=3,3V (voire moins en fait, à cause des pertes dans le câble) ce qui risque d'être faussement interprété comme un état 0...
En ajoutant une résistance de pull-up, on rehausse un éventuel 3,3V jusqu'au-dessus de la barre fatidique des 3,5V, ce qui assure que l'état 1 sera correctement transmis par l'interface.
D'un autre côté, la tension de sortie correspondant à l'état 0 sera elle aussi légèrement rehaussée, mais elle continuera bien d'être inférieure à VIL (car les circuits TTL drainent beaucoup mieux les courants qu'ils peuvent en fournir).
Non !
Les transistors NPN et PNP ont exactement le même fonctionnement, à la polarité près.
Un transistor sature dès que |Ibase|>|Isaturation| (en valeur absolue), mais avec Isaturation>0 pour un NPN et Isaturation<0 pour un PNP.
En aucun cas on ne sature un transistor en lui imposant Ibase=0 . Bien au contraire, il est à ce moment-là dans un état dit "bloqué" (non-passant). Le fait que le NPN draine un courant vers le 0V et que le PNP fournisse un courant venant du +5V, n'est dû qu'à l'usage particulier qu'on fait des transistors dans ce schéma-ci.
On pourrait par exemple très bien drainer un courant vers le 0V avec un PNP, mais alors la commande de sa base devrait être réalisée de manière différente (montage dit "suiveur"), et le résultat obtenu ne serait pas aussi bon : le transistor ne serait pas complètement saturé (on aurait VCE>0,7V au lieu de VCE=0,2V), on gaspillerait la tension d'alimentation et on ferait chauffer inutilement le transistor.
Dans notre cas, le montage particulier des transistors permet de les utiliser en commutation, comme s'il s'agissait d'interrupteurs tout-ou-rien commandés par un courant.
Le sens du courant de commande est imposé par la position du transistor de commutation par rapport à l'alimentation. Quand on est "collé" au +5V, le courant de commande va nécessairement partir vers les potentiels plus faibles (vers le 0V), et quand on est "collé" au 0V, le courant de commande va nécessairement partir vers les potentiels plus élevés (vers le +5V). Une fois le sens du courant de commande imposé, on n'a plus le choix du type de transistor : on doit forcément utiliser un PNP dans le premier cas, et un NPN dans le second. J'ai du mal à comprendre ... pourrais-tu faire un schéma ?
Une fois que tu as compris le NPN, alors dis-toi que le PNP c'est exactement la même chose, en changeant tous les signes des grandeurs électriques présentes. Le sens des courants et des tensions est inversé, et le (+) devient le (-) (et réciproquement) pour les alims (ici ça revient à échanger le rôle du +5V et du 0V).
-----