Puerto Paralelo.ppt

286 views 27 slides Dec 26, 2023
Slide 1
Slide 1 of 27
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21
Slide 22
22
Slide 23
23
Slide 24
24
Slide 25
25
Slide 26
26
Slide 27
27

About This Presentation

Descripción del puerto lpt
Y si manejo con marcha silencioso sede
Wire


Slide Content

Adquisición de Datos
a Través del
Puerto Paralelo

Puerto Paralelo
Puerto
Joystick
Sonido
Puerto
USB
Puerto Serial RED
Puertos del Computador

Transmisión de datos en Paralelo13 12 11 10 9 8 7 6 5 4 3 2 1
25 24 23 22 21 20 19 18 17 16 15 14
1 0 1 1 1 0 1 0
Elpuertoparaleloleeyescribetodossuspines
simultáneamenteoen“paralelo”.Deahísu
nombre.

13 12 11 10 9 8 7 6 5 4 3 2 1
25 24 23 22 21 20 19 18 17 16 15 14
D0D1D2D3D4D5D6D7
S1S2S3S4S5S6S7 S0
C0C1C2C3C4C5C6C7
DATA
STATUS
CONTROL Puerto Paralelo (Buses)
•8PinesdesalidaenelBusdedatosDATA
•5PinesdeentradaenelBusdeEstadoSTATUS
•4PinesdeentradaósalidaenelBusdeCONTROL
•Los8pinesrestantessonTierra“–”(18al25)

Características operacionales del Puerto Paralelo
•ElPuertoParaleloestácompuestopor17líneas
(pines)deseñalyocholíneasdetierra
•Operaenlosnivelesdigitalesconvencionales,
donde0-0,5voltiosrepresentan0(OFF),3.8-5
voltiosrepresentan1(ON).
•DiferentedelacomunicaciónserialdondeONes
representadoporvoltajesentre-3y-25voltios,yOFF
porseñalesentre3y25voltios.Entonces...no
podemoshacerconexionesserial-paralelosinun
circuitoelectrónicodeacople.

Interfaces a través del Puerto Paralelo
•DebidoaqueelPuertoParalelotrabajaenlosniveles
digitalesconvencionales,esposible(yfácil)
conectarloachipslógicosTTL.
•Paraqueuncircuitoexternoseacopleperfectamente
alpuertoparalelo,sólohacefaltaunirlatierradel
circuitoconlatierradelpuerto(pines17al25).
• Paramayorseguridad,esnecesario
aislarlospinesdelpuertoparalelo,pormediode
compuertasinversoras,buffersuoptoaisladores.
Importante:

Conexión al Puerto ParaleloCPU
Cable Macho-Hembra DB-25
13121110987654321
252423222120191817161514
Puerto Paralelo CPU
Cable Macho-Macho
DB-25
Conector Hembra
DB-25
Conector FC-34P
(Hembra)
13121110987654321
252423222120191817161514
Puerto Paralelo
13
12
11
10
9
8
7
6
5
4
3
2
1
25
24
23
22
21
20
19
18
17
16
15
14
Cinta Ribon (25 Cables)
Opción 1:Construir un cable de acople al protoboard
Opción 2:Usar un cable macho –hembra DB 25

ADVERTENCIA
PRECAUCION
Conectardispositivosalpuertoparaleloimplicael
riesgodedañospermanentesalatarjetamadredel
PC,tengasiemprepresentequeaúnlosprofesionales
cometenerrores,porlotantonoestádemás
recomendarleextremocuidadoaltrabajarconelpuerto
paralelo.

Manejo de Salidas Digitales (Bus de datos “DATA”)
Introducción:
Lassalidasdelpuertoparalelonospermitenenviar
informaciónenformadeseñalesdigitales,alentorno
fueradelcomputador.
Porlotanto,podemosconvertirvariablespropiasde
unprograma(software)enaccionesfísicas
tangiblesenelmundorealpormediodeuncircuito
conectadoalpuertoydeestamaneralograr
verdaderainteracciónentreunprocesofísicoyun
programadecomputador.

Bus de datos (Salidas Digitales)
•ElbusdedatosoDATApuedeenviarunbyte(8bits)
altiempo(transmisiónparalela).
•Lasocholíneasdedatosestánrepresentadas
físicamenteporlospines2al9,llamadosD0,D1..D7.
DondeD0eselbitmenossignificativo=2
0
yD7=
2
7
.
•Actualmente,laslíneasdedatospuedenusarsepara
enviarórecibirdatos13 12 11 10 9 8 7 6 5 4 3 2 1
25 24 23 22 21 20 19 18 17 16 15 14
D0D1D2D3D4D5D6D7
DATA
D0 2
0
… D7 2
7

Manejo de Salidas Digitales (Bus de datos “DATA”)
MARCO TEORICO
Paraenviarinformaciónatravésdelpuertoparalelo,
antesquenadadebemosdefinirunavariableu
objeto(dependiendodellenguajedeprogramación)
enelcualsealmaceneladireccióndichopuerto,para
queasíelprogramaconozcadesdeelprincipiola
ubicaciónexactadedondedebeleeryescribir
información.

Manejo de Salidas Digitales (Bus de datos “DATA”)
Paranuestrocasoquetrabajaremosenmatlab,lo
primeroesdefinirobjetollamado“dio”(pordigital
input/output)enelcualalmacenaremosladirección
delpuertoparalelo.
Paraestefin,nosapoyaremosenlafunción
“digitalio”,queeslaencargadadelocalizar
automáticamentelosdispositivosdeentradaysalida
digital,definirsudirecciónycaracterísticas.

Definir la dirección del puerto Paralelo
Digitemosenlaventana“commandWindow”de
matlab,lainstrucción:
dio = digitalio ( 'parallel', 'LPT1')
Nombre técnico
del puerto
paralelo (de la
impresora)
Especificamos
que es un
dispositivo de
comunicación
en paralelo
Variable donde
almacenaremos
la información
recogida por
digitalio
Funcióndematlabpara
localizardispositivosI/O
digital,definirsudireccióny
características.

Definir los buses del Puerto Paralelo
YaconocidaladireccióndelPuertoParalelo,el
siguientepasoesdefinirporseparadoladirecciónde
cadaunodelosbusesdecomunicación.Paraellose
usalafunciónaddlineysealmacenacadadirecciónen
unavariabledelmismonombredelbusyaseaData,
StatusyControl.
Comenzaremospordefinirelbusdedatos.13 12 11 10 9 8 7 6 5 4 3 2 1
25 24 23 22 21 20 19 18 17 16 15 14
D0D1D2D3D4D5D6D7
S1S2S3S4S5S6S7 S0
C0C1C2C3C4C5C6C7
DATA
STATUS
CONTROL

Definir el bus de datos como “bus de 8 bits”
data = addline ( dio, 0:7 , 0, 'out');
Variabledondese
almacenará la
informaciónrecogida
poraddlinesobreel
busdedatos.
FuncióndeMatlabpara
definir líneas de
información,explícitamente
dentrodeunbus.
(Definiremoslaslíneasdel
busdedatos)
Variablepreviamente
definidaquecontiene
ladirecciónydemás
característicasdel
puertoparalelo.
0al7,
puestoque
definiremos
8líneasde
datacomo
untodo
Número del
bus (el bus
de datos
también
llamado
puerto 0)
Define
los
pines
como
salida

Enviar información al bus de datos (DATA)
Yadefinidoelbusdedatos,lousaremosparaenviar
informaciónenformadigital.
Paraello,seusalafunción:
putvalue (data, 255)
Función para
enviardatosaun
determinadobus
deinformación
“data”eselbus
alquedeseamos
enviar la
información
Esteeseldato
quedeseamos
enviar,
debemos
digitarsuvalor
en decimal,
aunque su
proyecciónen
el puerto
paraleloseaen
binariode8
bits.

Enviar información al bus de datos (DATA): Ejemplo
Ejemplo:Sidigitamos“putvalue(data,229)”,se
deberánencender(+5v=ON)lospines2,4,7,8y9,
debidoaqueestenúmerocorrespondeenbinarioa:
11100101.13 12 11 10 9 8 7 6 5 4 3 2 1
25 24 23 22 21 20 19 18 17 16 15 14
1*20*220*20*21*21*21*2
01234567
10100111

EJERCICIO
Ahoraquesabeenviarinformaciónatravésdelbusde
salidadelpuertoparalelo,enviédiferentesdatosy
observeloscambiosocurridosenlospinesdelpuerto.
Corroborelasinstruccionesprogramadaspormediodel
“Monitordelpuertoparalelo”Parmon2002.
Noolvidelainstrucciónqueusaremos:
putvalue (data, valor numérico enviado)

Manejo de Salidas Digitales (Bus de datos “DATA”)
PROGRAMACION ALTERNATIVA1(sub-buses):
DesdeMatlabpodemosdefinirlospinesdelbusdesalida
deinformaciónDATA,yaseacomountodocompuesto
por8bits(comohemoshechohastaahora),ónbuses
independientesqueconformenelmismobusdedatos,
nombradoscomodata1,data2…datan.
Siendoasí,cadasub-busdedatostendráundiferente
BITmenossignificativo,yporlotantoelvalormáximoque
sepuedaasignaracadabusyanoseráde255(8bits),
sinoporejemplo15,enelcasodequesedividaelpuerto
endosseccionesde4pines,donde
2
3
+ 2
3
+ 2
3
+ 2
3
= (15) dec= (1111) bin
Observe los cambios en el ejemplo a continuación …

Manejo de Salidas Digitales (Bus de datos “DATA”)
Partimos nuevamente de cero, definiendo el puerto paralelo …
dio = digitalio('parallel','lpt1'); % Define el puerto paralelo
Para definir independientemente dos buses de
datos de 4 bits:
data1 = addline ( dio, 0:3 , 0, 'out' ); % pines 2 al 5
data2 = addline ( dio, 4:7 , 0, 'out' ); % pines 6 al 9
Laúnicadiferenciaesqueestaveznodefinimoslas
líneasdel0al7,sinodel0al3ydel4al7.Esto
permitedividirDATAendos,dondeelBITmenos
significativodedata2,correspondealpin6.

Manejo de Salidas Digitales (Bus de datos “DATA”)
PROGRAMACION ALTERNATIVA2(pinesseparados):
DesdeMatlab,podemosdefinirlospinesdelbusdesalida
deinformaciónDATA,yaseacomountodocompuestopor
8bitsocomonsub-buses.
Ahora,imaginequedividiéramosDATAen8busesde1BIT
cadauno,tendríamos8salidasdigitalesindependientes
nombradasycontroladasporseparado.
Loscomandosqueseusanenestecasosonmuysimilares,
observelaspequeñasvariaciones:

Manejo de Salidas Digitales (Bus de datos “DATA”)
dio = digitalio('parallel','lpt1'); % Define el puerto paralelo
Para emitir uno digital (+ 5V) a traves del pin 7, digite:
Para definir independientemente cada uno de los pines
del bus de datos:
data.pin2 = addline (dio,0,0,'out');%Pin 2
data.pin3 = addline (dio,1,0,'out');%Pin 3
data.pin4 = addline (dio,2,0,'out');%Pin 4
data.pin5 = addline (dio,3,0,'out');%Pin 5
data.pin6 = addline (dio,4,0,'out');%Pin 6
data.pin7 = addline (dio,5,0,'out');%Pin 7
data.pin8 = addline (dio,6,0,'out');%Pin 8
data.pin9 = addline (dio,7,0,'out');%Pin 9
Putvalue (data.pin7, 1);

Manejo de Entradas Digitales (Bus “STATUS”)
Introducción:
LasEntradasdelpuertoparalelonospermitenrecibir
ocaptarinformaciónenformadeseñalesdigitales,
provenientesdelentornofueradelcomputador.
Porlotanto,podemoshacerqueunprograma
realmenteinteractuéconelmediofísico;dadoque
seráposibletomarinformación(apartirdelas
entradas)usandosensores,tomardecisiones(el
programa)yejecutaraccionesdecontrol(por
mediodelassalidas)usandoactuadores
electromecánicos.

Bus de Estado (Entradas Digitales)
•ElBusdeestadoseusaparaadquirirdatosdigitales.
Puedecapturar5bits(unosoceros)altiempo.
•Las5líneasdeestadoestánrepresentadas
físicamenteporlospines10,11,12,13y15delpuerto.
•Elpin11(S7)estánegado(invertidológicamente)
•Tienetreslíneas(pines)reservadas,lascualesno
podemosaccederfísicamente.EllassonS0,S1yS2.13 12 11 10 9 8 7 6 5 4 3 2 1
25 24 23 22 21 20 19 18 17 16 15 14
S1S2S3S4S5S6S7 S0
STATUS

Manejo de entradas Digitales (Bus de Estado)
Unpindeentradatienenormalmenteun
potencialde+5voltiosDC.Enestecaso,la
entradaasumeelvalordigitalde1.
Paraquelaentradacambieacerodigital,
debemoshacerquesupotencialseade0
voltios.Paraesto,debemos“cortocircuitar”
dichaentradauniéndolaatierra.
Deestamaneraelpotencialserá
forzozamentede0voltios.

Manejo de entradas Digitales (Bus de Estado)
Normalmente, una
entradadigitalemite5
voltios...Cuandoestá
en1digital
Sicortocircuitamos
dichaentrada,su
potencialseráigualal
detierra(0voltios).
Porloquecambiaráa
0digital

Manejo de Entradas Digitales (Bus de Estado)
dio = digitalio('parallel','lpt1'); % Define el puerto paralelo
Para conocer el valor digital en el pin 13, digite:
Para definir independientemente cada uno de los pines
del bus de estado:
status.pin15=addline(dio,0,1,'in'); %Pin 15
status.pin13=addline(dio,1,1,'in'); %Pin 13
status.pin12=addline(dio,2,1,'in'); %Pin 12
status.pin10=addline(dio,3,1,'in'); %Pin 10
status.pin11=addline(dio,4,1,'in'); %Pin 11
j = getvalue (status.pin13)
Donde “j” es una varable donde almacenaremos el valor
al que se encuentre el pin 13
Tags