• No se han encontrado resultados

Jose de Jesus Rodriguez Lopez

N/A
N/A
Protected

Academic year: 2018

Share "Jose de Jesus Rodriguez Lopez"

Copied!
91
0
0

Texto completo

(1)

Universidad Autonoma Metropolitana

P l a n t e l Ittapalapa

IJn digitalirador de video compuesta de 512 x 512 puntos, a 24 bits, con un anfitrion dedicado basado en el 80C186 a 20 MHz.

C

"

-3

\

Proyecto Terminal, que para obtener el titulo de Ingeniero Electronic0

I, 'I

i ' i

~ , I 2

P r e s e n t a

i /I F

Jose de Jesus Rodriguez Lopez

Asesor: Alejandro Martinez Gonralez

(2)
(3)

Tndice

1

2

2 . 1

2.2

'3

4 4 . I

4 . 2

5

5 . 0

5 . 1 5 . 1 . 1

4 . t . ?

5 . 1 . ?

5 . 1 . 4

Descripcion del proyecto

Descripcion

de

una sena1

de

video

En

l a frecuencia

En el tiempo

Requisitos de captura

Consideraciones de diseno Diseno de l a Memoria

Consideraciones qenerales

Diseno del circuito Ob5ervaciones generales

Anfitrion N80C186XL20 y conecciones basicas Arquitectura del 186

Desempeno del 186

Perifericos Integrados del 186 Desacople de senales de control

B u s de datos y direcciones del anfitrion Arbitracion del bus de datos, anfitrion Datos y direcciones del anfitrion

Tnterfase anfitrion

,'

diqitalizador

(4)

T . ? . 1

B

TOS EPROM

4 . . 3 . ? Memoria le trabajo RAM

5.4 Displ3.* Y teclado

5.5 Tnterfases serial y paralela

9.5.1 Comunicacion 5erial R 5 2 3 2

5 . 5 . 3 Tnterfase paralela

5.6 Bus de datos

5 . 7 Memoria le captura

ej.

1 Operacion de la memoria dinarnica

5 . - . í ! Fleccion de la memoria de captura

T " . 3 Direcciones de c a p t u r a

T . ' . 4 Direccionamiento de la memoria de captura

5 . 8 Control de la memoria de captura

7 . Q Procesamiento analogico de video

9 . o . t Terrninacion de video y fijacion del nivel de referencia

T.l?.=, ADC, conversion analoqico digital

= i , l t l Automata de captura

9 . 1 1 A l imentacion

6 Proqr amac i on

4 . 0 Observaciones generales sobre la proqramacion

6. 1 Archivos de definiciones 4 . 2 Archivos de inicialitacion

6.3 Archivos de utilerias

6.4 Putinas de integracion del an+itrion 6.5 Utileria para la PC

(5)

Diaqramas de los circuitos

Anfitrion NSOCl86XL20 y conecciones basicas

Bus de datos y direcciones del anfitrion Memoria del anfitrion, ROM y

PAM

Display y teclado

Interf 3se.s serial Y paralela Bus de datos del diqitalitador Memoria de captura

Control de la memoria de captura Procesamiento analoqico

Automata de captura Fuente de aliwentacion

Codiqo fuente

Codiqo de los Archivos de definiciones Codigo de l o s Archivos de Inicializacion Codiqo de los Archivos de utilerias

Codigo de los Archivos de inteqracion del anfitrion Codiqo de l a Utileria para l a PC

Codigo de utilerias para dibujar la imagen diqitalizada

Observaciones finales

(6)

1 Descripcion del proyecto

E z t e p r o y e r t ~ c o n s i s t e en csptur3r en forma digita.1 una imagen de video 9

511 m 3 u i m a t-esoll.tcion, Se b u s c 3 c r e a r c ~ n a herramienta p a r a l a invectiqacion s o b r e e l p r o c e s o diqitsl de imaqenes que permita u s a r a l t a definicion.

P o r u l t i r q o , IP b u c c a t3mbicn e l e s t a b l e c e r un precedente en l a UAM, p a r a

qlvp f l l t u t - g c i n : . ~ ~ ~ t i ~ ~ s c i o t ~ ( ~ ~ e n d i q j t a l i z a c i o n obtengan u n m a y o r alcance,

t . 3 1 romo e s t e p r o : : c c t o =,E. beneficia del trabajo hecho hasta a h o r 3 sobre

(7)

2 Dcscripcion de una sena1 de video

F l f a r m s t o p 3 r a t r a n s m i t i r s e n a l e s de video en Mexico ec e1 5 2 5 / h 0 NTSC

m i : r n g ~ I I P %e 1 ~ 3 3 en videoqr3bsdcrasr cmar2.4 de video y principalmente, en

1 3 d i f u s i o r c d e z e n 3 l e c de t e l e v i s i o n . SUE c a r a c t e r j s t i c a s sort las

(8)
(9)
(10)
(11)

3 Rcquisi tos d e c a p t u r a

3 r l l e r r J m c o n 1 3 5 c a r a c t e r i s t i c z ~ s de la sena1 de video, = e tienen 525

1 i n e a E por im3qen y 30 imaqenec por sequndo, l o que da 157Sr) I ineac: por I ”

2 ~ c . g ~ ~ ~ d o . Pllrr o t r o 1 3 d 0 , ;I por el teorems del mueftreo, I 3 f r e c u e n c i a

m i n i m s de c a p t u r s e c d~ R MHz ( S millones de muestras por segundo) esto 7 1 . 1 i e r e d e c i r 405 r n u ~ s t . r . a ~ por l i n e a ( p o r l o menos),

P s r a c 3 p t ~ r 3 r 3 e r t a f r e c u e n c i 3 , es necesario usar u n automata dedicado y a q1re I I microprocesador ~ accesible en Costo) no t i e n e e s t e ancho cle banda.

(12)

4 Consideraciones de diseno

L 2 csntidad d c d 3 t c 5 s. c 2 p t u r s r e 5 de 512 x 517 Y 3 b y t e s , e 5 d e c i r 768

4 1 ? b - : : t o s = - 4 R K b y t e s . Debido P que l a fr e c u e n c i a de captura e s mucho

m 3 : ’ o r de l o que 1 9 s d a t o s pueden ser procesados, e s t o s deben 2lmacenarse

F r irnero y procesarse d e s p u e s , . Por l o que se requieren los mismoc 768

FR.. ..te3 de rnemoris PSM p 2 r 3 gu.ardarlos. IJn a r r e q l o d e memoria de e s t e t a r n 3 n g 5 . 0 1 ~ p 1 . 1 c d e r e s 1 i z a r s e c o r l m P r c D r i a dinarnica, y a que h a c e r l o con

olemor i2 c s t s t i r s ser i s prohibit-ivztmente costoso ( l a r e l x i o n d e c 0 5 t o s

o ~ r i l . 3 a l ~ - ~ d ~ d c ( r - d~ 4 3 1 por- u n i d 3 d de memoria e s t a t i c a c o n t r a d i n a r n i c a ) .

F 3 t 3 s reduccione3 en costo, e g p a c i o y c o r r i e n t e no son g r a t u i t a s y se

(13)

4hot-3 k i e r I 3 como est.3 es una qran ca.ntidad de datoC, ez- conveniente que l a

m e r n o r i s p 1 1 . e d s sccessda s l e a t o r i a m e n t e ,

;'

no en forma s e c u e n c i a l , de

rncldcr que 3e t - e q u j e r e impl-ementar u n sistema de acceso doble a l a memoria.

Par 11n 1 3 4 0 , e 1 d i a i t a l i z s d ~ r n e c e s i t a a c c e s a r t r e s bj'tPs e n paralelo para slmacensr los dato% 5' por cltro l a d o , conviene presentar l a memoria como u n

3rre,z31~ de b.;.tes d i r e c t a m e n t e d i r e c c i o n a b l c y de p r e f e r e n c i 3 no paginado,

~ 3 t - 3 maxjmizar 1 2 velocidad de 3cceso.

4 . 2 Consideraciones qenerales

nehirfo 3 1 3 complejidad en e l manejo de l a memoria d i n a m i c a . y a l tamano

1 ~ 1pro.,:ecfc! en .:ener3l, z e h i z o deseable contar con un esquema modulsr

f 3 c i l m c n t e m o d i f i c 3 b l e . Por o t r m l a d o , para manejar l a qran cantidad de

T(=ttp,z o b t r . r : i + - : ; -5.1 ~ 3 p + . ! . 1 ; . 3 r . . ~ f u p rlece-,3r i o contar c o n u n a p l 3 t a f o r m a con

q r a n c p a c I 4 s r J d e computo. Por I o a n t e r i o r , s e d e c i d i c l l o s i g u i e n t e :

c 11 E S ~ ~e l e c c i o n e s , E e1 c o s t o t o t a l d e l c i r c u i t o s e incrementa

,rr1rt~i4erablernente :.I 1 3 tr3nsmision d e d a t o s e s t a limitada al puerto ceri3.1 r j p s r ~ l e l o d e l a computador3 en que 5e despliegen los d a t o s , pero por o t r o

1 3 4 0 , el d e z 2 r r ~ l l c del c i r c u i t o en general se f a c i l i t s en forma

(14)

~ ? ~ i r n i n s n d o los elementos que 5e u s a r o n p a r a el d e s a r r o l l o del c i r c u i t o ,

(15)

'3 Diseno del circuito

?F. p r c T e n t 3 3 cantinuscion el diseno del hardware en el orden en que fue armado, de acuerdo

a

la numeracion en los diaqramac.

5.0 Observaciones generales

D e b i r l n 3 1 3 f r e c u e n c i 3 IC operncion y

al

consumo de corriente de algunos

cIrcujtos, se tiene m u c h o ruido en el sistema en general, por lo que fue neces3rio c~z:-?r c3pacit.ore5 de desacople de todos tipos en muchos de los c i t - c ~ . t I t ~ ~ : . P o r la m i c m a razon, se usar.on circuitos HC en donde fue

p o z i b l c , , ~ 3 que producen paco ruido y aceptan niveles grandes de este. Sin

~ m h 3 1 - 7 0 , en c I e r t 3 c partes el retardo en

las

senales es critico y se

r e q l ? i r i o 1 ~ . f 3 r c i r c 1 ~ i t ~ 3 ~ F G 5 T + n estos casos. P o r ultimo, las circuitos HC tienen 3 ~ l - 1 ve7 1 9 desvent3ja de manejar poca corriente j' d e introducir 1 r 1 1 1 r h 3 capacit.anci3, 3zi que h a y secciones en q u e =e usaron circuitoe LS. Fn rnl-~chmz t a ~ n s , se p m d r i a n cambiar las circuitos d e una f a m i l i a por los l e n f r 3 , pern hs.:: = P C C ~ C I ~ P F , e n 135 que es critico usar los circuit.os

4 r p e c i f i r 3 d @ s .

5 . 1 A n f i t r i o n N80C186XL20 y conecciones basicas

5 . 1 . 1 Arquitectura de1 186

F l prncesarlor ScIClSb de S n t e l , tiene basicamente la miama aquitectura Q U E

el 1?0!74, r o m o = e describe a continuacion:

- PI.IZ de direcciones ds 20 bits, con

lo

que puede direccionar 1 rncq;,t!.::t P d i r c c t .sment E .

-

i 3 1 . 1 ~ d e d a t o s externo d e 16 bit.5, con lo que puede adquirir 2

(16)

-

C o l 3 de preadquisicion de instrucciones d s 6 bytes. L a combinscjon d e l a n c h o d e bus de 16 bits, las separacion de tareas

f B T U

y

Ell1 :..' l a c m 1 3 34' instrucciones permiten que casi siempre 5e tengan

inztruccjonec que ejecutar, disminuyendo grandemente e l impacto de 105

e ~ t 3 d ~ s de espers y del DM4 usado para refrescar l a memoris dinmnica y

(17)

-I

(18)

- C'ontroladar de Eelecciot-1 de c i r r l r i t - o s ( c h i p s e l e c t ) , E a t - a unidad j w p l e m e n t a l a s e l e r c i o n de c i r c u i t o = p a r a los diversos elementos en u n

z i s k t m s I P r n r r l p l ! t o , c o m o s o n : memoria de a r r a n q u e , m e m o r i a de codi30,

(19)

-

Controlsdor d o estados de espera. E s t 3 unidad p e r m i t e c o n e c t ~ r p e r i f c r iccla con u n ancho d e banda de bus menor a l del 1 8 6 , y a q u e genera

e z t 3 d 0 ~ internos de eEper3 :j los combina con 1 3 s l i n e a s e x t e r n a s d e

e r p c t - a , a s j ncrbn3 rinct-ona.

-

Cnnt7ro13dor de P e f r e s c o . E s t 3 unidsd permite r e a l i z a r e l

r e f t - c z c a de m e m o r i a = dinamicas en forma e f i c i e n t e y f a c i l ( u s a u n acceso por refrclzco, e n luqsr d e los dss 3 c c e s o s requeridos por el D M A ) .

Por o t r a 1 2 d 0 , l a = senales del d i g i t a l i z a , d o r p a r a e l 186 ( I n k E O C , i n t p r r u p c i n n de f i n d e captt.rr.3 .,: '?.:;S Drq', p e t i c i o n de D N A ) ';e obt-ieneri

it-I,\.ei-ti.ias del d i g i t a l i z a d o r p a r a permitir el funcionamiento del a . n f i t r i o n

; i n 9 1 d i y i t g l i z a d a r . LDE i n . . ; e r z o r e s 11áados t i e n e n re s i s t e n c i 3 s d e ' p u l 1 I I F ' do í I ? 1~ p a r a c o n t r 3 r r e s t 3 r 105 e + e c t o s del r u i d o .

(20)

5 . 2 . 1 A r b i t r a c i o n d e l bus de datos,

anfitrion

rl

186. tiene u n bus externo de 16 bits, de modo que con cada acceso puede 1eer rl) eacribir dos bytes a1 mismo tiempo. E s % o es independiente de 1 3

c l a s . ~ de stceso de que se trate, b y t e o palabra (doc bytes por palabra).

Fnt- otro I s d o , l a memoria del digitalizador esta distribuida como u n s t - I - e q l n de b).tes (vista desde e1 3 n f itrion) es decir, que solo puede ser

3 r c e z 3 4 3 ¡ I n t’.,:te 3 I s ‘ ; o z I F3r3. que 1 3 memoria de c s ~ t u r a se comporte como I I ~31-req1[11 n m paginedo, e= necesario convertir los bytea de esta a las

p q j 3 b r 3 r -le\ s n f i t r i g n .

Fr-I b s z c 3 1 9 3nterior, el espscio d e direcciones se divide en l a s

z i ~ a u j e n t e z reqiones:

(21)

F \ rntrltiplexor. 151-T! r e a . l i t s la d i v i s i o n y presenta el r e s u l t a d o 3 135

cnmp!.tertaa ??-I) A y 3?-D,B, los que la. combinan c o n DEN’ (Data Enable) del

1 9 5 p 3 r 3 d e c i d i r c ~ t a n d o a c t i v a r el bus de d a t o s correspondiente. E \ :32-D, A p r e s e n t 3 rtjrectamente su sena1 a los t r a o s r e c e p t o r e s 245-HH y 2 4 5 - H L , rnipntr3.z qlle e1 ‘ 3 2 - 1 ? , F present? S U r e s u l t a d o a l 3 2 - D , D 32-D,C, lor; q u e

I I E ~ I I Am y & e ’ respectivamente para decidir

si

e 1 a c c e s o e c a una d i r e c c i o n

p 3 r 3 n o n . Estar r a m p u e r t . ~ z a c t i , ~ a n 3. l o s c i r c u i t o s 245-SL y 245-SH

respecti*,;smente. E o neces3.r io que las compuertac 32-I1 sean rapidac para ~ I I P q u e los d 3 . t ~ ~ puedan propagarse por e l c i r c u i t o .

5 . 7 . 2 natos y direcciones del anfitrion

P a d n ~ L I C e1 186 tiene u n bus de d i r e c c i o n e s de 2 0 b i t s , mismas q u e se u s a n

4 t . l =!.I t.Qt-z?l i d 3 d , m u I t i p l e x 3 d o c n n 1.1t-i bu= d e d3tos d e 16 b i t s ’J 1 i n e a s de

(22)

escrjtura a la memoria de captura 3ddress latch ensblc

i n i c i a l i z a . c i o n d e l d i q i t a l i z a d o r

direction de f l u j o d e l l s t o ~ h a b i l i t a c i o n de d a t o s

i n i c i o de captura

interrupcion de f i n d e captura p c t i c i o n d e r e f r e s c o de memoria r e l o j del 186, a 20 MHz

reconocimiento de la interrupcion

(23)

P S I - S z c I e r c i ~ n 3 1 - ezta memoria, 5e tiene la sena1 U C S ’ , proporcionada por

2 1 196, E 3 t 2 g e n a l debe programarse de acuerdo con e1 t m a n o de 1 3 memoria 1.1 5 sri 3 ~

1 € 1 !F16 prezent-3 13s d i r e c c i o n ~ s del siguiente acceso, miamas que tienen tiempo p a r a p r a p s q a r s e 3 todos los circuitos correspondientes ( 3 7 3

; t 5 ” \ , 1 - 3 3 3irecciones se considcrsn a psrtir de A l por que Ao =irve p a r a d e c j d i t - entre Ins dos bytes d c 1 3 memorI3.

7 1 - 0 5 multiplexores 15’ 3 p u n t a n inicialmente a I ? parte menos

~ i q n i f i c ~ t t : ...a d e las direcciones IAJ:AA). Se u s a n circuitos 7 4 L S l i s ’ por q ~ t e e 1 r e t a r 4 0 q1.r~ proporc i0na.n e s e1 adeccrado.

3 L a s ~13n3lez R D ’ y WR’ actIvan en ca.da ciclo de bus a la a r : o m p ~ ~ e r t a O O - M , A , 13. 41-1.p a su \;et genera PAS’ y lo. presenta a

la

m e m o r i a .

(24)

1

-I

G n s e ( ~ 5 3 p a r 3 decidir si s e d e s e a accesar el byte par de la rnemor 13. : Z P spl i c a 3 O O - t l , D , 1 3 que qenera C A S L ’ . E s - t n sena1 activa 1 3

(25)

: I refre.sco z e realiza programando u n canal de DMA p a r a e f e c t u a r una t1.317~4cll-encis de p a l a b r a en modo contjnuo, incrementando la dir-eccion d e Flrente, L . 3 d i r e c c i a n d e s t i n o no se incrementa es u n 3 d i r e c c i o n de puerto in 1.1zar :y c i n estadoz de espera. Las p e t i c i o n e s de

DMA

l a s genera un t.emporiz3dnr prnqrarnsdn p 3 r 3 e + e c t u a r l a s a l rnenos c 3 d 3 . 15.625 us.

5 . 4 D i s p l a y y teclado

P 3 r 3 F 2 r i l i t s r e 1 l e s a r r o l l o del %istema, se implementaron un d i s p l n y

:Y’

u n t e c l s d c r , l o que permitio l a depuracion interactiva tanto del hardware como

+el s c f t w 3 r e . L 3 rcmbinscion de ambos p r p c e n t s una b u e n a i n t e r + a z a l

(26)

5.5 Interfases a e r i a l y p a r a l e l a

~ 3 ir-!ter f s z e Z P i m p l e m e n t o ?le acuerdo con la norma RS 232, con u n

D B 9

m s c h c , r ~ I ~ , ~ ~ e l e s d e v o l t a j e de 12 'J :J u n c a b l e de modem nulo con c i n c o

(27)
(28)
(29)
(30)
(31)

i + n I P u e s p a r a d e c i d i r a quien 3 8 le asigna el bus de direcciones: i n n = O, € 1 bus e s del a n f i t r i o n

i s 0 = 1 , ? 1 b u s e s d e 1 digitalizador

(32)
(33)
(34)
(35)

I P ~ F Z loc F F ’ s mencionados a n t e r i o r m e n t e s o n i n i c i a l i z a d o s ademas d i r e c t a

(36)

I-

>F t P . 5 z p 1 . t ~ ~ d c hsber a i s l a d o e 1 b u s del a n f i t r i o n y s a t i s f a c e r

las r e q v j z i t o s d e precsrga d e l a memoria, el buá es preparado para

(37)

4 . 1 1 A l imentacion

F c t e siztems t-iene bssirrarnente ).ras requisitos de alirnentacion: +5?, tl2V

(38)
(39)
(40)

5

Pr

oqr amac ion

5 .

o

Observaciones generales sobre

la

proqramacion

3 3 r 3 simplifjc3r l a tarea de programar, aprovechando a l mismo tiempo l a

r 3 p s c i d s d de computo del t 8 6 , ~e decidio programar en C, rlbteniendo de

l s t s rn3net-3 I J I ~ buen control s o b r e la qeneracion de codiqo y a l mismo I

t i e r n p 9 t o d 3 ~ 1 3 z :.?entajas de programar e n u n lenguaje de a l t o nivel.

4.1 Archivos de d e f inicioncs

E = t 2 z 3rchi:.c1)s ronformsn e\ primer ni.:iel, y presentan las direcciones de Ins p t l e r t o s , l a s direcciones de memoria y l a s palabras

de

control como ncntbrez zimbolicoz. Los 3rchivos d e esta capa son los siguientes:

Pefiniciones pars manejar 6 1 controlador dol

-

IJAPT : H Definiciones para manejar el 8250 del anfitrion o

el P I - I P I - ~ ~ p s r s l e l o de la PC.

-

PFTE H @efiniciones globales del proyecto para el s~~iitt-ion. Easicamente consiste en l a aaiqnacion de recursos del sistema y

esn I s 5 p 3 1 s b r a . e de control 3 los perifericos integrados del 186.

(41)

- z t o z s r c h i v o ~ conforman el sequndo nivel. Realizan la inicializacion y

teri4ic3cion del sistema, convirtiendo e s t a en una tzarea t r ~ n s p a r e n t e

sl

Jrngramador. Consisten en:

-

!331to, 3srn E a t e ztrchivo realiza el arrsnque del 186.

'1-09rsrns la linea de seleccion de circujto para la R O t l y salta al inicio

IC 1 r ~i can. d

-

cos.

c

L'erifica

e

inicializa perifcricos internos (en el

196: Cmntrolsdnres d e Interrupciones, de

DMA,

de Perifericos ;J Timers),

Icrifericoz ext.erurnc_ (8259. S ? - Q , Digitalizador) y la memoria de trabajo, i n s t a l ~ n d o 1 0 5 manejadores de dispositivos (los vectores de interrupcion)

. c n p i s l n d o l n s d s t o s de I3 PC)M 3 la R A M , Despues, llama 31 programa

PI- i I:C j p 3 1

.

Seris1.c rutjnas de manejo d e l puerto serial.

(42)

I C I t ~ c l 3 r l o , e1 p~lert.c serial y el puerto paralelo, ademas de un cargador

I F p t - ~ ~ q t - s m a ~ por el puet-to serial. Consisten en los siguientes:

-

'IncFi 1 c s . H rontiene las nombres de los archivos de

i e f i r i c i a n e s usadon en el sirtema.

Sirve

para compilar archivos.

-

P i c . C A r c h i v o principal de l a parte del proyecto para

I s

o r ,

3 l m i n i z t r 3 el menu, I ? memoria e \ manejo del sistema qrafico.

-

PC-Ser, C: M a n e j o del puet-to serial en la P C .

Manejo del pusrko paralelo en la P C .

4n i m 3 3srn Rutinas para desplegar l a imaqen. Optimizadas

(43)

1

M I

b

M

v u x n

I-

(44)

O-rNb-J*UIUlb

nnnnnnnn

a a a a a a a a

(45)

I

J

O

(46)

I c

(47)

4

;i

d m d 4

Y

m

4

P N O

(48)

I ., I

mmmmmmmm

Z

a a a a a a a a -INM*mIPr-a

1

-INMbKIrPlcOD

m mmmmmmmm

N a a a a a a a a -INMbmIOlca)

I

:

dNMOmIOlcW

P

I I

(49)

m a

I I I I

o00 m a an

am

aa

[Loo

av

I

I

000 L9p

auo

00 av

am m

aa a

I

I

I

000 om0 ao av a m aa

-

1

"..

a a a a a a ann [LIZO!

...

= o m lnrnul

v v v

a a a

04NMUWIOFQI

a a a a a a a a a a a a a a a a a a

(50)

4 M m

M 10 4 4

; f i p U I

O

(51)

L

4-

N M N 4 t >

I

(52)

m

B

I l m ,

I I

(53)
(54)
(55)

7

8

18

19

1 1 10

' ~ * * * * Y * w * * + x * * * * * * * ~ * * * * * * * * * * * * * * * * * * * * * * * * * * * * ~ * * * * * * * * * * * * * * * * * * * * * * * * * * * ~

I r r t1 i ..;o 82'0. H

c,znt.iene 1 3 5 d e + i n i c i o n p c n e c e s a r i a s p a r a usar el 82?Q

rl

I - I ~ D ee el s i g u i e n t e : Se toma u n a palabra y se suma ( + o or) c o n las

o p c i o n e s r e u e r í d a s , que son 13s que aparecen a b a j o . E j e m p l o :

{Jor d 7 9 = R b d D i s p M o d e S r t e D i s p 8 - 8 L e f

4

tKbdEncodedNKey

PI-oyccto 3 3 P - P F T F

S d I s le 8 b i t , l e f t e n t r . , ; , encoded scan nkey:

YY********w~Y*****~*~****************~******************~*******************-

T l e f i n e V b d D j c p M o d e S e t 0*32 e-1S.f i ne Il'i 3 p 8 L . e f t O*B

f d e f jne D i s p l 6 L e f t 1

*a

P l c t i n c D i s p S R i q h t - 2*8

f d e f j n e D i ~ p l 6 P i g h t 3*8

€ d e f i n e KbdEncodcd2Key 0

€ 3 e f j I-IE V b d D e c o d c d Z K e y 1

f d e + i ne F ' b d E n c o d e d N K e y 2

T d e f i n e t f b d D e c o d e d N K e y 3

Crlct i ne t c b d E n c o d c d M 3 t 4

(56)

KbdStrobedEnc KbdStrobedDec

Pr

09r 3 m C lock ReadF i f a ReadDizpPPM WriteDjspRAM

AIltbTnC

Di

spur i teTnhB1

TWI?

TWE I 14

El

3tlkc/:

e

13nbfB

F1

a n k

Clcs.rPispFifo € n a b 1 eC 1

e?r

Clear0

r

1 e a r AE2Qh t l.esr 1 ClearFifo C 1 e 3 r C I I

EndTt3tModeSet Spec i a t E r rMade

6 7

1 *32 2*32 3*32 4*32 16 5332 S 4

TWA c

I W B

2

1

BlankA

+

B l a n k B

6+92 16 0*4 2*4 3*4 2 1 7*32 'r~*~~U********++*~**~**+*+**++*********************~************************~

AI- ch i \;m ClART

H

Oefinirion de constsntes pa.rzt proqr3rnar el puerto serial 1 s ~ - ~ t ? i c s c i o n de los registros es relativa. a UART y a JncDir

Ezt2\s ronsf3nte.: deben definirse externamente y 5 u uso es e1 siguiente:

1 - 1 4 ~ ~ : T n d 1 c s 1 3 loc2lidad inicial en que se encuentra

el

uerto serial t ' n c D i r : T n d i r 3 el incremento cn direccion d e 1 UAPT

( E n el

1

a

6

==

2 )

*Y*YYx***~#Y****************~********#**************************~************- F ~ - n . : : p ~ t @ TIR-PFTF

0 x 3 f S

1

IJAPT

+

TncDir 3c O

CIART

+

TncDir 3

O

IJAPT TncDir

*

r?

UAPT

+

IncDir

+

O

IJAPT + IncDir (?

ClART + IncDi r

*

1 IJAPT + T n c D i r Y I

ClART + IncDir

*

1

c \ c definicion p o r default * I

/ Y para el 186

*/

:+

receiver b u f f e r register

*,'

/ *

iqual que

R B R

*/

:*

transmit-ter holding reg

+:

/ * igual que THR

*.,

/*

divisor latch low (least) Y:

/ *

divisor latch high

*:

!+

iqual que

DLH

( d 1 most) interruot enable reqister

-

*/

OwO9 : Y deshabilitar intei.rupciones

*:

O X O 1

/ *

i n t por Received Data Available

*/

(?st02 int por Trans Holding Peg E m p t y

*:

0x08

:*

int p o r Modem S t a t u s

*:

(57)

+

YncDir # 2 / +

int

identification reg i ?

? Y no

i n t p e n d i n

Y.'

/+

interru t en i n

*:

: Y CTS

Dsi,

El rl)

D?D,

l o ~ e 5 t , f o u r t h Y:

I + THRk, t h i r d

*:

: Y PDA, second

*:

/ +

PLS, h i g h e r t , f i r a t priorit:;.

+;

I * datos de 5 bits

*:

:*

datos de 6 b i t e

*/

/+

datos de 7 bits

*/

/ Y datos

de

8 bits

*:

I * u n bit de stop

*/

/ Y do5 bits de stopti 1:2 para 5 B i t ) * /

/ *

Parity

Enable

:*

even Darit.y. select

3

t IncDir

*

3

:*

line control register Y :

/ *

odd parity- select

: Y bit para agragar paridad

f d c f i n e FtetFreslr 0 x 4 0

/+

enviar u n break

E d e t i ne O L A 8 0x80 / Y Divisor latch access bit Cde4 i n e P r o g E a u d oxe0

/ *

igual que DLAB

t I n c D i r

S

:+

data ready

/ Y overrun error

I * parity error

: Y framing error

!+

break interrupt

: Y transmitter holding r e g e m p t y / Y transmitter shift register e m p t y t T n c D i r 5

/ + delta clear to send

!*

delta d a t a set ready

/ +

trailing edge r / n g lnclicator

.'+

delta data carr ler detect

/SF clear to send

.'*

data set ready

/ *

r i n g indicator

/ Y data carrier detect

para groqramsr el baud, con u n reloj

de

1.8432

MHz

3

S 12 16 a4 3 2 48 56 A 4 '36

*/

* /

*/

*:

*/

*:

*/

* /

*/

*/

* /

n /

*/

*/

*:

* /

*I

*/

*.'

*/

* I

*!

* /

Y /

*/

*/

*:

* /

*!

**Y************************************************************************* Arrl-rivo PFJE.H

(58)

I y ,- 7eqinento= Y Pila ( P A M )

+:

rdef j na RarnDataSz Or4000

/ *

u n bloque p a r a

datos

y codigo

en

RAM

f d e f irvc W m r d T m r t T n t 0x6001

/ +

= e u n d a prioridad

*:

F d s f j ne LJcrrdMCATl 50000

t'*

in? cada 10 ms * I

c l e f i ne GJnrdT imer 1 Oxe00l : Y i n t ~ , N o M C , N o R t q , N o P , N o E x t , l ' 4 o A l t , C o n t ~

y./

*/

*!

* I

*./

*:

*/

*:

*:

*/

rdarine WordMCkT2 7'5 !.Kgenera l?MA cada 15 us ' T m a x

=

15.625)*/

€ d e f inc WordTimer2 O x c 0 0 1 ./Y no i n t , continuo, start-, no i n h

*,'

fde4ine RamCadeTnt FirstAvailInt programa en Ram

*/

C d e f i rlg IJar dDMAChO O Y 1 3 - T

.'*

refresco de memoria. u/

' Y T)=ia NoChq, S=Mem 3 n c 3 NoTC NoTnt SurcSyn P r H i q h T d r q Chq Start,word

*/

f d e f i n e W a r d d ~ ~ t P t r Y O

o

Y ? e t i ve UordDcstPt.rLO Puerto4 I * un puerto libre con No ready, No wait*./

f d c 4 i ne WordSvrcPtrHO

n

E d e f i n e IJmrdSurcPtrl..(?

i

:*

localidad n o n , refresco byte * /

C d e f j n e Wor d D M A C h l O x 1446

/ +

refresco del digitalizador

*/

(59)

I

3.2 Codigo de los Archivos

de

Inicialiracion

~YY**Y********************************~*****~********************************- Ct- ch j

...

;m C O S ,

T n i c i ~ l i z s c i o n del sistema 156 par3 POM y PAM

**Y*********************************~*****~**~********************************-

f d e f j ne CQ5-F-i 1 e C 0 S . C /)c Permite que tcc!tasm sepan que archivo es*/ EirlcIu4e " l n c f i \ o z . H t '

Proyecto 1 T R - P F 3 E

- . . m i d Tnicisliz3(s.;oid)

. ' Y F~~.ncion Principal del sistema. De a c u e r d o con el ambiente a n que se

cncucnfre (Roll o P A M ) Hac4 10 siguiente:

POM: C h e c s e inicisliza reqir;tros, memoria y perifericos y llama 3. main

P4M: T n j c i a l i z a memoria y reqistros y llama a main

*/

(60)

‘ Y

‘ W

‘ Y

‘ Y

‘ Y

‘ Y

‘ Y

‘ y .

(61)
(62)
(63)
(64)

Q x O a ,

0x40,

0x00,

O X O ? ,

0x00,

0x09,

0 x 2 4 ,

0x01,

0x00,

O r 0 0 ,

0 x 2 0 ,

(65)
(66)

' 5 ' '6'

0x33, 0x03,

' 7 '

0x40, 0x08,

0 x 7 1 ,

0x36, I

0 x c 8 ,

0 r 7 9 ,

0x36,

O x 3 e ,

0xOf y

0 x 5 8 ,

O x d 4 ,

O X I C ,

0 x 8 0 ,

' 3 ' * /

0x39, O r O f ,

'(3'

* /

0 x 7 0 , 3 s r n

3 ?d 0x38,

0x01,

0 x 0 0 ,

? f

' Y ' Y ' ' N '

O x f 3, Oxecj, 'O'

*;

0x30,

I

1

? C

' Y I - . ' 5

' T '

0x08, 0x09, ' I J ' ' V ' 0 x 3 9 , ' W '

* /

0x20,

0xf 1 ,

0xd4,

0 x 1 0 ,

0x01,

'

7 '

' " '

O x f c ,

I ? Y !

0xd8, Oxde,

' e ' 'f'

O r l e , 0x00 y

d C

/ Y 'm' ' n '

O X 5 C t , 0 x c 0 ,

t c

' Y ' 1 1 ' ' \ j '

0x48, 0x40, ' w '

*/

3 s m

'7 ic

? 0

(67)
(68)
(69)

'*Y***********~**************************************************************~

A r c h i . L / o SerI31 . C

Put i n 3 z de m a n e j o d e l p u e r t o s e r i a l

F I - o : : ! F C ~ ~ 7 l R - P F I E

~**********Y*******************************~*******~************~************~ r d e f i n E S e r i a l F i l e Serial.?

(70)

i IS t

' Y

r

(71)
(72)

~*I*YY*Y~***W*Y********Y****Y************************************************

A t - c h j m P a r a l e 1 o . C

R l r t i n e ~ de rn3nejo d e 1 p u e r t o p a r a l e l o

P r c y e c t n 3 1 R - P F I E

Y Y w Y * * * * * Y Y * * * * * * ~ * * * * * * ~ * * * * * ~ * * * * * ~ * * * ~ * * * * * * * * ~ * * * * * * * * * * * * * * * ~ * * * * * * * * * * * C i r s r l t t r t F " T t 7 c F j l ( 1 5 ~ H "

(73)
(74)

~***********YW*+**************~*****~**~*************************************~

A r r h i I n = F i 1 P E . H

C o n t i e n e 15s nombrer d e 1 0 5 3 r f l ' : : .;OB de definiciones necesarios p a r a r r o m p i l a r el z i s k ~ m s

Pr ~ ~ , . . ~ F T t Q T 7P - P F TE

rY*Y~U*YYY~*W*Y~**#**~*************~*************************************~***-

31macena datos en l a memoria del SM

*,'

regresa. datoa de la memoris del SM 4+:

I - P ~ ~ C S ~ u n a imagen

+.'

r4.3re53. u n s irnaqen * I

5 1 - 1 ' ~ i a 4 bjts por b y t e 2 , l + /

envia 4 bita p o r byte 1 , 2 * /

e n v i a 4 bits por byte 1,2 uno a l a v e z

*;

cspt.c!rn I J . ~ Z ~ imagen

*.,'

(75)
(76)
(77)

else

L S e n d B y t e ( D a t 0 A u x ) ;

c

(78)
(79)
(80)

Terminar = L e e I m a g e n P 3 r ( O , E u f f e r s C O l ) ;

T e r m i n a r = L e e I m a g e n P a r ( 1 , B u f f e r s l l l ) ; Tsrminat-. = L e e I m a q e n P a r (2, B u f fersC21) ; T e r m i n a r = L e e I m a g e n P a r ( 3 , B u f f e r s l S l ) ;

(81)

'*Y*Y****~*Y*Y*Y*****~~~*********************************~*******************~

brck, j '.-;g F'C-Ser C

! . ! t i I c r i3.s p a r 2 (11 rfi3.riej~) d e l p u c r t.o s e r i a l , p a r a l a PC PrO.;tqttq l l R - P F T E

Y*Y*~***YY*~*Y*W***Y~*Y****YY~***********************************************~

f i 1 1 1 1 ~ *1_14kT, Y ' #

f i n r l r l l p ( 1 ? 0 S . H \

(82)
(83)

.'~*******************************~******************~+****~******~***********~

Al- c h i vo PC-PAR. C

Ilti1FzriJz

psr3 e 1 manejo de puerto paralelo

P r o y e c t o J T R - P F T E

y****************y******************************~**************~*******~****.

r i n t l f r d c 'do:. Is?

E i r ? c l l t . d e !bins;.hb

(84)

;""""""""~"""""""""""""""""""--"--"--- Gr ch j vu 4N J M A . ASM

I I l t . i l c r i 3 E p a r 3 . manejar el controlador UGA de l a P C

9 Pro.:;ecto JYR-PFIE

~""~~"""""""""""""""""""""--""---

-

T E Y l E e 3 m e n t b y t e p u b l j c ' C O D E '

3 3 ~ ~ r n e cz:-TEYT

p u b I 1 c -An i ma

Procedimiento Anima.asm

c 4n i m 3 p r o c near

9 O i b u j s uns imagen en vqa de 256 x 256

1 E s t a optimizado para obtener la. maxima velocidad.

? 1.. 1 smarla

r

:

I i n k Snimacint XTni, int YIni, char f a r +Imagen);

(85)

'i deo€tu f f el- Se? e IJ OaCIOOh ; inicio de la memoria de v i d e o en \IGA

r T n 1 cqu 192

:

coordenada x inicial

'Y

.""~""""""--""""""""""""""""""""""""""""-

T n i cqu 112 ; coordenada y inicial

p11zh b p ; pro'] 090

puzh 5 1

p1-1 c h d i

mc:; 3 x , '.IideoBlJf farSe

mov C X , word p t r C b p t 1 0 3

mo:l e s

,

C Y ; es = seqmento de la imagen

inicializa el reqistro de modo del controlador grafico

mo'.~: d ~ 3 c e h ,

:

3punta a 1 reqistro de direccion

ll-lo.~.: b p , 3p : salva el ambiente de1 que llama ( C I

p l l a h 4 5

1 n o . i :j I

,

3 Y ; 7 3 = seqmento de 1 3 memoria

de

video

MO..,: 3 x , 205h ; a l

=

numero del registro de modo

f 3 I J . t . d u , 3 x ; sh = m a d c de escritura 2 (bits O,ll I modo de lectura O (bit 3)

7 ~ ~ E t s b l e c e el re7istro de seleccion de funcion/rotacion de dato5

Y 0 I- 3 !7 9 3 I; ; a h

=

funcion reemplazar

no': 3 1

,

'3 1 3 1 = r e i5;tr.o de seleccion d e @CIt I ? 3 k ro?acionl+uncion de datos

; c s t 3 b l e r e el numero dol reqistro de mascara de bit

m@\; 3 1

,

S ; al

=

numero del registro de mascara de b i t

nclt ?I:<, 3 1

mn\' ri v

,

' 3 ~ f h

m o'..; 3 h I ;

! P

3 1 = constante de mascara

r e p a r a par3 c 1 0 l o c ~ 1 - al imaqen

; p s r s Linea = LineaInicial haz...

; b x = u

; b x = x 3t '256 ; b x = x

*

2'56

+

y

(86)

; c 1 = S r e : 7

; cl

=

numero

de

bits por desplazar a la izq

; a l = mascara de bit 5 i n desplazar

I prepars el reqistro de mascara de bit del controlador

zhl

a l , cl ; ah

=

mascara de bit en

el

luyar correcto

O u t d Y q 3 1 ; escoge l z ~ mascara correspondlente

! proqrarna el valor del p i x e l

VIO\; 3 . 1 , d s : Ib:-l ; asegura un byte de cada plano de bit

Mc?'l. dE: r b u l , C h ; actualiza los planos

i n 2 : repite hasta Punto

==

o

; ( s j == (3)

i n c d i ; ljnea + t

cmp r! i ,256 ; repite mientras linea

<

256

.j I 8 6 3

mo;; d ~ , 03ceh

rno:., 3 \ * , O f f QSh ; mascara de b i t default p44:

1 restaura el controlador 3. su5 valores oriqinales

Q l J t d Y , 3 Y

; regizt-ro de modo default

; selercion d e f u n r i o n default

FI.I~. 1 j c SetFjyc]

- %?e+ P I Y P I pr c c iie3.r

7 F'rgcedjmjento SetPIxel;

* C o l ~ c s I J n p i x e l em modo? 'IGA nal.iuo5

1 I I srnad3: C .;cid 5rst-Pi.icl ( i n t Y , i n t

:J.

i n t n ) ;

"""""-""""""""""""""""~""""""""""""""""

lisa P I rando ? d e l c o n t r o l a d o r d e 'JGG

d~t-~dc '*';:I 5st-1 1 3 5 cbDt-denadas y n es el '~alat- d e l pixel

At- a X

41- =rY cqu eqcr b ~ o r r j r.lor d ptr Ibp t p t r Cbp t 4 1 63 ; direccionamiento

de

parametros

9 t-

qr.1

eq1.1 b y t e p t r Cbp

+

81

P t l L I ~ i t 5 equ c? ; seleccion de funcion (reemplazar)

;"""""""""""""""""""-"""""""""""""~"""""

(87)

1 progrema el registro de modo

del

controlador

ma:. a y , 205h ; al

=

numero del re istro de modo

; 3h = modo de cscri?ura 2 (bita 0.1) I modo de lectura O ( b i t 3)

C l c . r t d r ,

mot: a h , R M W B i

7

c i ah = bits a leer y modificar y escribir

: p r o q r 3 l n a cl ve i a t r o de seleccion de rotacion/funcion de datos

nov a 1

,

3 ; a l

=

registro de seleccion de

o u t d x , ax ; rotacion/funcion de

datos

9 pr ogr3tns P I valnr del

mov 3 1

,

es: I bx 3 i

eivel

oma un byte

de

cada plano

r m v a l , A r N ; 3 1 = valor del pixel

m@;; ec: IbyJ, al i actu.aliza los planos de b i t

m o v a x , 0ffr3Sh ; mascara

de b i t

default olrt- d x , a x

r e s t t u r 3 1 ~ s registros del controlador grafito

: registro de modo default

: sieleccion de funcion default

.-II+'. I i 7 P i . f + l c d - l r 10

ct; . . , G I & A d ) - t r. p r c r n e s r

:

- - - " - - - " " - " " " " - " " " " ~ " " " " ~ ~ " " " " " " " ~

C r i m r j o v F j v s ! 4 - J ! r ! f 1

Ltnri.7,r ~ ? t ~ r1 3 ~ direccion de i ~ 3 la memoria grafica en modos EG& ..:; '.ic;A

* ?'?!ov?QO 1.4 c o I or e s

4 4 0 ~ 2 0 0 16 col ores

* 54:3u'350 t 4 c o 1 or es

1 5 4 0 ~ 3 5 0 m o n o c h o m ~ t i c o ( 4 colores)

.

4 4 0 ~ 4 5 0 2 colores

1 540x450 10 colores

:

.

I I 3r1-1343 3~ = coordenada y

0.:. = coordenada x

.

v e q r e z 3

8t-I = mascara de bit-

s s : b x

=

direccion en la memoria

de

video

3 c l = numero d e bits a desplazar EI la izq

F..;t esFer L i ne equ 80 ; bytes en una linea horizontal

''i d e c R u f f erSegment e qu (3aOcIO h

:

---""-"""""----~"""""""""""""""""""""""~"

rnQ.c cl b l i cl = parte baja de x p u s h d Y i reserva d x

mov d x , BytesPerEine

rn1.t. 1 ri Y ; zxx = :J

*

b.;~te5 p o r 1 inea

z h r b y , t

3 h r b u , 1

g d d b r , ax

rno'.; 3.v Vi deoBuf fer Seqment

m o v e ~ , a x

p o p d u

E J l r b y , 1

; bx = x 1 8

i b x

=

y

*

Bytes Por linea

+

x 1 8

i c l = x & 7

(88)
(89)

9 Observaciones finales

&jeti\tos de este p r o y e c t o se complieron satisfactoriamente h a s t a la

~ d q u j z j c j o n de imaqenec de video tomando 512 v 5 1 2 muestras a 8 b i t s de rezolt!.cian, es decir, e n blanco y neqro.

I 3 descornposicion en los tres colores b a s i c o s ( r o j o verde y a z u l ) no se

enrnpl~trl, p n r f 3 l t a de tiempo, sin embargo, 5 0 1 0 este paso es necesario

p s t - 3 a b t e n c r video en c ~ l o r , y a que el resto de1 diseno se armo y probo -Jcl objeti\;o final de 2 4 b i t a .

lado, pars desplegar la imaqen

3 d 3 . T P r e q u i e r e fanto de u n monitor

capturada especializ

a l a resolucion

(90)

10 Bibliograf

ia

-

'Fast and L S T T L Data', Motorola, Quinta cdicion, Primera

i mpr es i o n , EL14 y 1992

-

'Memory', Intel Corporation, E U A , 1990

-

'Embedded ? l i c r ~ p r ~ c e s s ~ r s ' , Intel Corporation, EUA, 1994

-

'16-!32-Bit Embedded Processors', Intel Corporation, EUA, 1990

-

'Embedded Controller Applications Handbook', Intel Corporation,

-

'iAPX 5 6 , 8 8 , 186 and 188 U s e r ' s Manual, Programiminq Reference'

713tel C o r p o r z l j g n , E U A , 1986

-

'Lenguaje Ensamblador Para Microcornputadoras

IBM,

Para Principiantes y A v a n t a d o s m s 3 Terry G o d f r e y , Prentice Hall, Mexico, 1992

-

' T e o r i a d e Conmutacion y Diseno Logico., Frederick .I Hill,

5 e r s l . l P P e t - e r s o n , Lirnuza Primera Edicion, Decirna Impresion, Mexico, 1992

(91)

-

mTurbo C , Reference Ilanual

,

( V e r s i o n 2.0) Bor 1 and

Tntern3tional Tnc, FIJ4, 1988

Referencias

Documento similar

Fuente de emisión secundaria que afecta a la estación: Combustión en sector residencial y comercial Distancia a la primera vía de tráfico: 3 metros (15 m de ancho)..

La campaña ha consistido en la revisión del etiquetado e instrucciones de uso de todos los ter- mómetros digitales comunicados, así como de la documentación técnica adicional de

Esta U.D.A. de Podología nace con la voluntad de dar respuesta a la necesidad de contribuir a la integración de conocimiento, actitudes y habilidades en la formación de

De la Salud de la Universidad de Málaga y comienza el primer curso de Grado en Podología, el cual ofrece una formación generalista y profesionalizadora que contempla

que hasta que llegue el tiempo en que su regia planta ; | pise el hispano suelo... que hasta que el

Comunicación presentada en las V Jornadas Interdisciplinares: Estudios de Género en el Aula: Historia, Cultura visual e Historia del Arte, Málaga, España.. ¿Qué sería de

· Emisión de informe sobre la adecuación entre las competencias y conocimientos adquiridos de acuerdo con el plan de estu- dios del título de origen, o la experiencia laboral

El contar con el financiamiento institucional a través de las cátedras ha significado para los grupos de profesores, el poder centrarse en estudios sobre áreas de interés