Introducció Aquest document pretén servir d'introducció a aquelles persones que vulguin connectar diferents dispositius (bombetes, motors...) a un ordinador per mitjà del port paral·lel i controlar-ne i programar-ne el funcionament. Per poder-lo entendre és necessari saber programar mínimament amb llenguatge Basic. En tots els casos faré referència a ordinadors de tipus PC. La programació del funcionament dels dispositius es farà amb el llenguatge de programació Qbasic. El port paral·lel de l'ordinador La majoria d'ordinadors disposen d'un o dos ports paral·lels que habitualment s'anomenen (verificar-ho en les adreces de Windows) &H378 i &H278. La impressora s'acostuma a connectar al port &H378. Els ports paral·lels tenen 25 clavilles de connexió, les quals acostumen a estar numerades. Nosaltres només en farem servir 9; les numerades del 2 al 9 i una qualsevol de les numerades del 18 al 25. En el PC (femella) Les clavilles del 2 al 9 seran les que utilitzarem per a l'entrada de dades a l'ordinador i per a la sortida de dades d'aquest i les anomenarem D0, D1 ... D6 i D7 respectivament. Les clavilles de la 18 a la 25 són la massa del port (0 V). Les dades que enviarem o rebrem d'un port paral·lel seran bytes. Recordeu que un byte és una combinació de vuit bits, és a dir, vuit uns i/o zeros en línia. Amb vuit uns i zeros es poden realitzar 256 combinacions diferents. Aleshores, amb un byte podem enviar 256 dades diferents.
Enviament d'un byte des d'un ordinador a un dels seus ports paral·lels Quan des d'un programa s'enviï un byte al port paral·lel de l'ordinador (ja explicaré més endavant com fer-ho) el resultat serà que algunes de les sortides D0, D1 ... D7 es posaran a +5 V i altes a 0 V. Per mitjà d'un exemple s'explica com el port de l'ordinador interpreta l'enviament d'un byte. Suposem que enviem el byte 01011011 al port paral·lel de l'ordinador. Aquest número passat a decimal equival al número 91. El resultat que obtindrem és el que es mostra a la següent taula: Així, si volem que en el port paral·lel s'activin (es posin a un voltatge de 5 V) les sortides D6, D4, D3 i D1 li hem d'enviar el byte de sortida que equival al número 91. En el programa Qbasic, com més endavant es veurà, haurem de posar la instrucció OUT &H378,91. Observacions:
MOLT IMPORTANT Malgrat que disposem de 5 V que ens permeten fer funcionar un munt de dispositius, la intensitat màxima que ens pot subministrar el port és d'1 mA. Si li'n demanem més el podem fer malbé. Per tant, en la majoria dels casos, entre el dispositiu que es vulgui utilitzar i el port paral·lel, s'haurà de posar un transistor que serà el que aguantarà la càrrega, tal com veurem més endavant. Enviament d'un byte al port de l'ordinador des d'un dispositiu extern Per a entrar, per exemple, el byte 91 a l'ordinador per mitjà del port paral·lel caldrà donar corrent (5 V) als connectors D6, D4, D3 i D1 tal com es mostra en la figura. En el programa Qbasic, com més endavant es veurà, haurem de posar la instrucció A=INP(&H378). Fent això la variable A prendrà el valor 91.
Instruccions del programa Qbasic per a l'entrada i l'extracció de dades Observació: el programa Qbasic complet, el podeu trobar a la carpeta OldDos del CDROM del Windows 95.
S'utilitza per a l'entrada de dades a l'ordinador. La forma correcta d'utilitzar-la és: Variable = INP(Nom_del_port) Per exemple, la instrucció DADA = INP(&H378) llegeix el byte enviat al port paral·lel de la impressora i assigna la lectura a la variable DADA.
S'utilitza per a la sortida de dades a l'exterior de l'ordinador. La forma correcta d'utilitzar-la és: OUT Nom_del_port, dada Per exemple, la instrucció OUT &H378,255 envia al port paral·lel de la impressora el byte 255 que correspon a tenir 5 V en les 8 clavilles que s'han esmentat. Interfície de connexió del port paral·lel per a la sortida de dades A continuació s'exposen alguns exemples de com fer un ús correcte del port paral·lel per a la sortida de dades: MUNTATGE INCORRECTE El díode Led necessita uns 10 mA per a funcionar correctament. Això implicarà massa intensitat en la sortida del port. Recordeu que la intensitat màxima és d'1 mA. Hi ha un gran risc de fer malbé el port paral·lel de l'ordinador.
MUNTATGE CORRECTE Si volem que pel díode Led hi circuli un corrent de 10 mA, podem calcular el valor de la resistència que limita el corrent del díode Led: 0,2 + 2,4 = 2,6 V 9 - 2,6 = 6,4 V R = V/I = 640 W El valor de resistència normalitzat més proper és el de 680 W. Un altre circuit molt interessant pot ser:
El díode connectat amb paral·lel amb el relé té per missió protegir al transistor del corrent invers a causa de la força contraelectromotriu de la bobina del relé. Ara podem connectar al relé qualsevol circuit sense perill per a l'ordinador. Podem protegir més l'ordinador posant a la sortida de cada clavilla díodes: El díode protegeix al port de possibles corrents inversos.
MOLT IMPORTANT En qualsevol cas, les masses del circuit extern i del port paral·lel (una de les clavilles de la 18 a la 25) s'han de connectar entre si. Exemples d'aplicacions Alguns exemples d'aplicacions molt senzilles de realitzar podrien ser les que es mostren en els dibuixos següents: |
||
Llums del cotxe fantàstic amb 6 o 8 Leds
|
Dau amb 7 Leds
|
Semàfor amb 3 Leds de diferents colors. |
En tots els casos el circuit que es pot utilitzar, per a cadascuna de les sortides del port, pot ser el següent: Construïda la part de maquinari només falta fer el programa de control. El programa en Qbasic que es podria utilitzar per a les llums d'un cotxe fantàstic de 8 díodes Led pot ser, per exemple: REM *** Exemple d'aplicació amb el port paral·lel *** Espero que el contingut d'aquest document us pugui servir per fer algun dispositiu que pugueu controlar amb l'ordinador. Si necessiteu algun aclariment no dubteu a preguntar-me'l. |
||