148.206.53.84148.206.53.84/tesiuami/uam8007.pdf · prefocio 2 o' io!':,, .:, w la...

78
, . . . " MICROPROCESADOR DE CONTROL 8031. --. r' Que para la promoción del curso: 't Seminario de Proyectos 11 8 . 1 . 1 ' '+ Presenta el alumno: i i RaCtl p p e j o Rodarte (76313278) Instittucitn en que se desarrolid: Universidad CluteKioma Metropolitana Unidad Iztapalapa , en colaboración - con la Sección de Graduados y de ~nLest i gaci ón Ci ent i + i ca , ipldustr i ai - . 4 y Tecnológica de la UPIICSA, IPN. Asesor Externo: M. en I. Miguel Lindig BOS. CSseco~ Interno: Ing. Luis Hernándet Gaona.

Upload: truongthuy

Post on 13-Oct-2018

227 views

Category:

Documents


0 download

TRANSCRIPT

,.. . . "

MICROPROCESADOR DE CONTROL 8031.

--. r'

Que pa ra l a promoción de l curso: 't

Seminario de Proyectos 11

8 . 1 . 1 ' '+

Presenta el alumno:

i i

RaCtl p p e j o Rodarte (76313278)

Instittucitn en que se d e s a r r o l i d :

Universidad CluteKioma Metropol itana

Unidad I z tapa lapa , en colaboración

- con l a Sección de Graduados y de

~nLest i gaci ón Ci ent i + i c a , ipldustr i ai - .

4

y Tecnológica de l a UPIICSA, IPN.

Asesor Externo:

M. en I. Miguel L ind ig BOS.

CSseco~ Interno:

Ing. L u i s Hernándet Gaona.

PREFOCIO 2

O ' io!':,, .:,

w

L a p r e s e n t a c j - a n d e e s t a p u b l i c a c i ó n t i e n e d o s f i n a l i d a d e s : p o r un -

lado , r e p o r t a r el p r o y e c t o , m e d i a n t e el c u a l p r e t e n d o e l g r a d o d e

- i c e n r i a t u r a e n I n g e n i e r i a B i o m é d i c a , en el a r e a d e c o n c e n t r a c i d n d e

I n s t r u m e n t a c i ó n Médica E l e c t r d n i c a y p l a n t e a n d o p a r a m i l a e s p e c i a l i d a d

i n S i s t e m a s D i g i t a l e ! s , y p o r otro l a d o , c o m p l e t a r una un idad d e d e s a r r o l l o

d i g i t a l , u t i l i z 3 b l e en control ( p a r a p r o c e s a m i e o t o s c o m p l e j o s y moderáda-

mente r á p i d o s 1, o b i e n e n el a p r e n d i z a j e d e d i s p o s i t i v o s l l a m a d o s a ser el

f u t u r o e n s i s t e m a s d e c o n t r o l . J

_ -

. . A g r a d e z c o enormemente el a p o y o b r i n d a d o ' p o - r m i m a e s t r o , el M. en I.

Yl iguel L i n d i g Eos, que ha s i d o p a r a m i , mds que m i p r ~ f e s o r m i amigo . S i n

su v a l i o s a ayuda n o h u b i e r a s i d o p o s i b l e la c u l m i n a c i ó n d e este t r a b a j o .

A m i p a d r e , l a p e r s o n a mas h o n e s t a que c o n o z c o .

3 NOTAC I ON

Las 5t.Prale5 e l é c t r i c a s se e s c r i b i r á n c o n m a y ~ i s c u l a s , según l a s i n i c i a l e s d e su f u n c i ó n e x p r e s a d a en i n g l é s , e i r á n s u b r a y a d a s cuando s e a n a c t i v a s e n c e r a ( l ó g i c a n e g a d a ) .

L a 3 e t i q u e t a s d e s o f t w a r e se e c s c r i b i r d n en minc isculas . 4En i n g l é z , s i , se t r a t a d e e t i q u e t a s i n h e r e n t e s a l h a r d w a r e ) ,

L a s instruc :c ioneLj d e ensan ib lador ce e s c r i b i r á n en mayí tsculas .

Los n ~ i m e r o s se e s c r i b e n coma t a l e s en el s is tema d e numerac ión d e c i m a l . Lor, números e n b a s e o c t a l d ebe rdn t e r m i n a r c o n una l e t r a 'IC!". Los n h e r o s en b a s ? d e numerac ibn 16 ( h e x a d e c i m a l e s ) , deben empezar con níirnero e i r s e g u i d n s d e una l e t r a "H" , y los d i g i t o s se toman d e l a s i g u i e n t e l i s t a :

0, , I , 2, 3, 4 , 5 , 6 , 7, 8, 9, A , . b , c , d , E, f=.

L a s m u l t i p l L c a c i o n e s se e x p r e s a r á n p o r med i o d e l a s t e r i s c o 'I * ' I , y l a s d i v i s i o n e s p o r med i o d e l simbolo d i a g o n a l I' / l ' , e x p r e s a n d o p r i m e r o el d i v i d e n d o y a l f i n a l e l d i v i s o r .

Lac, e s p o n e n c i a c i o n e s 5e e x p r e s a r á n como l a b a s e , s e g u i d a d e un a c e n t o c i r c u n f l e i o y en s e g u i d a el e s p o n e n t e .

___ __ . L a s ñ b r e v i F t u r a c usadas se e s c r i b e n en mayCiscu1as , . y serán l a s

i n i c i a l e s d e 105 ' v o c a b l o s i n g l e s e s .

L a s u n i d a d e s 5e e s c r i b e n d e manera usual. Los p r e f i j a s que e x p r e s a n m d l t i p l o s se e s c r i b e n c o n mayCtscula , y en m indsc t i l a si s on s u b m c i l t i p l o s , e n c e p c i d n he cha d e l a k , q u e si es minll iscula e x p r e s a * 1024 ( 2-10 1, e n maydscu la e x p r e s a * 1000 . La5 u n i d a d e s b i t (un idad de i n f o r m a c i ó n ) , n i b l e ( c u a t r o b i t s ) , b y t e ( o c h o bits ) y p a l a b r a ( en n u e s t r o c a c o t amb i en ocho b i t s 1, no SE! a b r e v i a n . L a un idad "baud" i n d i c a b i t s / s e g u n d o .

Cada e s p a c i o d e memoria es una s e c u e n c i a d e 8 b i t s , e n caso n e c e s a r i o , la d i r e c c i b n b a j a c o n t i e n e el b y t e menos s i g n i f i c a t i v o . D e n t r o d e l b y t e e l b i t 7 ( X . 7 ) es el de más p e s o (a menos q u e se e s p e c i f i q u e otra- Cosa).

L a 5 d i r e c c i o n e s se i n d i c a n p o r m e d i o d e l niimero p r e c e d i d o p o r el s i g n o a r r o b a ( " Q " ) , cuando se t r a t a d e b y t e . Los b i t s d e memoria i n t e r n a se e x p r e s a n p o r med i o d e l nC1mero d e b y t e , s e g u i d o d e un p u n t o , que p r e c e d e a l nQmero d e b i t . Tamtiien se usa este modo c o n el nombre d e l b y t e , un p u n t o y el nQmero d e l b i t . A l g u n o s b i t s t i e n e n nombre p r o p i o , p o r e j e m p l o :

OdH.2 = PSlrl.2 = OV ( s o n r e p r e s e n t a c i o n e s d e l mismo b i t ) .

RES Utt EN 4

La familia MIX-51. S o n c o m p u t a d o r a s - - a u t ó n o m a s d e a l t a e f i c i e n c i a e n un s o l o e n c a p s u l a d o , d i s e ñ a d a pa ra uso e n a p l i c a c i o n e s s o f i s t i c a d a s e n t i e m p o r e a l , t a l e s cimo i n s t r u m e n t a c i c í n , c o n t r o l i n d u s t r i a l , y d i s p o s i t i v o s p e r i f é r i c o s i n t e l i g e n t e s . P o s e e n la33 p o s i b i l i d a d e s d e h a r d w a r e , v e n t a j a s a r q u i t e c t d n i c a s , y n u e v a s i n s t r u c c i o n e s , qc ie h a c e n d e e l l a 5 , c o n t r o l a d o r e s e f e c t i v o s y e c o n d m i c o s , p a r a a p l i c a c i o n e s QUE r e q u i e r e n d e h a s t a 64k b y t e s d e memoria d e p r o g r a m a , y / o h a s t a 64k b y t e s d e memoria p a r a d a t o s ; o p u e r t o s d e e n t r a d a / c a l i d a , m a p e a d o s e n memoria.

E s t a f a m i l i a c o m p r e n d e 3 d i s p o s i t i v o s p a t a a p a t a c o m p a t i b l e s , l o que r e d u c e l o s p r o b l e m a s d e d e v a r r o l l o a u n m i n i m o , y b r i n d a n m d i : l m a f l e x i b i d a d . E l 8031 e s un CPU ( U n i d a d d e P r o c e s a m i e n t o C e n t r ; % l ) s i n i n m a r i a d e c ó d i g o ( p a r a p r o g r a m a s ) i n c l u i d a , p a r a a p l i c a c i o n e s e n que l a f l e x i b i d a d d e memoria d e p r o g r a m a e5 d e s e a b l e , o e n l a s que 3e r e q u i e r e u n a f á c i l m o d i f i c a c i ó n i n s i t u . , t a l e s como e n d i s i P r o d e sof tware y h a r d w a r e . E l 8051, que c o n t i e n e u n a memoria de código p e r m a n e n t e p r ú g r a r n - b l e d e f á b r i c a (FtCi i?) , d e 4k b y t e s , y que es el mas e c o n ó m i c a , l o que l o h a c e d e s i i b l e p a r a p r o d u c c i c j n a g r a n esca la . For Ctltimo , e l 8751 qcie t i e n e u n a memoria p e r m a n e n t e p r - o g r a i n a b l e e l & c t r i c a m e n t e , y b o r r a b l e p o r l u z u 1 t r 3 v i o l e t a . , ( E P R O M I ' d e 4k b y t e s , su u t i l i d a d 5e. e n c u e n t r a e n d e s a r r o l l o , p r o t o t i p u z , p r o d u c c i ó n a b a j a e s c a l a , y a p l i c a c i o n e s q u e r e q u i e r e n m o d i f i c a c i o n e s e s p o r á d i c a s .

En g e n e r a l , c u a n d o se h a c e r e f e r e n c i a a l a f a m i l i a MCC-Sí , solo SE, m e n c i o n a r á com.0 "el .8031".

El sistema d e desarrollo. p r e s e n t a un o s c i l a d o r de c u a r z o d e i 2MHz, l o q u e c o n d u c e a t j . e m p o s d e c i c l a d o y c r o n o m e t r a j e d e m l l l t i p l o s e n t e r o s d e m i c r o s e g u n d o c j . . , i ~ c o n u n a a l t a e s t a b i l i d a d y p r - e s i E i ó n d e p a r t e s p o r m i l l ó n , que f a c i l i t a n l o s c + l c u l o s d e t i e m p o $ ; . P r e s e n t a u n a e n t r a d a y u n a s a l i d a e n l a s que 12 b i t s d e d i r e c c i o n a m i e n t o , p e r m a n e c e n como s a l i d a s , y a sea q u e se u s e n como l ineae, d e s a l i d a , o que p e r m i t a n u n a d e c o d i f i c a c i ó n l e n t a p a r a l a s e l e c c i d n d e h a s t a 4096 d i s p o s i t i v o s c a d a u n a . La e n t r a d a O es ta l i g a d a al t e c l a d o ( que p u e d e e x p a n d i r s e h a s t a 256 t e c l a s 1, y l a s a l i d a O, r e s e r v a d a p a r a el p a n e l de e x h i b i c i d n , (16 d i g i t o s d e s i e t e s e g m e n t o s y p u n t o ( L E D ) ) , y e l c i r c u i t o d e g e n e r a c i ó n d e p a t r ó n d e bítsquoda p a r a e l t e c l a d o (scarier), y seleccic jn d e d i g i t 0 a e x h i b i r . ( E s t o h a c e que s ó l a m e n t e un d f g i t o se e n c u e n t r e p r e n d i d o ,a l a v e z ) .

C o n t i e n e una interfaeje p a r a l e l a p r o g r a m a b l e ( 8255 ) , d e h a s t a 24 l i n e a s de e n t r a d a / s a l i d a , a d e m á s d e que el p u e r t o 1 , y c i n c a l i n e a s d e c o n t r o l d e l p u e r t a 3 d e l m i c r o p r o c e s a d o r , no esten c a m p r o m e t i d a s , l o que p e r m i t e c o m u n i c a c i a n e s (serle y p a r a l e l a s ) con o t r o s 5isteqas-. E s t a s l i n e a s San l a s u n i c ñ s que no se e n c u e n t r a n p r o t e g i d a s . E l sistema c u e n t a c o n 64k b y t e 5 d e memoria d i n a m i c a , a l a m b r a d o s d e t a l m a n e r a , q u e el refresco se l l e v a a c a b o a t r a v e z de l a r e f e r e n c i a a 127 l o c a l i d a d e s c o n t i g u a s aunque estas no se usen p a r a l e c t u r a o e s c r i t u r a d e memoria. E l sistema cuenta con 8 J k b y t e s d e EPROM e n l a s que e>tio;te un p r o g r a m a m o n i t o r , que s ó l a m e n t e o c u p a 105 p r i m e r o s 2 k b y t e ~ .

b INTHODUCCION AL HARDWORE DEL 8031

Gracias a un e l e v a d o n i v e l d e i n t e g r - a c i ó n , el 8031 c o m b i n a una

U n i d a d d e P r o c e s a m i e n t o C e n t r a l ( C P U ) , 41.: bytes d e memoria n o voldtil p a r a

l e c t u r a d n i c a m e n t e ROM 1 d e memoria d e p r o g r a m a ( sólamente e n el 8751 y

el 8C)S1), 148 b y t e s , de memoria i n t e r n a de acceso a l e a t o r i o ( H A M ) , 32 l i n e a s L

d e e n t r a d a / s a l i d a ( c u a t r o p u e r t o s de 8 b i t s ) , dos c o n t a d o r e c / c r o n ó m e t r o s d e

16 b i t s , u n a e s t r u c t u r a ds i n t e r - r - u p c i o n e i a n i d a d a s d e cinco f u e n t e s y d o s

n i v e l e s d e - p r i o r i d a d , un p u e r t o se r i e p r o g r a m a b l e , c i r c u i t o de oscilador y

c i r c u i t o d e r e l o j . .

-

- - :-a

1 . 1 . - LA UNIDAD DE PROCESAMIENTO CENTRAL 7

Manipcyla o p e r a n d o s en c u a t r o e s p a c i o s d e memoria I - 64 k bytac , d e memor ia de programa ; - 64 k bytes d e memoria d e d a t o s ; - apuntador. a r d d i g o de i n c t r u c c i ó n ( P r o g r am C o u n t e r ) de 16 b i t s ; -Y 148 b y t e s d e msmoria d e a c c e s o a l e a t o r i o ( R A M ) , en los que r e s i d e l a

p i l a d e r e t o r n o s d e s u b r u t i n a s ( S t a c k ) , c u a t r o b a n c o s d e o c h o r e g i s t r o s 128 byte:; de RAM y 1 2 Y b i t s d e acceso a l e a t o r i o . ( A p é n d i c e D I . E l tamaho d e l a p i l a d e r e t o r n u r e s t d l i m i t a d a c ió lamente p o r l a c a n t i d a d d i s i p o n l b l e d e RAM i n t e r n a , y su l o c a l i z a c i ó n e s t a dada p o r el apun tado r d e p i l a ( S t a c k Po in ' c c r I ,

Todas 105 rEhg is t ra5 , excepto l o s c u a t r o b a n c o s de o c h o r e g i s t r o s y el apun tado r d e i n s t . r u c c i o n e s ( P r o g r am Counter-) , r e s i d e n en e l e s p a c i o p a r a R e g i s t r o s d e Funcione-; E s p e c i a l e s (SFR) , e i n c l u y e n r e g i s t r o c a r i t m > t i c o s , a p u n t a d o r e s , p u e r t o s d e e n t r a d a / s a l i d a , y r e g i s t r o s p a r a e l control d e i i n t e r r u p c i o n e s , c o n t a d o r e s / c r o n ó m P t r a s , y e l p u e r t a serie. En e s t a a r e a hay 128 b i t s d i r e c c i o n a t i l e s y s o n en t o t a l 20 b y t e s d e r r g i s t r o u ; . ( A p e n d i c e DI.

E l 8031 estih p r o v i s t o d e un d i r e c c i o n a m i e n t o d e c ó d i g o dt- p rog rama 70 empag inado . E x i s t e n s a l t o s c o n d i c i o n a d o s y a b s o l u t o s d e modo' r e l a t i v o ( a l PC ) , s a l t o s y l l a m a d o s a s u b r u t i n a a b s o l u t o s en p A g i n a s d e 2): b y t e s , y y s a l t o s y l l a m a d o s a s u b r u t i n a a b s o l u t o s a c u a l q u i e r l o c a l i d a d d e l e s p a c i o de memoria d e programa. E x i s t e n t amb i en s a l t o s i n d i r e c t a s r e l a t i v o s a un r e g i s t r a base d e 16 b i t s c o n un d o c p l a z a m i i n t o r e l a t i v o (OCfset) d e 8 b i t s .

Estos d i s p o s i t i v o s , post-??n c i n c o modas d e d i r e c c i o n a m i e n t o de o p e r a n d o s fuen te : r e g i s t r o , d i r e c t o , i n d i r e c t o p a r r e g i s t r o , i n m e d i a t o , e i n d i r e c t o p o r r e g i s t r o base más registro i n d i c e , Los t res p r i m e r o s pueden ~ i c a r s i - p a r a d i r e c c i o n a r o p e r a n d o s d e s t i n o . P a r a t o d a s l a 5 o p e r a c i o n e s , - - - e x c e p t o "MOV" , e l , o p e r a n d o d e s t i n o es t amb i en un o p e r a n d o fuente .

C u a l q u i e r a d e los r e g i r > t r n s d e los c u a t r o b a n c o s d e r e g i s t r o s , aueden ser a rce r i ados a t r a v e z d e d i r e c c i o n a m i e n t o s por r e g i s t r o , d i r e c t o , o i n d i r e c t o p o r registro , l o s 128 b y t s s de RAM i n t e r n a p o r d i r e c c i o n a m i e n t o directo CS i n d i r e c t o p o r reg is t ro , los r e g i s t r o s d e f u n c i o n e s e s p e c i a l e s s d l a m e n t e se pueden a c c e s a r p o r d i r e c c i o n a m i e n t o d i r e c t o . L a memor ia a x t e r n a d e d a t o s es a c c e s a d a por- d i r e c c i o n a m i e n t o i n d i r e c t o p o r registro. Y la memoria d e programa puede ser d i r e c c i o n a d a i n d i r e c t a m e n t e por r e g i s t r o Ja5@ mds r e g i s t r o i n d i c e f a c i l i t a el uso d e t a b l a s e n memoria d e d a t o s 1. -05 256 b i t s d i r e c c i o n a b l e s s on accesadoe , s o l a m e n t e e n modo d i r e c t o , s x c e p t o l a bandera d e a c a r r e o ( C a r r y ) , q u e e5 el acumulador B o o l e a n o .

se ofrecen f a c i l i d a d e s extensivas p a r a t r a n s f e r e n c i a , o p e r a c i o n e s a r i t m & t i c a s ( a d i c i á m ; s u b s t r a c c i ó n , mu1 t i p 1 i c a c i ó n , d i v i si ón é i n c r e m e n t o ) , D p e r a c i o n e s l d g i c a s and , or, xor, y c o r r i m i e n t o s 1, de b y t e . O p e r a c i o n e s i n h e r e n t e s a b i t s ( a l g e b r a B o o l e a n a ) , se pueden e j e c u t a r d i r é c t a m e n t e s o b r e q a r i a b l e s Boo l e anas . Se pueden e j e c u t a r o p e r a c i o n e s e n b i t , n i b l e ( 4 b i t s ) , 3 y t e y d o b l e b y t e .

La un idad de p r o c e s a m i e n t o c e n t r a l e s t a c o n s t i t u i d a p o r v a r i a s subun idades ( d i a g r a m a s A . l y c5.2) , d e las que l a 5 p r i n c i p a l e s se d e s c r i b e n 3 c o n t i n u a c i ó n .

8 Dccodif icadl-r d e I n s t r u c c i o n e s .

D e c a d i , f i c a l a 5 i n s t r u c c i o n e s d i p r o g r a m a , y g e n e r a sePrales i n t e r n a s J e c o n t r o l pai -a cada u n a d e l a s s u b u n i d a d e s d e l CPU, (ALU, f u e n t e s y j e s t i n o s d e d a t o s .

Apcinkador d e C ó d i g o d e P r o g r a m a ( P C )

R e g i s t r o d e 16 b i t s que i n d i c : a l a d i r e c c i ó n d e l a s i n s t r u c c i o n e s a 2 j c c u t a r , a l m a c e n a d , l s e n l a memoria de p r o g r a m a , Es m a n i p u l a d o pur l a s i n s t r u c c i o n e s d e c o n t r o l a t r a v e z d e l c o n t r o l a d o r d e p r o g r a m a .

Mcmoi-i a I n t e r n a .

Memoria de P r o g r a m a D Los d i s p o s i t i v o s 8051 , y 8752 cont ienon 4k 3 y t e s de memoria 170 v o l a t i l i n c l u i d a ( ROM y EPROM r e s p e c t i v a m e n t e ).

Memoria d e d a t o s : 128 l o c a l i d a d e s de RAM e n l a q u e se e n c i m a n l a l i l a de retorr1o.j y los c u a t r o b a n c o s d e ocho r e g i s t r o s . Hay a q u i 128 b i t s J i r e c t a m e n t a d i r e c c i o n a b l e s ( de l a d i r e c c i ó n 32 a l a 47 i n c l u s i v e 1 . Los - e g i s t r o s de f u n c i r les e s p e c i a l e s , qus e s t á n de l a d i r e c c i ó n 128 e n I d e l a n t e , i n c l u y e n r e g i s t r o s a r i t m é t i c o s (A, E , PSW) , a p u n t a d o r e s (SP, D P H , IFL ) y r e g i s t r o s que p r o v e e n u n a i n t e r f a s e d e c o m u n i c a c i ó n e n t r e el CF'U y :o5 d i s p o s i t i v o s p e r i f d r i c o s i n c l u i d o s e n el e n c a p s u l a d o , e n e5 ta area hay r a m b i e n 128 - b i t s d i r e c t a m a n t e d i r e c c i o n a b l e s . ( A p i 3 r s d i c e s D y E 1 .

U n i d a d A r i tméti c a / L ó g i c a . -_ __

C o n s t i t u i d a , p o r el A L U , y l o s r e g i s t r o s A , E, y PSW . A c e p t a d a t o s de 8 b i t s , ya r e a d e u n a o de d o s f u e n t e s , y ' g e n e r a p a l a b r a s d e d a t o s de 8 3 i t s , b a j o el c o n t r o l d e l d e c o d i f i c a d o r de i n s t r u c c i o n e s .

C e c c i o n d e C o n t r o l d e P r o g r a m a

C o n t r o l a el f l u j o d e p r o g r a m a a t r a v e z d e l c o n t a d o r d e p r o g r a m a , i a b i l i t a n d o c o n d i c ' i o n e s l d g i c a s d e t r a n s f e r e n c i a d e , c o n t r o l .

1.2.- PEHIFEHICOS INCLUIDOS EN EL CHIP 9

- F u n c i o n a l m e n t e , el 8031 c o n t i e n e un c o n t r o l a d o r d e i n t r r u p c i o n e s , ( c i n c o fuentes, y d o s n i v e l e s d e p r i o r i d a d , y c a p a c i d a d d e a n i d a m i e n t o 1, 2 c o n t a d o r e s d e 16 b i t s , q u e se pueden p r o g r amar p a r a c u e n t a s d e un d i v i s o r d e f r e c u e n c i a s entre 12, d e l o s c i l a d o r - ) , 32 l i n e a s d e e n t r a d a l s a l i d a , y una i n t e r f a s e d e comctn i cac i ones s e r i e p r o y r a m a b l e .

1. Z,, i 1. - C o n t r o l d e I n t e r r u p c i o n e s . *

Con un p e r i o d o d e l a t e n c i a de 3 a 7 m i c r o s e g u n d o s ( o s c i l a d o r a 12 MHz 1, el 8031 , r e c o n o c e 5 f u e n t e s p o s i b l e s d e i n t e r r u p c i d n : i n t e r r u p c i ó n e x t e r n a (3 , c o n t a d o r i n t e r n o 0, i n t e r r u p c i ó n e x t e r n a 1 , contador i n t e r n o 1 , y p u e r t o serie. ( C i , t a d a s d e a c u e r d o a s u p r i o r i d a d i n h e r e n t e ) . Cada una de e s t a s , t r a n s f i e r e e.1 c o n t r o l d e programa a l o c a l i d a d e s d i f e r e n t e s , q u e r e s p e c t i v a m e n t e son : O W , OSH, 1 3 , l bH , y 23H . Cada una d e e s t a s f u e n t e s puede? ser a s i g n a d a a cc ia lq i - i i c ra d e dos . ? i v e l r s d e p r i o r i d a d , y pu2d-n ser h a b i l i t a d a 3 y d e s h a b i l i t a d a s i n d i v i d u A l m e n t e , o g l o b d l m e n t e . a s o c i a d a en u n o , ( l o qu2 p e r m i t e a t e n d e r l a 5 p o r rnuestríro ( p c ! l l i n g ) ) ; Si el r e g i s t r o de h a b i l i t a c i d n d e i n t e r r u p c i o n e s a s i l o p e r m i t e , l a i n t e r r u p c i ó n - .

es r e c o n o c i d a , s a l v a n d o e n l a p i l a ( s t a c k ) l a d i r e c c i ó n e n que se suspend i t , - e l p rog rama en e j e c u c i ó n , y b r i n c a n d o a l a d i recc ión a n t e s mencionada. Cuando cimul t aneamen t e o c u r r e n v a r i a s i n t c r r u p c i o n e s , p r i m e r o 5s e j e c u t a n a q u e l l a s que se p rog ramaron c o m o - d e a l t a p r i o r i d a d . Si hay v a r i a s c o n l a misma p r i o r i d a d , e n t o n c e s se e j e c u t a n d e a c u e r d o a su p r i o r i d a d í n h e r e n t e . Las d e mayor p r i o r i d a d pueden i n t e r r u m p i r a l a s s u b r u t i n a s d e serv ic io d e menor p r i o r i d a d , p e r o nada ( e x c e p t o RST) puede i n t e r r u m p i r a a q u e l l a s a l a s ~

que se prog ram6 con a l t a p r i o r i d a d . Las i n t e r r u p c i o n e s son r e c o r d a d a s p o r m e d i o , d e s e n d o s " f l i p - f l o p s " ,

q u e son l i m p i a d o s p o r l a e j e c u c i ó n d e l c ó d i g o RETI , e x c e p t o l a s g e n e r a d a s p o r el p u e r t o serie , e n que el u s u a r i o d e b e r á b o r r a r l a s bande ra s q u e c o r r e s p o n d a n a n t e s d e abandonar l a r u t i n a d e se rv i c io , p e r o en c a s o de h a b e r 5 i d o programada como d e a l t a p r i o r i d a d , d e b e r & asimismo t e r m i n a r c o n - -

Una so l i c i tud de i n t e r r u p c i o n , e m p i e z a p o r pons r l a bande ra .

el c o d i g o RET1 , q u e apaga e l I ' f l i p - f l o p " d e a l t a p r i o r i d a d - -.

In~e r rupc iones Externas . Pueden ser prog ramadas p a r a ,

r e s p u e s t a p o r f l a n c o d e caida ( INT(O/l) d e b e p e rmanece r como O a l menos 1 m i c r o s e g u n d o , y p e rmanece r d e s p u g s en +5V cuando menos otro m i c r o s e gundo , (antes d e r e a c t i v a c i ó n ) , o p o r n i v e l ( d e b e p e rmanece r como cero s ó l a m e n t e d u r a n t e los p e r i o d o s d e o s c i l a c i r j n I O , 22, 34, o 46 y puede p e r m a n e c i r e n O d u r a n t e t o d a l a rutin3.de se r v i c i o , p e r o d e b e r á ser 1 a l ' r e g r e s o d e e s t a , so pena d e vo l ve r a c a e r en e l l a 1 .

1 . 2 . i i ) . - I n t e r f a s e d e E n t r a d a l S a l i d a .

E l 8031 , t r a t a s u 5 32 l i n e ñ s d e e / s como 32 b i t s í n d i v i d u d l m e n t e d i r e c c i o n a b l e s , o como c u a t r o p u e r t o s d e 8 b i t s . E l p u e r t o O m u l t i p l e x a l a d i r e c c i d n b a j a , ( b i t s O a 7 , s i n c r o n i z a d o s p o r el f l a n c o d e c a i d a d e l a l i n e a ALE 1 y el b u s de d a t o s , p a r a e l uso d e d i s p o s i t i v o s mapoados en

10 memoria. E l p u e r t o 2 b r i n d a s a l i d a a l o s b i t s a l t o s d e d i r e c c i o n a m i e n t o ( 8 a 1 5 1 . E l p u e r t o 3 p u e d e ser u c s d o p a r a e / 5 o p a r a l a e n t r a d a d e las i n t e r r u p c i o n e s , d e los c o n t a d o r e s , d e l r e c e p t o r s e r i e , o l a s s a l i d a s d e l t r a n s m i s o r d e l p u e r t o s e r i e y d e l a s sePrales HD y WH . La5 f u n c i o n e s a l t e r n a s d e el puerto 3 se d a n a c i t o t n á t i c a m e n t e , e n t a n t o 5ea p r o g r a m a d o p a r a e n t r a d 3 ( t o d o en u n o s 1. E l p u e r t o 1 n o t i ene o t r a f u n c i o n , que l a d e e / s. E n g e n e r a l l a 5 p a t a s e x t e r n a s r í i f i e j a n el valor i ó g i c o p r o g r a m a d o , (excepto l a s l i n e a - ; d e s a l i d a a l t e r n a s ) . S i se p r o g r a m a n en O s i e m p r e e s t d n h u n d i e n d o c o r r i e n t e , p a r a l o g r a r un cero a l a s a l i d a .

Los p u e r t o s I, 2 , y 3 , p o s e e r 1 tampones ( b u f f e r s ) b i d i r e c c i o n a l e s a l modo d e l o s d i s p o s i t . i v o s d e s a l i d a d e co lec tor a b i e r t o , a c t i v o . ; . e n cero, y con u n a r e s i s t e n c i a d e p a l a r i z a c i ó n a +5V d e 10 a 40 K o h m s 1. C u a n d o u n a p a t a se r c o n f i g u r a de salida a s n t r a d a / s a l i d a ( dt? O a 1 ) , el d i s p o s i t i v o g e n e r a c o r r i e n t e d u r a n t e dos p e r i o d o s d e o s c i l a d o r , Q n i c a m e n t e , m a n t e n i e n d o desp5té .s su v a l o r e n u n o g r a c i a 5 a l a r e s i s t e n c i a i n t e r n a ( p u l l - u p ) . P u e d e n m a n e j a r u n a c a r g a T T L . ( E x c e p t o el p u e r t o O que p u e d e m a n e j a r 2 ).

En l a s o p e r a c i o n e s que u 5 a n como d e s t i n o a 1 0 s p u e r t o s , el v a l o r en e l l o s l e i d o p a r a opzrar- , es e l Ctltimo que se e s c r i b i o , y n o l o que a r r o j e =omo l e c t u r a , que s ! r e f l e j a e l v a l o r - d e e n t r a d a ( si ha s i d o p r o g r a m a d o e n 1 ) o e l v a l o r p r o q r a m a d o , si f u é cero. E l p u > e r t o m u e s t r e a cerca de l a c a i d a d e l a l i n e s A ALE. E l p u e r t a O o p e r a d e e.;ta m a n e r a para e n t r a d a / s a l i d a , p e r o como bus t i e n e una s a l i d a ComcIin c o n tercer e s t a d o .

1.2.íii.-Contadores/Crondrnekros.

- T i e n e d o s c o n t a d o r e s que pueden conectarse l d g i c a m e n t e a un d i v i s o r e n t r e 12 d e l o s c i l a d o r , l o que 10s t r a n s f o r m a e n c r o n ó m e t r o s ( c o n u n m i c r a s s g u n d o d e p r e c i s i d n y e x a c t i t u d 1 . M i d e n i n t e r v a l o s - de t i e m p o , a m p l i t u d e s d e p u l s o 3 , c u e n t a n e v e n t o s y g e n e r a n i n t e r r u p c i o n e s p e r i ó d i c a s .

Los c o n t a d o r e s se a r r a n c a n o d e t i e n e n p o r c o n t r o l d e so.ftwar-e , y g e n e r a n r e s p u e s t a en su b a n d e r a d e s o : i c i t u d d e i n t e r r u p c i o n e s , cuando p a s a n d e u n o s a ceros ( o e l v a l o r d e a u t o c a r g a ) . C u a n d o e s t a n p r o g r a m s :os p o r c o m p u e r t a , s o l a m e n t e c u e n t a n c u a n d o I N T ( O / 1 1 es ta en u n o ( v e ñ s e el A p h d i c e G 1. Como c o n t a d o r e s p u e d e n c o n t a r p u l s o s de f r e c u e n c i a s d e h a s t a 0.5MHz . L o s m o d o s e n que se p u e d e n p r o g r a m a r son 8

Modo O Cada r n i c r o s e g u n d o i n c r e m e n t a l a c u e n t a , c u a n d o es ta i g u a l a a l a d e l o s 5 b i t s m e n o s s i g n i f i c a t i v o s d e TL( 0/1 ) , e n t o n c e s i n c r e m e n t a a T H ( O / l ) , y c u a n d o este p a s a d e u n o s a ceros, p o n e la b a n d e r a d e T F ( O / l ) . E l p r o g r a m a d e b e r a p o n e r TL( O / 1 ) e n ceros , a n t e s d e p o n e r el c o n t a d o r en m a r c h a . P u e d e d a r f r e c u e n c i a s d e 3 1 . 2 5 K H z a 1MHz para c r o n ó m e t r o .

ypdo 1 C o r i f i g u r a el c o n t a d o r e n 16 b i t s d a d e 3.906KHs a 1 MHz). Modo 2 C o n t a d o r d e 8 b i t s c o n v a l o r d e a u t o c a r g a e n TH( 011 1. Modo 3 D e s h a b i l i t a a l c o n t a d o r 1 . E l c o n t a d o r O p u e d e estar en

c u a l q L i i e r c o n f i g u r - a c i d n , p e r o n o g e n e r a i n t e r r u p c i o n e s , a u n q u e si manda pulsos a l p u e r c o ser ie .

I . Z . i v . - E l P u e r t o S e r i e .

P e r m i t e l a c:omunicacibn entre v a r i o s m i c r o p r o c e s a d o r e s , o el mane jo d e d i s p o s i t i v o s p e r - i f é r i c o s a t rave - . d e p r o t o c o l o s s i n c r o n o s , a s i n c r o n o c o i s o s i n c r ó n i c o s d e i d a y v u e l t a ( f u l l d u p l e x 1, o b i e n como un m e d i o d e e x p a n s i d n d e e / s, p o r med i a d 3 un r e g i s t r o d e c o r r i m i e n t o s . E s t a i n t e r f a s e o f rece una mayor v e l o c i d a d de t r a n s f e r - e n c i a d e d a t o s I que l a r e a l i z a d a a t r a v e z d e un programa. La f a c i l i d a d de uso e5 t a l que , una vez i n i c i a l i t a d o e l s i s t e m a ( e s c r - i t u r a e n 5 r e g i s t r o s 1, e l u s u a r i o s ó l a m e n t e t iene que leer o e s c r i b i r en e1 r e g i s t r o SBUF a

E l r e c e p t o r tiene c a p a c i d a d p a r a d o s ' d a t o s ( b u f f e r ) , p a r a e v i t a r el empalme de in f o r -mac ián , si l a r u t i n a d e s e r v i c i o t a r d a e n leer lo . En modo5 a s f n c r o n o s , prevee un rechazo de b i t d e a r r a n q u e f a l s o . P a r a e v a d i r errores p o r r u i d o en l a s e f l a l , l a i n t e r f a s e h a c e tres muestreos ( c a s i a l a m i t a d d e c a d a b i t ) , y toma a q u e l v a l o r que se haya r e p e t i d o . Las b a n d e r a s T I y R I , ( t r a n s m i s o r v a c i o y r e c e p t o r l l e n o ) , p e r m i t e n d i s c e r n i r si l a i n t e r r u p c i ó n 02.3H f u e por t r a n s m i s i ó n o p o r r e c s p c i d n . Las rutina,^ d e s e r v i c i o d e b i r á n b o r r a r T I o R I a n t e s d e r e g r c s a r , y s ó l a m e n t e 5i f u e p rog ramado como a l t a p r i o r i d a d d ebe rdn t e r m i n a r con un H E T I .

Para i n t e r f a s e c o n d i s p o s i t i v o s comune-s UART ( R e c e p t o r / Trancinisor. , .AS incrono U n i v e r s a l ) , el campo provee d e un b i t d e a r r a n q u e , o c h o o n u e v e . b i t s d e d a t o y un b i t de p a r o . Los d i s t i n t o s modos e n que se puede progamar soh :

Moda O Pa ra e x p a n s i d n d e e/s Opera c o n una f r e c u e n c i a de lMbaud, p r e s e n t e en l a p a t a '11 ( TxD) , p a r a d a r e l r e l o j - a l reg is t ro de c u r r i m i e n t o y q u e manda un p u l s o c e r c a d e l-a c a i d a d e l a l i n e a ALE , q u e s i g e a l a e j e c u c i ó n d e l a i n s t r u c c i ó n que lleno SBUF ( c on REN=O) , o q u e puso HEN en 1 ( p a r a e n t r a d a ) , a p a r t i r d e e n t o n c e s , c ada f l a n c o de c a i d a d e ALE, env - i a un i m p u l s o a TxD , b a s t a que 9 b i t s han s i d o r e c o r r i d o s , y e n t o n c e s pone en 1 l a bande ra c o r r e s p o n d i e n t e . E l d a t o d e s a l i d a 5e p r e s e n t a op r tunamen t e en l a p a t a 10 ( R x D ) , cuando es d e s a l i d a , y cuando es d e e n t r a d a , n u e s t r e a e n s e g u i d a d e l pulejc3 , e s t a l i n e a . E l p r i m e r b i t en s a l i r e5 SRUF.0 .

Modo 1 Torna s u t e m p o r i z a c i ó n d e l a bande ra d e s o b r e f l u j o d e l c o n t a d o r 1 , c a d a 3 2 d e estos s o b r e S l u j o s e f e c t u a un c o r r i m i e n t o . E l campo es d e 8 b i t s d e datos. Para modos 1 y 3, c o n c o n t a d o r en modo 1 ( a u t o c a r g a en 8 bits 1 :

En l a q u e f ( T 1 ) les 1 MHz ( si o p e r a como c r o n d m e t r o 1 o l a f r e c u e n c i a que e n t r a p o r T I ( si les, c o n t a d o r 1.

Modo 2 T r a n s m i t e 1 r e c i b c l un campo c o n 9 b i t s d e i n f o r m a c i ó n , el b a u d a j e es f u n c i ó n d e l o s c i l a d a r (enjxe 12) , el n o v e n o b i t se a l o j a - e n RE8 ( p a r a r e c e p c i ó n ) , o e n TB8 ( e n t r a n s m i s i d n ) . E s t o c o n d u c e a una f r e c u e n c i a d e t r a n s f e r e n c i a de 187Kbacid . La bandzr-a SM2 e n uno d e s h a b i l i t a la r e c e p c i ó n d e los campos p a r a l os que e l n c v e n o b i t d e d a t o s e5 cero y usado p a r a l a c omun i ca c i ón e n t r e m i c r o p r o c e s a d o r ' e s , s i e n d o el dl t imo b i t d e d a t o l a i n d i c a c i ó n d e si el campo es d i r e c c i 3 n d e m i c r o p r o c e s a d o r o si es d a t o a este e n una c o n f i g u r a c i ó n m a e s t r o 1 e s c l a v o .

Modo 3 E f e c t u a c o m u n i c a c i o n e s en campos d e 9 b i t s , SU b a u d a j e está dado como en el mado 1 , e l u s o de RE8 y de TE8 es el mismo que en el modo 2..

R a u d a j e = f ( T 1 ) / ( 32 * ( 256 - TH1 ) 1

12

Lo5 er ro re , p o z i b l e s sgn debid(-); a qu=i na hay indicación de que un

3 i t d e p a r o ha lleg3dn sin embarga , cotii~? un bit de arranque es una transición 1 a (2 , el UAHT no recibe canpos adiciunales . L a o t r a condición je error- se debe a no b o r r a r opor tunamente la bandera R I .

13 I : I . 3. - INTERFACE Exi-EtirIA

En e s t a p a r t s 5 2 d i s c u t e l a p a r t e e x t e r n a , asii como tius r e q u i s i t o s a r a el c o r r e c t o u s o d e l 8031 .

I . 5 . 1 . -RESET e J n i c i a l i z a c i ó n .

D e s e n c a d e n a d o p o r l a p a t a 9 ( RST/VFD ) p u e s t a e n +5V, c u a n d o m e n o s u r a n t e 2 m i c r u s q u n d o s . C u a n d o se d e s p i e r t a l a m a q u i n a í p o w e r - u p 1, es ta i n e a d e b e r á pt i r . - i .n i i . c? r en u n o c u 3 n d o m e n u s un m i c r o s e g u n d o d e c p u o s . E l ictema c u e n t a c o n un pequet'ío cond-dniador , que lleva a c a b o esta f u n c i d n . a s o t r a s pata-, dc?l rn i c rop roce2~dor se v a n a tercer e s t a d o 2 m i c r o s e g u n d o s e s p u h s . L a c a i d a de1 voltaje a cero , i n i c i a e n t o n c e s u n a s e c u e n c i a que e q u i e r e d e un m i c r o s e g u n d o a n t e s d e l p r o x i m o p u l s o A L E . E n t o n c e s el e s t a d o e l m i c r o p r o c e s a d o r (23 el r j iguiente : el c o n t a d o r d e p r o g r a m a (PC) es ceros v e c t o r d e RST=4OÚOH) , e l a p u n t a d o r a p i l a d e r e t o r n o s ( s t a r k ) es 07, PSW, PH, DFL, A , E, SCL7N, T M U D , TCON, T H 1 , THO, T L 1 , y TLO q u e d a n en C W O S , I P unda e n EOH, o C K W , I E q u e d a e n 6OH a OOH, l a s c u a t r o p u e r t o s e n FFH y - l a AM i n t e r n a no a l t e r a 5u5 valoreci a m a n e c e i n d a t s r m i n a d a 1, SBUF t a m b i e n uecla i n d e t e r m i n a d o . ALE Y PSEN q u e d a n en n i v e l T T L 1. , y no son gt-.rítirado.j i e n t r a s R S T sea u n a + 5 V ) .

I a 3 . i i . - ? í o d o d e B a j a P o t e n c i a de C o n s u m a ( s t a n d - b y ) .

L a RAM i n t e r n a puede ser m a n t e n i d a , mientras el res to d e l 8031 se mcuentra a p a g a d o , en c u y o caso el c o n s u m o d e p o t e n c i a cae a1 10% . D u r a n t e a o p e r a c i ó n normal l a p o t e n c i a es d e r i v a d a d e V c c , p e r o c u a n d o RST="JV , y cc < RST - 0.7V , l a memoria i n t e r n a obtiene c u p o t e n c i a d e RST .

A n t e s de l a c a i d a d e t e n s i ó n , debe g e n e r a r s e u n a i n t e r r u p c i ó n p a v a oder a5i s a l v a r e n RAM i n t e r n a l o s p a r d m e t r o s i m p o r t a n t e s , y e n v i a r la o t e n c i a d e r e s p a l d o a RST , La o p e r a c i ó n normal o c u r r e c u a n d o V c c es o t r a ez +5V. Es p a r esto que e n la memoria i n t e r n a se deberá p o n e r una b a n d e r a , or l a c u a l p r e g u n t a r an e l v e c t o r d e i n t e r r u p c i ó n O , p a r a saber si se e c u p e r a n d a t o s , o si se i n i c i a l i z a e l sistema .

1 . 3 . i i i . - O s c i l a d o r y C i r c u i t o de Re lo j .

La g e n e r a c i ó n d e r e l o j es ta c o m p r e n d i d a d e n t r o d e l e n c a p s u l a d o d e 1 1031, e x c e p t o l a r e f e r e n c i a , que p u e d e ser un c r i s t a l , o u n a f u e n t e TTL ~ x t e r n a . E x i s t e d e n t r o d e l c h i p un c i r c u i t o a n t i r r e s o n a n t e p a r a un r a n g o de r e c u e r y i n de 1.2 a 12 MHz .

La p a t a XTAL2 es la s a l i d a de un a m p l i f i c a d o r de a l t a g a n a n c i a , i i e n t r a s que l a p a t a X T A L l es la e n t r a d a . Un c r i s ta l d e cuarzo c o n e c t a d o a !stas d o s p a t a s , p r o v e e la retroñl imentacion , y corrimiento de fase - e q u e r i d a p a r a l a o s c i l a c i d n . E l r a n g o de o p e r a c i ó n , d e b e tomarse e n c u e n t a : u a n d o un r e l o j TTL c o m p a t i b l e se a p l i c a a l a f u e n t e de f r e c u e n c i a XTAL1.

í

t 4 1 . 3 . i v . - D s s c r i p c i ó n de l a 5 P a t a s E x t e r n a s .

VCS p a t a 20 P o t e n c i a l d e t i e r r a p a r a el c i r cu i to

vcc pa ta 40 E n t r e g a d e p o t e n c i a ( f 5 V +/- 1 0 % )

PUERTO 0 ( 3 2 a 39) P u e r t o d e e / s b i d i r e c c i o n a l . M c i l t i p l e x a d i r e c c i ó n (10s 8 b i t s d e minor s i g n i f i c a n c i a ) , y el bus d e d a t o s , citando se I c an d i s p o s i t i v o s mapeados e n memaria . Se usa ta inb ien p a r a l a e / s d e datas j u r a n t e l a p r o g r a m a c i o n del 8751 , y l a v e r i f i c a c i o n d e l 8751 y el 8051. 'uede mane ja r dos compuertas T T L .

PUERTO 1 ( 1 a 8 ) P u e r t o d e e/5 c a s i b i d i r e c c i o n a l . P o l a r i z a d o I +SV, y a c t i v o en c e r o . Tambien se usa p a r a el d i r e c c i o n a m i e n t o b a j o en l a ~ r o g r a m a c i d n / v e r i f i c a c i ó n . Puedp manrnr.Jar una c a r g a TTL .

PUERTO 2 (21. a 28) P u e r t o d e e/s, mane ja l a s d i r e c c i o n e s a l t a s I n el u s o d e memor ia e x t e r n a , y e n el p r o c e s o d e programaci6n/verificación. *

nane ja una carga T T L . PUERTO 3 ( 1 0 a 17) P r o t o c o l o e lec tr ico como el d e l a n t e r i o r .

T i e n e f u n c i a n e i , a l t i x n a - d e ha rdware : i n t e r r u p c i o n e s e x t e r n a s , p u e r t o serie I o n t a d o r e s , y l a 5 f u n c i o n e s RD, y WR, usadas p a r a s i n c r o n i z a r e/4 a t r a v e z j e l bus de d a t o s No t i e n e funciones e s p e c i f i c a s d u r a n t e la v e r i f i c a c i ó n / 3 rog ramac idn . P u e d e mane ja r una c a r g a TTL .

RST ( 9 ) . Ent rada d e l a sePral reset , que e5 a c t i v a en 1 , es iambien l a e n t r a d a d e r e s p a l d o p a r a el modo d e b a j a p o t e n c i a , t i e n e ' i n c l u i d a una r e s i s t e n c i a a t i e r r a , p a r a c o n un peqciePro condensado r externo, ! o g r a r un HST a l p r e n d e r l a máquina ( power - up reset 1 .

ALEIPROG (SO) S i n c r o n i z a l a d i r e c c i ó n p r e s e n t a d a e n los p u e r t o s 1 y 2 , R e c i v e el p u l s o d e p r o g r a m a c i ó n p a r a el 8751 .

PSEN (29) S i n c r o n i z a l a l e c t u r a d e c ó d i g o l e i d o , p a r a su z j e c u c i ó n .

EA/Vdd (31) Cuando e s t a e n uno, l a l e c t u r a de c b d i g o se h a c e d e nemoria i n t e r n a , cuando es cero,--kodo el c ó d i g o l e i d o es d e memoria e x t e r n a . rarnbien rec ive los 21 V usados d u r a n t e l a p r o g r a m a c i o n .

XTALl (la) E n t r a d a d e l a m p l i f i c a d o r d e a l t a g a n a n c i a . Debe l l e v a r un c o n d e n s a d o r d e 20 pF c o n e c t a d a a tierra .

XTAL2 ( 1 9 ) S a l i d a del a m p l i f i c a d o r del o s c i l a d o r . Solo se - @ q u i e r e si se usa un cristal ' e

I . . . . . _ , . _ _ _ . . _ . _ I . _ . _. . . . . _ _ .._. , ,_ -,. ... - . ... -I ~

I " .- .'

CAPITULO I 1 INTRODUCCION AL SOFTWARE DEL 8(531

Bás i c amen t e , el 8031 es una máquina n o von Newman , l o que i m p l i c a una s e p a r a c i ó n d e memor ias d e c ó d i g o y dP d a t o s , s i n embargo e l s i s t e m a d e d e s a r r o l l o c o n j u n t a l a s l i n e a s d e control p a r a p r e s e n t a r este modo como una o p c i ó n d e l u s u a r i o . Su conjunto d e i n s t r u c c i o n e s e s t a p ensado p a r a b r i n d a r e x p a n c i d n d e d i s p o s i t i v o s i n c l u i d o s , y o p t i m i i a r e f i c i e n c i a en tamaPIo d e memoria d e código , y v e l o c i d a d d e e jecuc ión . ( E l 58% d e l a s i n s t r u c c i o n e s se e j e c u t a n en un m i c r o s e y u n d a , , e 1 40% en d o s , y el 2% e n c u a t r o ) ; e l 44X son d e un b y t e , 40 7! d e d o s , y el resto de tres b y t e s ) .

Preszríta l a nov edad d-1 mane jo Booleano ( en un 5010 b i t ) , p a r a l a s que l a bandera dEi a c a r r e a ( carry ) f u n g e como acumulador .

Posee nuevacj i n s t r u c c i o n e s , como c o r r i m i e n t o d e c u a t r o b i t 5 (SWAP), i n t e r c a m b i o s d e r e q i s t r o y acumuladcr , . i n t e r c a m b i o p o r n i b l e s ( 4 b i t s ) , a j u r J t e a BCD ( d e c i m a l c o d i f i c a d o e n b i n a r i o ) , y m u l t i p l i c a c i ó n y d i v i s i ó n .

Puede g e n e r a r s e c d d i g o r e 1 o c : a l i i a b l e a b s o l u t a m e n t e , r e l o c a l i z a b l e en . p a g i n a s d e 2k by t e s , o di- p o s i c i ó n a b s o l u t a ( n o r e l o c a l i z a b l e ) .

L a p i l a d e re tornos ( s t a c k 1 5e e n c u e n t r a en memoria i n t e r n a y 3ermite h a s t a 128 a n i d a m i e n t o s , y puede 5er usada coma memoria secuenc ia l , 3 a t r a v e 2 d e c u a l q u i e r apuntador .

II.1.-ORGANIZACION DE MEMORIA

Coma y a se d i j o a n t e s , el 8031 maneja tree, e s p a c i o s d e memor ia , . \e? aqu i 5e d e t a l l a n : -

a).-Memoria de Programa.- En el 8751 y el 805110s p r i m e r o s 4 k b y t e s , =Están i n c l u i d o s e n e l e n c a p s u l a d o . La l i n e a EA c o n t r o l a el a c c e s o e x t e r n o P d i c h a memoria (EA=ú memoria c o n t e n i d a , EA=i memoria e x t e r n a ) , despu5s d e La d i r e c c i ó n 4095 , ' t o d o e l cóo se toma d e l a memoria e x t e r n a . E l t i e m p o de e j e c u c i ó n esta d a d o dn i ca rnen te p o r l a f r e c u e n c i a d e r e f e r e n c i a .

Ciertas l o c a l i d a d e s de l a memoria d e c ó d i g o e s t a n r e s e r v a d a s : d e l a 3QOOH a l a Q002H p a r a el prog rama de i n i c i a l i z a c i d n ( vec tor d e RST) , d e l a 3Oc73H a l a 003AH p a r a los c i n c o vectores de i n t e r r u p c i ó n ( c a d a uno , an ocho 3 y t e s ) . E l sistema c u e n t a c o n l á k b y t e s d e memor ia p e rmanen t e (EFROP , y los ? e s t a n t e s 48k byte-, 5e e j e c u t a n d e s d e RAM .

b ) .-Memoria E x t e r n a d e Datos.- T i e n e c a p a c i d a d p a r a mane ja r h a s t a 54k b y t e s d e memoria e x t e r n a , a u t o m á t i c a m e n t e a c c e s a d o s p o r med io d e l a s i n s t r u c c i o n e s M O V X , c o n su5 l i n e a i ; d e s i n c r o n i a en e l p u e r t o 3 (RD y WR). 31 sistema puede mane ja r h a s t a 8k p u e r t o s d e ocho b i t s de e n t r a d a y 1 0 d e s a l i d a g r a c i a s a l r e s g u a r d o d e l os 12 b i t a - m e n o s s i g n i f i c a t i v o s , que pueden s e r u sados p a r a una d e c o d i f i c a c i ó n e x t e r n a l e n t a , o como d o s p u e r t o s d e s a l i d a d e 12 b i t s . La l i n e a T í sirve p a r a s e l e c c i o n a r el modo d e e/s , O

3 i e n una C O n f i g u r a c i d n Von Newman con 6 4 k b y t e s d e memoria . c).-Memoria de Datos Interna.- E5 l a ma5 f l e x i b l e d e l a s 3 areas d e

nemor ia , es d i v i d i d a e n 128 b y t e s de RAM, y un e s p a c i o d e d i r e c c i o n a m i e n t o ie 20 b y t e s P a r a l os registros d e f u n c i o n e s e s p e c i a l e s ( S F R ) , l o c a l i z a d o de la d i r e c c i d n 80H en a d e l a n t e , l o que p e r m i t e a c c e s a r l o s como memoria , a i r a v e z de d i r e c c i o n a m i e n t o d i r e c t o , además 128 b i t s s o n d i r e c c i o n a b l e s como

: a l e s , y r e s i d e n en l a s l o c a l i d a d e s m u l t i p l o s d e 8 . En l a s p r i m e r a s 128 l o c a l i d a d e s hay c u a t r o b a n c o s d e 8 r e g i s t r o s

s e l e c c i o n a b l e s p o r PSW , 128 b i t s d i r e c c i o n a b l e c ( b y t e s 20H a 30H). La p i l a J e r e t o r n o s ( s t a c k p o i n t e r ) , ba jo el c o n t r o l d e un apuntador (SP) , que I u ede adecnas set- usaido p a r a el p a s o d e a rgumentos a s u b r u t i n a , o c o m o a r e a de d a t o s p a r a r e s g u a r d o , c u a l q u i e r b y t e d e este e s p a c i o d e memor ia puede s e r empujado a l a p i l a , o tomado de e l l a ( i n s t r u c c i o n s s PUSH y POP 1 .

II.?.-MODOS DE DIRECCIONAMIENTO.

E x i s t e n c inco modos d e d i r e c c i o n a m i e n t o p a r a o p e r a n d o s f u e n t e d e l a s c u a l e s soim-~entf! t r es puedsn use i rse p a r a d i r e c c i o n a r d e s t i n o , P u e s t o quc hay i n s t r u c c i o n z s O (NOF ) , 1, 2 , 3, o 4 o p e r a n d o s , es tos c i n c a modus da d i r e c c i o n a m i e n t o se combinan p a r a d a r 103 21 modos d i f e r e n t e s d e l 8031.

L a m a y o r i a d e las i n s t r u c c i o n e s t i e n r ' n un campo " d e s t i n o , fuF -n t e " , que e s p e c i f i c a e l t i p o d e d a t o , los mg t odos d e d i r e c c i o n a m i e n t o , y l o = z iprrandos i n v o l u c r a d o s . Con e x c e p c i d n de 105 P1OV , el o p e r a n d o d e s t i n o e :ainbien un o p e r a n d o f u e n t e . La m a y a r i a de l a s o p e r a c i o n e s usan opsrandob i b i c a d o s en l a memor ia i n t e r n a d e d a t o s . La s e l e c c i ó n d e memoria de 3rograma o memor ia e x t e r n a d e d a t o s es d e t e r m i n a d a por e1 mnernonica.

-Por r e g i s t r o . - P e r m i t e a c c e s a r a ocho registros d e l banco s e l e c c i o n a d o lor los b i t s SHO y S R 1 d e l PSW . Además e x i s t e n los r e g i s t r o s : C ( b i t ) , A, 3 b y t e 1 , AB ( dos b y t e s 1 , y DTPTR . ( d o b l e b y t e 1 .

-Directo.- D i r e c c i o n a c u a l q u i e r b y t e d e menioria d e d a t o s i n t e r n a , s i empre y cuando se e n c u e n t r e d e f i n i d o .

- I n d i r e c t o p o r R e g i s t r o . - Usando a RO, Rl ( d e l banco s e l e c c i o n a d o ) , SP, 3 QTPTR como r e g i s t i - o i n d i c e , puede a c c e s a r memor ia i n t e r n a d e d a t o s o nemor ia e x t e r n a de. d a t o s ( excepto SP 1 .

-1ndei:ado.- P a r a l e c t u r a d e c ó d i g o Cmicamente , el registro b a s e puede ser P C o DTPTR , m i e n t r a s que el acumulador es e l que da e1 c o r r i m i e n t o d e iase . E s t e modo es d e g r a n u t i l i d a d p a r a c o n v e r s i ó n p o r t a b l a , r e s i d e n t e ?n memoria d e cbd i g r i .

- Inmed ia to . - P o r n e d i o d e c o n s t a n t e s que son p a r t e del programa.

Los d i f e r e n t e s modos de d i r e c c i o n a m i z n t o s o n 1

II.3.-MANIPULACION DE DATOS

E l 8631 EYC, e f i c i e n t e t a n t o e n p r o c e s a m i e n t o n u m I r i c o , como en i o n t r o l Ademas d e las c a r ñ c t e r i s t i c a s ya d e o s c r i t a s , t i e n e c a p a c i d a d p a r a : r a n s f e r e n c i a d e d a t o s , o p e r a c i ó n lógica , p r o c e s a m i e n t o a r i t m é t i c o y : o n t r o l en t i e m p o r e a l . E j e c u t a ope rac i ones , . en b i t n i b l e , b y t e , y d o b l e ~ y t e .

Procesadw Booleano.- Aunque es una p a r t e i n t e g r a l d e l a w q u i t e c t u r a d e l 8031 , puede ser c o n s i d e r a d o un p r o c e s a d o r de b i t i n d e p e n d i e n t e , ya q u e t i e n e s u p r o p i o c o n j u n t o de i n s t r u c c i o n e s , su p r o p i o acumulador , y SU p r o p i a memor ia y e / s .

S o b r e c u a l q u i e r b i t d i r e c c i o n a b l e se pueden e j e c u t a r l a s s i g u i e n t e s i n s t r u c c i o n e s # e n c i e n d e ( SET 1, apaga ( CLR ) , complementa , b r i n c a si e s t a 2 r e n d i d o , b r i n c a si e 5 t a apagado , b r i n c a si e s t a p r e n d i d o y a p a g a l o , mueve

.. ..C

17 j e s d - / h a c i a e l c a r r y . E n t r e c u a l e s q u i e r a d i 1 0 3 b i t s d i r e c c i o n a b l e s (o su : o m p l e m e n t o ) , y e l c a r r y , se p u e d m e j e c u t a r la - ; o p e r a c i o n e s l ó g i c a s " Y " , I o I' , c o n el r e s u l t a d o a r r o j a d o e n el t a r r y .

L a s i n s t r u c c : i o n e i , m e n c i o n a d a s p e r m i t e n el c o n t r o l d e d i s p o s i t i v o :on l o n g i t u d i s d e p r o g r a m a y v e l n c i d a d i s ó p t i m a c , t a m b i e n p r o v e e n u n a narir3r-a d e c o n v e r t i a - e c u a c i o n e c , l ó g i c a s , d i r e c t a m e n t e a c ó d i g o . F u n c i o n e s .ógico-cambinator ias c o m p l e j a s pueden ser r e s u e l t a s s i n g r a n d e s m o v i m i e n t o s je d a t o s , e n m a s c a r a m i e n t o s d e b i t 5 5 , y a r b o l e s d e p r u e b a y b r i n c a .

Operx iones de T r a n s f u r e n c i a di? Datos.- El m a n e j o d e t a b l a s ?n la mcmoria d e c d d i g o , e s u n a f a c i l i d a d * q ~ i e merce 5 ~ r m e n c i o n a d a , se i j e c c i t an a t r a v e 2 d e l a s i n s t r u c c i o n e s MOVC, en l a que un r e g i s t r o d e d o b l e 3alahr-a (DTFTH, o P C i , marca l a b a s . > , y e l a c ~ i m u l a d o r i n d i c r . el c o r r i m i e n t o - e l a t t v o ( o f f r i e i z ) .

La memoria e x t e r n a d e d a t o s p u e d e ser a c c e s a d a a t r a v e z de RC) y R l ( d e n t r o d e p a g i n a s d e 256 b y t e s 1 o c o n DTPTR como a p u n t a d S r , p a r a i l c a n r a r c u a l q u i e r l o c a l i d a d d e n t r o d c l a memoria e:iternñ d e d a t o s .

Los m o v i m i e n t o s son altarn;?nte o r t o g o n a l e z , p u d i e n d o e f c r t c i a r ~ t 7 c m : o d u s los m o d o s de - d i r e c c i o n a m i r n t a p3ra l a f u e n t e . DG p a r t i c t i l a r i n t e r e c ;on los m o v i m i e n t o s d e IRAM a IRAM (nzrnoria i n t e r n a d e d a t o s ) . E l DTPTR 5.3 i u e d e c a r g a r e o n un v a l o r i n m e d i a t o de d o b l e b y t e . T a m b i e n h a y m o v i m i e n t o 5 ie b i t .

El a c u m u l a d o r - se p u e d e i n t e r c a m b i a r con c u a l q u i e r b y t e d e memoria n t e r n a . E l n i b l e m e n o s s i g n i f i c a t i v o del a c u m u l a d o r se puede p e r t n u t a r ,

3sirnismo , can cuo1qciier n i b l e menos s i g n i f i c a t i v o . dr3 IRAM . 11.4.-OPERACtONES DEFINIDAS

--A _- O p z i r a c i o n e s Ldgicac; .- Sil e n c u e n t r a n d e f i n i d a s l a s 2 p c r a c i ones "Y " , "O'! y "O e x c l u s i v o " e n t r e c u a l q u i e r l o c a l i d a d d e IRAM, c o n 2tra l o c a l i d a d IRAN , o c o n un v a l o r i n m e d i a t o . A d i m a s se d e f i n e n l a s 2 p e r a c i o n e c : R o t a c i o n e s ( a l a derecha o a l a i z q u i e r d a , a t r a v e z d e l c a r r y , 3 s i n e l ) , rotación1 d e n i b l e s , b o r r a d o (CLFO, y c o m p l e m e n t o d e l a c u m u l a d o r . J i n g u n a d e l a s o p e r a c i o n e s l ó g i c a 5 ( e x c e p t o l a 5 e j e c u t a d a s s o b r e PSW o s o b r e e l c a r r y ) a f e c t a n l a s b a n d e r a s d e e s t a d o de p r o g r a m a c i ó n (PSW). ( S i n c o n t a r P ( p a r i d a d ) , que s i e m p r e d e p e n d e d e l va lor e n A .

Operaciones Aritméticas.- M a n i p u l a n ~ l m e r o s s i n s i g n o d e i n b y t e . se d e f i n e n l a s o p e r a c i o n e s : a d i c i ó n ( c o n o s i n acarreo) , res ta (con acarreo) , i n c r e m e n t o , d e c r e m e n t o , c o m p a r a c i ó n , d e c r e m e n t o y c o n t r a s t e s o n t r a cero m u l t i p l i c a c i ó n , y d i v i s i ó n . ( D e l a5 cuales 5 0 1 0 los i n c r e m e n t o s d e c r e m e n t o s no a l t e r a n l a s b a n d e r a s d e estado d e p r o g r a m a ) .

Hay tres o p e r a c i o n e s ari tméticas q u e o p e r a n e x c l s s l v a m e n t e sobre el a c u m u l a d o r 1 el a j u s t e d e c i m a l p a r a la suma (DAG) , y d o s c o n d i c i o n e s d e 3 r u e b a y b r i n c a CJZ y J N Z ) .

E l DTPTR p u e d e ser i n c r e m e n t a d o en 16 b i t s . La m u l t i p l i c a c i ó n o p e r a l o s reg is t ros A y B , a r r o j a n d o e n A l o s 8

D i t s m e n o s s i g n i f i c t i v o c d e l p r o d u c t o y en E l o s restantes , La d i v í c i o n t a m b i e n u5a E s t 0 5 d o s r e g i s t r o s , el c o c i e n t e ' q u e d a en A y el r e s i d u o e n E.

i n I I .S.-TRANCFEI.IENCIAS DE CONTROL

E l 8031 t i e n e un esquema de memoria no e m p a g i n a d o , l o que p e r m i t e l a e l a b o r i c i ó n de c ó d i g o r e l o c a l i z a b l e , y m a d i f i c a c i o n e c m e n o r e s ' p a r a i n s e r c i ó n y borrado d e c c i d i g o .

Cc71tu:s y l l a m a d o s a s c t b r u t i n a s e s t a n d e f i n i d o s p a r a d i r i g i r el c o n t r o l d e p r o g r a m a a c u a l e s q u i e r a de 1 0 5 ; 64C: by ' te í i d e memoria d e c ó d i g o , aunque t a r n b i e n e x i s t e n b r i n c o s y l l a m a d a s d c 1 1 b i t s ( p a g i n a s d e 2 k byte 1 p a r a o p t i m i z a r l o n g i t u d di- c ó d i g o y c o m p a t i b i l i d a d c o n l a f a m i l i a MCS-38. En l a s l l a m a d a s a s i . t b r u t i n a , y+ en l a s i n t e r r u p c i o n e s el PSW n o se sa lva .

E x i s t e n b r i n c o s r e l a t i v o s a l PC, c o n d i c i o n a d o s o no , q u e o p t i m i , z a n l a l o n g i t u d d e c ó d i g o , y periniteri e l a h o r a c i ó n d e c d d i g o r e l o c a l i z a b l e .

L a t r a n s i e í e n c i a d i c o n t r o l i n d i r e c t a p o r r e g i s t r o p e r m i t e c o m p u t a r b r i n c o s can DTPTR como v a l o r b a < s a l y A como corr imiento, q u e p e r m i t e n r a m i f i c a c i o n e s a n ramas.

11.6.-DECCHIPCION DE MICROINSTRUCCIONES

E5 un c o n j u n t o d e cc jd igos que d i r i g e n l a ejecución de o p e r a c i n e s . La c o m p r e n s i o n de es tos c t j d i g o s n o d e p e n d e de l o s c ó d i g o s que l a maqct ina

r e r o n o c t - , sino d e l l e n g c t a g e s i m b o i i c o que se usa p a r a d e s c r i b i r d i c h o s c ó d i g o s . E l e n s a m b l a d o r 80.31 d e f i n e c u a r e n t a y d o s m n e m o n i c o s , p a r a e c p e c i f l c a r 33 f u n c i o n e s . C o m b i n a n d o u n i v o c a m i n t e f u s n t e y d e s t i n o son p o s i b l e . ; i l l i n s t r i . \ c c i o n e c , d i f e r s n t e s . .

La s i n t a , < : i s d e l a s i n s t r u c c i o n s s en l e n g u a j e e n s a m b l a d a r es: e t i q u e t a - OPERnCION - d e s t i n o f u e n t e - ; En d i c h a +ormato , 'I - i n d i c a c u a l q u i e r nQmero d e e s p a c i o s y / o

t a b u l a d o r e s , pero al menos uno. L a e t i q u e t a puede ser c u a i q u i e r c o m b i n a c i d n de l e t ras y nCtm?ros,

p e r o n o dehe e m p e z a r c o n nomero . T a m b i e n p u e d e n ~ i ~ . , r c i e l o s carac terea :

l a s e t i q u e t a s d e b e n 5er u n i c a 5 en un p r o g r a m a . II - I1 , #I $ I 1 , I1 I I

L a OPEHACION es u n o d e 1 0 s 4 2 m n e m o n i c o c . E l d e s t i n o e5 u n a i n d i c a c i d n d e l modo d e d i r e c c i o n a m i e n t o que

i n d i c a e l p r i m e r o p e r a n d o , y e n que l u g a r d e b e r a d e j a r el r e s u l t a d o d e I o p e r d c i d n a e j e c u t . a r ( e x c e p t o e n NOP , RET y R E T I , que n o u s a n a r g u m e n t o s , PUSH, e n l a que e1 c i n i c o a r g u m e n t o i n d i c a la l o c a l i d a d d e IRAM q u e se va a e m p u j a r a l a p i l a ( s t a c k ) , la5 t r a n s f e r e n c i a s d e c o n t r o l i n c o n d i c i o n a d a s , y l o s s a l t o s J C , JNC , JB , JNB , J Z , JNZ , y CJNE ) .

La f u e n t e , q u e i n d i c a el d i r e c c i o n a m i e n t o d e l o t r o o p e r a n d o ( c u a n d o este es necesar io ) . S i ce t r a t a d e un d a t p - i n m e d i a t o d e b e r a i r p r e c e d i d o d e " # " , ci es u n a l o c a l i d a d d e IRAM 5e p o n e e l nJmero sola, y si e5 i n d i r e c t o , d e b e r a i r p r e c e d i d o por l ' @ ' l . D e s p u c c de l a f u e n t e p u e d e i r c u a l q u i e r ndmero d e e s p a c i o s y 1 0 t a b u l a d o r e s .

€ 1 c o m e n t a r i o e5 o p c i o n a l , si no se i n c l u y e , la l i n e a t e r m i n a con "RETURN" Si se i n c l u y e , d e b e r a i r p r e c e d i d o de 1 8 ; i b , y n o hay r e s t r i c c i d n a l g u n a acerca d e los caracteres que l a c o m p o n g a n , de c u a l q u i e r m a n e r a , l a l i n e a se t e r m i n a con un "RETURN".

Las d i f e r e n t e s i n í t r u c c i o n e s se e n l i s t a n e n el a p é n d i c e D . A

19 CAP I TUL.0 I I I EL SIS'iEMR DE DESARSOLLO

E s t a d e s c r i p c i ó n , d i v i d i d a en d o s p a r t e s , puede p a r e c e r r e p e t i t i v a , p e r o d e b i d o a l a e s t r e c h a r e l a c i ó n e x i s t e n t e e n t r e h a r d w a r e y software a e s t e n i v e l , r e s u l t a c o n v e n i e n t e .

Se d e s c r i b e n t a n t o 10s d i s p o s i t i v o s f f s i c o s , como l a s sePrales o r o d u c i d a s . E n el a p & n d i c e A se e n c u e n t r a e l d i a g r a m a d e t6ernpaL; d e l a s D r i n c i p ñ l e s l i n s a s .

Con r e s p e c t c t a l software , se d a n e x p l i c a c i o n e s y a n o t a c i o n e s p a r a 21 LISO d-e l o s p r o g r a m a s e n firme c o n t e n i d o s e n l a EPROM , p r i m e r o s 4kbytz-3. E l a p é n d i c e C cant ime el listado d e este c d d i g o . E l u s c r o r i o puede d i s p o n e r je l os 4 k b y t - 2 - f i n a l e s d n EPROM , a s i coma d e t o d a l a DRAM, d e un p u e r t o de e n t r a d a p a r a l e l a , un p u e r t a d e s a l i d a p a r a l e l a , y d e l 8255 ( dos p u e r t o s J a r a l e l o s b i d i r e c c i o n a l e s c o n " h a n d - s h a k i n g ' I , o tres p u e r t o s p a r a l e l o s de o n t r a d a / s a l i d a 1 .

20 I I I . 1 . - DECCF: I PC I ON DEL HARDWARE

E l sistem3 c o n s t a d e u n a c o n f i g u r a c i ó n n o v o n Newman , es to e5 , e:: iste d i f e r e n c i a e n t r z l a memoria d e p r o g r a m a y l a d e d a t o s , e n l a que se e n c u p n t r a n u b i c a d o s l o s p u P r t a S d e e n t r a d a s a l i d a . S i n e m b a r g o , a t r a v e 2 d e l a prograin-3r_it)ri d e T1 (PZ.5) en cero , se p u e d e l o g r a r una c o n f i g u r a c i ó n d e v o n Newman, c o n 641.byte2 d e Rf iX y s i n p u e r t o s de entrada s a l i d a . E s i s t ? n d o s p u e r t o s d e s a l i d a : u n o p a r a e l e x h i b i d o r y o t ro p a r a el ~ i s ~ i a r i o . T < - ; b i & n hay doc, p u s r - t o s d ~ 7 e n t r a d a : una p a r a el t e c l a d o y o t r o p a r a e l ~ ~ s u ~ i - i o . E s t o s p u s r t o c , d e uEu3rio p e r m i t e n c c m g e l a r y ofrecer como s a l i d a d o s auses d e d i r e c c i o n r x i d e 12 b i t s . I n c l u y e t a m b i 8 n un a d a p t a d o r d e i n t e r f a s s p a r a l e l a (8153), can 24 l i n e a 5 d e e n t r a d a s a l i d a , qcis a s u v e z c o n g e l a n l a s C l l t i m a s d i r e c c i o n d s (12 b i t s ) d e e n t r a d a y d e s a l i d a . Las l i n e a s d e l p u e r t o 1 Pf.3, P1.3, P l . 4 , P1.5, Pl.6, y P1.7, a s i como lar; l inear ; INTO, TO e INTl d e l p u e r t o 3 , no SE? e n c u e n t r a n comprometidas . La.; l i n e a s P1.0, P l . i , R s D , y T x D se usan p a r a ~ ? 1 p r o t o c o l o d e c o m u n i c a c i ó n ser ie . A p e s a r d e l o d i c h o SP p u n d i n rlescatar. t o d - . s esa.; l i n e a ? , e s c o p t o T1 ( P3.5 1 .

I1 I , , 1 . i 1. - Memoria E x t e r n a .

L a rnernor-ia no v o l a t i l (8C,bytes) d s l a s que el sistema s b l a m - . n t e u5a 105 p r i m e r o s 4kbytes , c o n s t a d e u n a memoria p e r m a n e n t e d e ~ C C C - C > O ñ l e ñ t o r i o b o r r a b l e p o r l u z d l t r a v i o l e t a ( EPROM 1 , 2764 de 20(1 n s d e acceso , y u n b u f f e r , que p e r m i t e cortar l a s sdfales a t i e m p o , p u e s l a EPROM es d e m a s i a d o l e n t a p a r a el sistema. L a s e l e c c i ó n de d a t o d e l 2764, esta c o n d i c - n a d a por el e s t a d o d e l a s l i n e a s PSEN(0) , R15(0) , A 1 4 ( 0 ) , A 1 3 ( 0 ) y T1 .1 . E s t a s e l e c c i ó n es p o r OE , m i e n t r a s que CE s i e m p r e e s t a e n cero . ( S i yipre e s t a

L a memoria v u l a t i l c o n s t a d e 64 k b y t e s d e memoria d i n á m i c a d e á c c e ~ o a l e a t o r i o < DRAM ) , que es s e l e c c i o n a b i e como c ó d i g o a p a r t i r d e l a d i r e c c i ó n 20OOH s i e m p r t l , o en su t o t a l i d a d si T1 es cero . Como memoria d e d a t o s se puede accesar s i e m p r e e n t r e l a s l o c a l i d a d e s BOOOH y 3FFFH, y e n su t o t a l i d a d si T1 e s cero .

E l c i r c u i t o consta de d o s m u l t i p l e x o r e s 74LC154 y ocho 2164 . E s t a a l a m b r a d o d e t a l m a n e r a que ALE es RAS ( e s t o es , s i e m p r e s u c e d e si RST es cero 1 , y s i e m p r e p r e s e n t a l a d i r e c c i d n ba ja e n l a t r a n s i c i ó n d e c a i d a d e CAS, l o que p e r m i t e el refresco d e memaria m e d i a n t e la s i m p l e referencia de 128 l o c a l i d a d e s c o n t i - u a s , s i n i m p o r t a r q u e 5ean o no lecturas o e s c r i t u r a s en DRAM . La g e n e r a c i - 7 de CAS se l l e v a a c a b o , ( c u a n d o el estado d e T i y l a s d i r e c c i o n e s l o p t l ; ; r i i t a n 1 , como e f e c t o d e RD, WH o PSEN. L a f u n c i ó n 1E se l levq.--a c a b o como c o n s e c u e n c i a a l a e j e c u c i ó n e n memoria d e WR.

s e l e c c i o n a d o el d i s p o s i t i v o ) . _ _ -

21 I I I . l . i i ) . - E n t r a d a / S a l i d a

E l p ~ ~ , . z r t o u b i c a d o e n t r e lac; l o c a l i d a d e s 4C..jOH \r 7FFFH , d a s e r v i c i o 1 c i r c u i t o de e x h i b i c i ó n y teclscSo , y corista d e :

- Un c u n t a d o r - a ! 3 i n c r o n o d e 4 b i t s q u e gpnera l a s s e i ' i a l e s d e i r e c c i o n a m i z n t o de r a s t r e o . E s i n c r e i n : - n t a d 3 p o r l a . l i n z . 3 O0 , y su e n t r a d a E CLR e s t a c o n e c t a d a a l a i n v e r - s i ó r - i d e HST , p a r a qu2 d e s p i e r t e y se n i c i a l i c e en cero5 .

- Un selector- di? 4 a 16 l i n e a s que tcina su5 d a t o s d o l a s a l i d a d e l . I intadcir , p a r a p o n e r sólarr.?nte u n a d ? SL!S 16 l i n e a s de s a l i d a err cero . De s ta i , l a s p r i m e r a s ocho se usan t a n t o par-a el ras t reo d e t e c l a d o , como p a r a a s e l e c c i d n d e cátodcj d o l d i g i t o a e x h i b i r - , y lac, C t l t i m a c ; ocho ' s d l a m - n t e dr-a f u n c i ó r c d r e i t h i b i c i d n . Sus c o m p u z r t a s d e s e l e c c i ó n es tan c o n t i c t i ? d 3 s a a i n v e r s i ó n d e RST p a r a e v i t a r l a e x h i b i c i ó n d u r a n t e d i c h o estado d e l istema .

- Un d e c o d i f i c a d o r d e 8 i n t e r r u p c i o n e s , que toma s u 5 d a t o s de l a s a l i d a . 3 c o l u m n a de l a m a t r i z del t e c l a d o d e m e m b r a n a , p a r a así d e r n d i f i c a r e1 Sdigo d e e j e c u c i ó n .

- Un l a t c h d e e n t r a d a p a r a c o n g e l a r l o s d a t o s a e x h i b i r . - Un b u f f c r - d r i v e r p a r a a r b i t r a r los d a t o s l e i d o s dt31 c i r c u i t o .

I 1 I . 1. i i i 1. - G e n e r a c i ó n ' d e c o n t r o l - .

L a s l i r i a a s d e c o n t r o l e n t r e g s 3 s s p o r e l m i c r o p r c c i s 3 d u r ( RD , blFi , 3EPJ , A L E , y T l ) , son d e c o d i f i c a d a s , junto con l a s d i r e c c i o n e s a l t a s p a r a - a l i z a r l a s fuciones de c o n t r o l d e l sistema I

ALE.-Da l u g a r a lac, l i n e a s ; d e se lecc idn d e m e m o r i a / d a t o , s e l e c c i ó n 2 e x h i b i c i ó n / l e c t u r a , y s e l e c c i ó n d e ren1g3rl d e DRAM ( RAS 1 .

P S E N . - O c a c i o n a el acceso a l bits del c ó d i g o a e j e c u t a r , y que d e z u e r d o a l e s t a d o de T1 , A13 , A14 , y A l 3 d i s c i e r n e si es de DRAM o d e %OM . Segthn e l mapa d e memoria d e s c r i t o en el a p é n d i c e D 1 .

T1.-Permite l a o p c i ó n d e e s q u e m a von-Newman , o d e e n t r a d a / s a l i d a 3peada e n memoria .

H D . - G e n e r a CAS p a r a l a DRAM, IO p a r a e l t e c l a d o , I 1 p a r a l a l e c t u r a 2 p u e r t o de u s u a r i o , o I2 p a r a l e c t u r a d e l 8255 , segilin e l e s t a d o d e r r e c c i o n a m í e n t o alto .

W R . - G e n e r a I n seflal WE p a r a l a DRAM, un r e t a r d o d e e l l a g e n e r a CAS, b i e n g e n e r a O0 paria el e x h i b i d o r , O1 p a r a p u e r t o de s a l i d a de u s u a r i o ,

b i e n O 2 p a r a s a l i d a a l 8255 . PUERTOS PO y P2 . - G e n e r a n l a s d i ! o c c i o n e s d e proceso . E l c i r c u i t o c o n s t a d e I un inver-cor que maneja las l í n e a s g e n e r a d a s

>r ALE , un i n v e r s o r que da p o t e n c i a a l a 5 l i n e a s RD, WH y T i , in selector -I@ g e n e r a d e c o d i f i c a c i ó n de PSEN, y u n selector que decodif ica l o s e s t a d o s 9, WR, T 1 , A 1 5 y A14 p a r a la g e n e r a c i ó n d e las l i n e a s de E/S y d e memoria

CAS y WE . Estos d i s p o s i t i v o s t i e n e n s a l i d a s d e colector a b i e r t o .

22 1 I I . 2. - DECCR I F'C I ON DEL SCIF?'W;'rF?E

E l ciaftware í a p a r t a I S e r v i c i o a! h a r d w a r e , i n t * r p r e t e de c o m a n d o s , ;aporte a1 p u z r t o s e r i e , ' y h a s t a 7 n i v e l e s d e e j e c u c i ó n j e r a r q u i z a d a e n 3 ) A q u í nas v i r t c t a l e ~ 7 .

E l u - u a r i o t i e n s acceso a l o s p r o q r - a m a s i n s t a l a d o s e n firme , y ~ t l d i a n t s 5?11ci~s b a n d s r a s p u e d e d i r i g i r l a e j e c u c i b n y c o n o c e r e l e s t a d o d e l

E l s is tema usa l o s 4kbytes i n i c i a l e s d e l e s q u e m a d e memoria (DRAM) , n i c i a l i z d n d o l a p o r un v a c i a d o d e EFROM a DRAM . C Es i m p o r t a n t e qcie el

ir ,uar-i í , no a f e c t e e s t a a r e a ! , a. rnsna4 que el p r e v e a el s e r v i c i o al b a r d b 4 z . r ~ . E l ;irea d e u s c i a r i c se e n c c i n n t r a a p a r t i r de l a 1 c i c t . l i d z . d lC)C)(Jr4. .a p r ~ g r a m ~ c i d n d e T1 p a r a s e l ~ c c . i d n de modo v o n Ne;.imi;.n no t i e n e . e s t r i c c i a n e s I

E l e s q u e m a de? memoria i n t e r n a debe ser c o n o c i d o a n t e s d e a l t e r a r l o , IUES a h i r e s i d e n l a s b a n d e r a s d e l s i s t e m a ( C S p é n d i c e D 1 . E l u s u a r i o pcipde isar l i b r e m e n t e l a s areas OCiH a OFH b a n c o s d e r e g i s t r o s O y 1 ) .

E l a r e a d o stack d c i b n r d p r o v e e ? r c u a n d o menos 16 l o c a l i d a d e s para l a +jecución d e i n t e r r u p c i o n e s . E l s istema r e ~ e r v a u n a area d e 64 l o c a l i d a d a s jara es te f i n .

Lac, b a n d e r a s qcin e' uc3ua:io p u e d e m a n e j a - . p a r a el ' contro l dr i l ;istema son :

B y t e 2cH B a n d t z r a s p a r a d i r e c c i ó n d e sistema . C u a n d o a l g u n o d e sus b i t . ; e s t 3 en u n o , d i r i g e l a i n t e r r u p c i o n i n d i c a d a al.area d 2 . u s u : r i o ( si-tma 2OOOH a l vector de i n t e r r u p c i o n 1 3

j i s t e i n c 3 .

B i t O: RESET (@200bH) B i t l e INTO (422003H)

(@SOQbJH 1 _ _ ~ (@20 15H)

E i t Zn TO

((3201 bH) B i t 3: INTl

T1 ( @2ú2 b H 1

B i t 4: B i t 5: R e e c e p c i on S e r i e Bit 6: T r a n s m i s i o n Ssr ie ((a2033H) D i t 78 TECLADO ( @ 2 0 3 b H )

E y t a 2dH B a n d e r a s p a r a p r e g c i n . t a p o r p r o c e s o ( p o l l i n g ) . C u a n d o estan - e n u n o d i r i g e n el p r o c e s o a l area d e u s u a r i o e n ->u p a r t e a l t a r

@28(30H, @ZSOCiH, @2AOOH, @2bUOH, @ 2 c O O H , @2d00H, @2EOOH y @2FO0H, r e s p e c t i v a m e n t e . Las dos G l t i r n a s e s t a n c o n d i c i o n a d a s a l o s b i t 5 6 y 7 d e l b y t e 2EH , que d e b e n ser u n o p a r a l o g r a r esas t r a n s f e r e n c i a s . si e s t a n e n cero d i r i g e n e l o p r o c e s o a @3000H y a s e r v i c i o de i n t é r p r e t e d e t e c l a d o , r e s p e c t i v a m e n t e .

L a i n t e r f a s e d e c o m u n i c a c i d n c o n el sistema es p o r buzon. La cielecion Ie b a u d a j e se h a c e p o r medio de la s u b r u t i n a d e s e r v i c i o al p u e r t o serie, :on l a s b a n d e r a s RI y TI en cero .

23

HST I n i c i a l i z a c i o n d e l s istema . E3 emulada p o r ,-~na t e c l a . n i c i a l i z a t o d a l a RAM i n t e r n a , l o s p r i m e r a s B k b y t e s de DRAM y c o n d u c e a l a spera pc7r c o m a n d o ( p o l l i n g ) .

I NTC) R e s e r v a d a p a r a el u'ñuario ( @2OCJdti )

I N T l R e s e r v a d a p a r a e l u s u a r i o ( @2013H )

TO R e l o j simetrico a 10 KHz , si se h a b i l i t a . T 1 S e r v i c i o a l h a r d b - r a r r : R s f r i ; 7 s c o d i memaria ( cada 21x3 1,

a u d a j c a l p u e r t o s e r i e , e x h i b i c i ó n (el c o n t e n i d o d e l a s l o c a l i d a d e s 030H a 3FH1, t e c l a d a (bandera d e . d a t o valido en 2EH.5 y d a t o e n Q2FH), y r e l o j di- i e m p n real ( @28H - @2bH ) .

S e r i a l S e r v i c i o a u t o m a t i c 0 d e r e c e p c i o n , ( llegan d a t o s cornu si u e r a n d e l t e c l a d o 1 , puede r e c i b i r b l o q u e s de h a s t a LFkBytes, qua l l e g a n a a d i r e c c i d n i n d i c a d a p c r el t r a n c ; m i s c i r . S e r v i c i o a u t o m a t i c 0 d e t r a n s i n i s i o n e b l o q L t z 5 d e has ta 4kByt2s , y c o m a n d o s a modo d e t e c l a d o . 'Cuando el s u a r i o l lama e s t a s u b r u t i n a p o n e e l b a u d a j e i n d i c a d o e n A. ( 5125 , 2 4 0 4 , 202 , €39; , 606 , 300 , 150 , y 123 b a u d i o s ) .

T e c l a d o I n t e r - r u p c i o n v i r t u a l d i p e n d i n n t o d e T i y d e l a s b a n d e r a 5 a d e s c r i t a s . -

I I I . S . i i ) . - S e r v i c i o a l h a r d w a r e

R e f r e s c o d e memoria : d e 5 i d o a l a c - s p e c i x l c o n f i g u r a c i ó n d e l a r d w ñ r e , p u e d e lllevarsci a cabo m e d i a n t e l a r e f e r e n c i a a 128 l o c a l i d a d e s o n t i g u a s , 5 i n i m p o r t a r si e5 d e l e c t u r a o de escritura e n DRAM Este efresco necesario a i n t e r v a l o s no mayores de 2mc ( n o m i n a l e s ) , se l l e v a a abo m e d i a n t e l a e j a c u c i á n d e c d d i g o , que se a p r o v e c h a p a r a d a r s e r v i c i o a l -

o x h i b i d o r y t e w t l a d o , e incrementar el r e l o j de t i e m p o real d e 32 b i t s t 99 l i d s 1 . E l c r o n d m e t r o / c o n t a d o r 1 se e n c a r g a d e c r o n o m e t r a r este t i e m p o p o r

E l t e c l a d o s o p o r t a d o es d e 4 0 t e c l a s , p e r o p u e d e s o p o r t a r u n o de iasta 128 t e c l a s . E l m e t o d o d e r e c o n o c i m i e n t o d e b o u n c i n g ) , se l l e v s a a b 0 p o r i n t e g r a c i o n d i g i t a l , que i m p l i c a que p a r a ser r e c o n o c i d a una tecla

l e b e ser o p r i m i d a d u r a n t e 190 m 5 , c u a n d o menos , y h a b e r es tado suelta 11 menos 128 m s , l a , q u e re-sbl ta en una v e l o c i d a d maxima d e t r e s t e c l a z o s lor s e g u n d o I E l ctidigo de b u s q u e d a ( s c a n n i n g ) , e5 e n t o n c e s a r r o j a d o a la l i r e c c i d n 3FH , y 121 b a n d e r a DATO-VALIDO , i n d i c a su a d q u i s i c i o n t e r m i n a d a . .o5 do5 bits mas s i g n i + i c a t i v o s n o t i e n e n s i g n i f i c a d o ( e n este sistema 1. h a n d o t o d a s lac, b a n d e r a s r e l a c i o n a d a s e s t a n e n O , la5 t e c l a s CLEAR, HST, IREAK, E X E F I X , EXEPNT, se e j e c u t a n i n m e d i a t a m e n t e , l o q u e p e r m i t e abar tar in p r o g r a m a o c a m b i a r s u e j e c u c i ó n .

E l e x h i b i d o r . toma 105 d a t o s a e x h i b i r d e l a 5 l o c a l i d a d e s 030H a )3FH , ( n e c e s i t a n ser d e c o d i f i c a d o s a 7 s e g m e n t o s ) .

A

t I I I

2 4 I I I . 3. i i i 1. - I n t G r p r e t e ds comjndos

Coma se i n d i c d a r r i b a , hay comandos de e jecuc ión inmediata, y otos 2 e jecuc idn mediata. La d i f e r e n c i a e s t r i ba en que l a s p r i m e r a s 5e e jecutan irectamcnte ds.r ;de la i n te r rupc ión der1 cronSrniitr-o , mientras que l os 2diatos son abandonado:; a e j e c u c i ó n como p r o c e s o d e minima j e r a r q u i a ( 7 ) , A s t a que l a encuesta pase a dicha jer-arquia , y l a ejecute . Polling 1.

Los comandos de a c c i ó n i n m e d i a t a permiten abortar o cambiar de jccución programas ejecutando en l a m A q t r i n a v i r t u a l d e l usuario . M e d i a n t e a p r o g r a m a c i ó n adecuada de l a p banda-ac de proc-so , el usuar io puede .clamar la ejecucidr~ de teclado y d e jerarquia de n i v e l 7 .

I !

25 111.3.- D E 5 C H I P C í O N DEL MONITOR

f f

El monitor es> el c o n j u n t o d i p r o g r amas y s u b r u t i n a s r e s i d e n t e s e n irine que p e r m i t e n el LIT~O del sisternit e n c ó d i g o d e máquina c o d i f i c a d o en orp- he..:ac-l;cimal ( a p e n d i c e D ) . Su LISO se p e r m i t e dc-sdn t e c l a d o o d e s d e el

3uerto serie , y e5tA C o n s t l t L l i d G p o r comandos d e una t e c l a ( a p g n d i c e F). E l m o n i t o r hace u s o d e t o d a s l a 5 l o c a l i d s d e s d e RAM i n t e r n a ,

z x c ep tuando l a s p r i m e r a s 16 l o c a l i d a d e s ( Bancos d e r e g i s t r o s O y 1 ) como F e g i s t r o s p a r a oper -ac i4n y e s t a d o . R e s t r i n g i e n d o l a s o p e r a c i o n e s d e l n o n i t o r , se putiden g a n a r r e g i s t r o s .

L o 5 r e g i s t r c v s d e LISO d e l i c a d o han s i d o pues tos . f u e r a d e los bancos de r e g i s t r o s , para cw i t a v . el mal u s t 3 por p a r t e d e l u s u a r i o a l m a d i f i c c ? r =SW ( @Odc:lH 1 .

M e d i a n t e o p s r a c i o n e s adecuadas , se pueden m o d i f i c a r todas l a s L o c a l i d a d e s , y a se2 i n t e r n a c j , o ex t e i cnas , acji cano l a p r o g r a m a c i ó n , y a sea Je memoria i n t e r n a , o d e rnernaria e x t e r n a . S i n embargo l a m o d i f i c a c i ó n d e i e lof.; r e g i s t r o s dz: RfiM i n t , - rna , y l o s pr imero- , 2 k b y t e a d e RAM e x t ~ r n - l

d e un p rG fundo c o n a c i m i e n t o d s l s i s t e m a , p~1-5 pcicd- da f i a r s e o n o d i f i c a r s z s u b r u t i n a s y a r g u i n ~ n t o ~ c r i t i c o5 d e l s i s t e m a .

I I I . 3. i 1 . - R e g i stroc,

Las l a c a l i d a d e s de RAM i n t e r n a s u p e r i o r e s a 10H sirven como buzones y argcimémtos p a r a el uso de s u b r u t i n a s , qi-ic r e s i d e n en EPROM ( p r i m e r o s 2k aytes i , p a r a el s i s t e m a , y l os r e s t a n t e s 6k b y t e s p a r a futuros, ur;orj) . A c o n t i n u a c i ó n se d e s c r i b e n estos r e g i s t r o s c o l o c a d o s en o r d e n a s c e n d e n t e d e u b i c a c i ó n e n RAM i n t e r n a ( C o s u l t a r a p é n d i c e s C y E ) :

ZlOH y C-11H Se . r e s e r v a n como r e g i s t r o s y a p u n t a d o r e s p a r a uso del m o n i t o r . En p r o g r a m a s d e uso, en que se i n h i b e el i n t e r p r e t e d e comandos ( y a s e a p o r e n t r a d a serie, o por t e c l a d o ) , se pueden usar.

@12H y @13H. EicizBn p a r a d i r e c c i b n d e e j e c u c i ó n c r o n o m e t r a d a por el c o n t a d o r / cronómetro O .

@14H, @15H, @16H y G17H L o c a l i d a d e s en l a s q u e se i n d i c a n l a s d i r e c c i o n e s y c u e n t a d e l b u f f e r r e u b i c a b l e d e recepción ser ie d e b l o q u e

@ 1 8 H y @19H Acumulador a u x i l i a r , b a j o y a l t o r e s p e c t i v a m e n t e , en que se acumulan los valores t e c l e a d o s p o r r o t a c i ó n . I n d i c a n 105 v a l o r e s que t e n d r a el reg-iGtro A y PSW en l a e j e c u c i ó n d e c>ubru t inas , o el d a t o que se d e p o s i t a en otros r e g i s t r o s , memoria, o s a l i d a . Tambien i n d i c a l a d i r e c c i ó n f u e n t e p a r a m o v i m i e n t o s d e b l o q u e .

QlAH y Q lbH Apuntador d e d i r e c c i d n d e s t i n o p a r a p r o g r a m a c i ó n , d i r e c c i ó n a e j e c u t a r , m o v i m i e n t o d e b loqcrs , y t r a n s m i s i ó n serie d e b l o q u e .

@lcH y @ l d H Con tado r de i t e r a c i d n ( 12 b i t s 1, y b a n d e r a s d e e s t a d o .

. .

26 rlEH, @1FH, G3(:ikl, y @ 2 2 H A r e a d - uso p c w a l a r e c e p c i ó n ser ie d e

b l o q u 2 , e n qu-. 5 2 i n d i c a n d i r i c c i ó n d e d e p o c i c i d n d e l s i g u i e n t e d a t o r e c i b i d a , y c u e n t a d e b y t e s que f a l t a n p o r l l eg , t r . Estos v a l o r e s se a l t e r a n conforme la r e c e p c i d n progresa , quedando en @13H a @15H los v a l o r e s i n i c i a l e s .

!22 y @23H C o n t a d o r e s y estado p a r a t r a n s m i s i b n serie d e b l o q u e .

'24H Ajuste d e t i e m p o para refresco d e memoria . Como el cronómetro 1 5e usa , tarnbipn , p a r a l a g e n E r a c i ó n d e l b a u d a j e d e l puertro serie , en estn bci;zón se i n d i c a l a c u e n t a d e i n t e r r u p c i o n e s qu- dcb3 rán h a c e r s e a n t e s d e un s z r v i c i o a l ha rdwa r e . L a e j e c -uc ihn di? l a d i r e c c i ó n @ 2 3 H t vector d e i n t e r r u p c i ó n s e r i e ) , con l a s b a n d e r a s R I y T I en cero , a j u s t a este v a l o r a1 b a u d a j e r e q u e r i d o p o r A .

2 5 H Guarda el v a l o r i n t e r m e d i o p a r a reconocimicnto d c t e c l a ( debounc ing 1 .

26H y @27H C o n t a d o r e s para., el serv ic io al ha rdwar e ( , T i m e o u t s ) . 28H, @29H, @2CSH, y @2bH C o n t a d o r e s p a r a r e lo j de t i e m p o r e a l

c o n incrementos de aprox imadamente 2 m . 2cH - Banderas p a r a d i r e c c : i ó n d e proc. 3 de los vecl-ores d e

i n t e r r u p c i ó n , que p rog ramados en 1 mand.m a'l a r e a d e u s u a r i o , sumando le 1000H a l vector d=? i n t e r r u p c i ó n . Se ahaden asimismo, vectores p a r a r e c e p c i ó n serie , y p a r a transmisibn serie s e g a r a d o s , y una p r>eL i do . i n t e r rupc i ón p o r t e c l a d o que ademas e s t a c o n d i c i o n a d a , ad-más p o r los b i t s 2dH.7 y 2EH .7 .

2dl-i

2EH

2FH

30H

Banderas p a r a l a e j e c u c i ó n p o r m u e s t r e o ( p o l l i n g ) , en l a s que l a minima j e r a r q u i a es p a r a e l i n t e r p r e t e d e comandos ( s e gun el v a l o r d e l a bande ra 2EH.7, q u e 10 c o n d i c i o n a ) . Dir i jen el p r o c e s o a d i r e c c i o n e s e s p e c i a l e s en el a r e a d e usuario , e n l a s que se puede c o l o c a r el' c ó d i g o d e e j e c u c i ó n p a r a d i c h a j e r a r q u i a .

Banderas p a r a el t e c l a d o ( n i b l e b a j o ) , y l i b e ' r a c i ó n d e l a s j e r a r q u í a s 6 y 7 , y e s t a d o y p r o c e s a m i e n t o de t e c l a z o .

Buzón d e s a l i d a d e l d a t o d e l tiltimo t e c l a z o . @sFH Buzón p a r a e x h i b i c i ó n e n que se c o l o c a el c ó d i g o

d e c o d i f i c a d o en 7 s e g m e n t o s a e x h i b i r ( 1 b i t O es e l s e g m e n t o A, y el b i t 7 es el p u n t o d e c i m a l 1 . La l o c a l i d a d 30H e5 el p r i m e r d i g i t o .

40H a @7FH Se reservan p a r a l a s d i r e c c i o n e s d e retorno d e s u b r u t i n a ( s t a c k 1 .

r ..

27 L a i l o ca l i dqc ! - s s u p e r i o r e s a @7FH 5- usan p a r a 10.5 reg is t ros d e

furicicrnt!c; e s p e c . a l e s , y n o son r e f e r e n c i a b l e s por d i r e c c i o n a m i e n t o i n d i r : z c t o , sir7 embargo el m o n i t o r p e r m i t e su a c c e s o .

Las op<zr -ac iunec o f r c c i d a c ; por el m o n i t o r se r e s t r i n g e n a l a d e p o s i c i ó n e n memsris, selección d e memaria e n uso ( i n t e r n a o e x t e r n a 1, es tas ; d e p o c j i c i o n c s pueden ser en f o r m a d e p r o g r a m a c i ó n ( d e p o s i t a , incrrmL2nts3 el c o n t a d i x , y e x h i b e m-,noria a p u n t a d a ) , o en modo d i r s c c i o n a d o , t r a n s f e r e n c i a s d e acumulador a u x i l i a r a c u a l q u i e r r e g i s t r o , l o c a l i d a d , o pLinr-to , en p s r t i c u l a r a l apun tada r , y a l c o n t a d o r d e i t e r a c i ó n . M o v i m i e n t o d e bloque , ( d c s d e l a d i r e c c i ó n i n d i c a d a p o r el acumulador , h a c i a l a que sehala el apuntador , e n l o n g i t u d i n d i c a d a por el c o n t a d o r d e i t e r a c i o n e s ) .

Tambicin se c on t smp l an l a s d i r e c c i o n e s d e p r o c e s o f i j a s ( RESET , BREAK , CLHALL , E X E F I X 1 , y apuntad25 ( E X E P N T , EXECRO ) , i n m e d i a t a y Eronocn-trada r e s p - c t i v a m c n t e , que s2 ejecutan i nmed i a t amen t e , a b o r t a n d o l a e j ecuc i óri e n proceso , 51 562 r e s p e t a l a i n i c i a l i z a c i b n .

Tambien se puede t r a n s m i t i r b l o q u e por el puF-r to serie. L a s t e c l a s con ni imeros h e x a d - c i m a l e s , acumulan su v a l o r e n el

accimct1ador p o r r o t a c i d n , l o que p e r m i t e r e t e c l e a r ei d a t o e r r o n e o , o 5 i n 7eccc i i dad dE? b o r r a r l o .

I I I . Z . i i i ) . - Funt-ion25 d e l Monitor.

Se d e t a l l a n a c o n t i n u a c i ó n l a s f u c i o n e s q u e c a d a t e c l a e j e c u t a ( a p é n d i c e F ) 1

RESET Depend i endo do l a b a n d e r a 2cH.O d i r i g e l a e j e c c i c i d n a l a d i r e c c i d n @O (sii es O ) o ' a l a d i r e c c i ó n 10C)óH (si es 1 ) . E5 d e a c c i ó n i nrned i a t a ,

BREAK B o r r a el s t a c k , y d i r i g e l a e j e c u c i ó n a l a r u t i n a de m u e s t r e 0 ( p o l l i n g ) d e e j e c u c i o n e s j e r a r q u i z a d a s .

BORRA TODO D i r i j e l a e j e c u c i d n d e programa a l a r u t i n a d e i n i c i a l i z a c i dn d EZ mernor i a Y r e g i s t r o s .

BORRE BLOQUE- borra en ceros el b l o q u e d e memor ia e x t e r n a que . e m p i e z a en l a 1oca l . i dad i n d i c a d a p o r e l apuna tado r , c o n una c u e n t a c o n t-w i. d a en E? 1 c o n t a d o r d e i t e r a c i o n e s .

EJECUTE APUNTFiDO C o l o c a en A y PSW el c o n t e n i d o d e l a cumulador , a DPTR el c o n t e n i d o d e l apun tado r y d i r i g e a e s t a l o c a l i d a d l a e j e c u c i ó n .

EJECUTE PERIODIC0 P o n e en l a s l o c a l i d a d e s e n RAM i n t e r n a @12H y @13H el c o n t e n i d o d e l apun tado r , e n el registro d e a u t o c a r g a d e l c r o n m é t r o O el c o n t e n i d o b a j o d e l acumulador , e n el registro de c u e n t a d e este el c o n t e n i d o a l t o de l acumulador , a l cabo d e la c u e n t a d e este , d i r i g e la

-%

28 2 j e c c i . c i ó n a l a d i r e c c i ó n a p u n t a d a p e r i o d i c a m o n t e , si 5e a r r a n c a el c a n t a d o r 'c r on oin 2 t r o O.

SALIDA SERIE T r a n s m i t e el b l o q u e a p u n t a d o p o r e l a p u n t a d o r , :on el nCimero d e bytes i n d i c a d a en el c o n t a d o r d e i t e r a c i o n e s .

EJECUTE FIJO Despues d e t r a n s ; - f e r i r a A y PSW el c o n t e n i d o d e l a c u m u l a d o r , y a DPTR el c o n t e n i d o del a p u n t a d o r , d i r i g e l a e j e c u c i ó n a l area d c u c j u s i - i o ( @2200H 1 . Rei,ponde i n m e d i a t a m e n t e .

EJECUTE APUNTADO I n i c i a l i z a {\ , PSW y DFTR corno el a n t e r i o r y j i r i j e l a ejecución a l a l o c a l i d a d a p u n t a d a . De r e s p u c s i t a i n m e d i a t a .

LLENE BLOQUE C a r g a l o s 16 b i t s d e l a c u i n u l a d o r e n e l b l o q u e d e l o n g i t u d .dF1 c o n t a d o r que e m p i e z a en l a l o c a l i d a d que i n d i c a el a p u n t a d o r . Zl a p u n t + d a r qurt ja a p u n t a n d o a l a ú l t i m a l o c a l i d a d l l e n a d a .

MUEVE BLOOIJE T r a n s f i e r e bloque d e meanoria d r i s d e l a l o c a l i d a d > p u n t a d a p o r e l a c u m u l a d o r h a s t a l a l o c a l i d a d a p u n t a d a p o r el a p u n t a d o r . Z 1 n a m - r o de b y t e s a t r a n s f e r i r e s t a d a d o p o r en c o n t a d o r . E l a p u n t a d o r 7~i~Cja c a n el Ú l t i m a v a l o r t r a n s f e r i d a , y e x h i b e todo . S o l A r n e n t e mueve e n nemoria e x t e r n a .

P R O G R M I E CONTADOR T r a n s f irire el c o n t t l n i d o d e l a c u m u l a d o r a l : o n t a d o r de i t e r a c i o n e s , y e x h i b e l a l i c a l i d a d a p u n t a d a . .

DECREMENTE AFUNTADOR :om0 el c o n t e n i d o de

PROGRAME GPUNTADOH 3 c u m u l a d o r , y e x h i b e t o d o ,

INCHEMENTE FiPUNTADOR

DEFQS't TE EN MEMOR I A Jel a c u m u l a d o r .

PROGRAME MEMORIA lPUNTADOR.

MEmaRIA INTERNA/EXTERNA

D e s p u e c , d e d e c r e m e n t a r l o , l o e x h i b e , a s i l a l o c a l i d a d a p u n t a d a . _-:. _.

Pone e n el a p u n t a d o r e l c o n t e n i d o d e l

Lo incrementa y muestra todo . C o l o c a e n l a memoria i n d i c a d a el c o n t e n i d o

Como el a n t e r i o r p e r e e jecuta INCREMENTE

P e r m u t a l a memoria a q u e 5e hará r e f e r e n c i a 5u e s t a d o - se r e f l e j a en el p r i m e r p u n t o e x h i b i d o ( p u e s t o c u a n d o es memoria z x t e r n a ) .

O a F P o n e es te v a l o r e n e l n i b l e menos s i g n i f i c a t i v o d e l a c u m u l a d a r y e x h i b e t o d o . Su i n s e r c i ó n es p o r r o t a c i d n , p a r a asi p o d e r z o r r e g i r errores s i n b o r r a r ( t e c l e a n d o l o s cuatro d i g i t o s correctos ) .

i

C O N C L U S I O N E S

30

c

El sistcima de desarrollo, qus a';i concluyo, tiene como finaiidad allanar el camino a futuras aplicaciones para los elementosi díl l a familia ,lCS-51 , poniendo en manos de investigadores y profecionalzs del a r e a olectrdnica y biomédica , un manual resumido de LISO para hardware y softbrare , y enmarcar a d e m á s un ejemplo de aplicación que evitti para ellos la tediosa l a b o r de cdlculas y disei'ros de software y software .

La5 aplicaciones inmediatas saltan a la v i s t a en el uco du nonitoreo , .control remoto , generacibn d e sehales , y estimulación , adquisición y procesamiento 'hasta el ranga .de audio . Medianti? $ a simplificación de este síctema de desarrollo , se p u e d e asimismo ahorrar 3ran cantidad de esfuerzo , y emolumentos para aplicaciones en qui- la >e l oci dad d e respuesta no sea critica . rircuitoc AD y DA e s factible transformar- es ta unidad en una ectaciún remata de adquisición , y control , para aquellas aplicaciones en que sea dificil o .peligrosa la toma de datos y control in 5i tu .

Pongo , en fin , a dispoc,ición de l a comunidad , mi humilde experiencia , en estos microprocesadares .

Lss futuras ampliaciones a este proyecto son , a'mi parzcor , l a elaboración del circuito impreso , y l a simplificación para sistemas dedicados , elaboración de software en general , elaboración de un sistema Dperativo 'I e integracidn de perifericos d e almacenamiento masivo , 3 de video, qcie son factibles segclin l a experiencia desarrollada en la UPIICSA, - - - en que esta integración se hizo en forma experimental .

Mediante 1a i codificacid. l ~ n t a , optoaislñcidn , y adición de

31 REFERENCIAS

1 . - Component D a k 3 C a t a l a g , INTEL (30. , S a n t a C l a r a ea. USA , 1982 .

3.-Data C o n v e r s r u n / A c q u i s i t i o n Data Book, NATIO(\IAL SEMICONDUCTORS Co. C a n t a Z l ñ r a C a . USA, 19i30.

%.-FAIRCHILD: Ca ta logo Condensado, F A I F C H I L D MEXICANA S. A. M e x i c o DF 1963. *

j . - - L i n i . a r - I n t i g r a t e d C i r c u i t s , NATIÜNAL SEMICOMXICTORS Co. S a n t a C l a r a C a . JSA, 1 9 7 5 .

b.-MCS-49 F a m i l y of S i n g l e C h i p P l i c r o c o m p u t e r s User ' 5 M a n u a l , INTEL Co. :anta C l - w a Ca. USA, 1980.

+'.-MCS-51 F a m i l y of S i n g l e C h i p P í i c r o c o m p u t e r . j User ' 5 M a n u a l , INTEL Ca. ? a n t a C l a r a Ca. USA, 1981.

3.-Meascirement S y s . r e m c : A p p l i c a t i o n 8, D e s i g n , E r n e s t O . D o e b e l i n ; : n t e r n a t i o n a l Studen ts E d i t i o n , M c . G r a w - i i l l , Kogakasha T o k y o Jap. 1975.

7 . - .Memory C o m p o n e ? t s H a n d b o o k , INTEL Co. , S a n t a C l a r a Ca. U S A , 1982. P

! O . - M i c r o s y s t e m C o m p o n e n t s H a n d b o o k , V o l u m e s I $4 I 1 , INTEL C o . , S a n t a :lW-h(=3., UCR, 1984.

.l.-Proyecto : M i c r o c o m p u t a d o r ñ de e s c r i t o r i o I H M c o m p a t i b l e , M i g u e l L i n d i g 30S, UPIICSA, I P N , M e x i c o DF, 1985.

: 2 . - P r o y e c t o : T e r m i n a l G r a f i c a I n t e l i g e n t e de A l t a R e s o l u c i o n (basada e n un ~ i i c r o p r o c c s a d o r 8 C i 3 1 ) , M i g u e l L i n d i g Bas, U P I I C S A , I P N , Mesico DF, 1 9 8 5 .

. 3 . - P r o y e c t o n Sicitérna de A d q u i s i c i o n y P r o c e s a m i e n t o d e S e n a l e s P i o l o g i c a s , Zaul E s p e j o R o d a r t e , CINVESTAV, I P N , M e x i c o DF, 1982.

~ 4 . - S i g r i e t i c s A n a l o g I A p p l i c a t i o n s M a n u a l , S I G N E T I C S Co. U S A , 1979.

.S.-Software R e l i ñ b i l i t y r P r i n c i p l e s 8 4 p r a c t i c e s , . y G l e n f o r d 3 . Myers 3 Wiley ! n t e r s c i e n c e P u b l n c a t i o n s , W i l e y e( Sons , N. Y. USA , 1976

. 6 . - T h s T T L Databotrik For D e s i g n E n g i n e e r s , TEXAS INSTRUMENTS I n c . , Dal las ' e x a s USA, 1984.

A P E N D l C E S

. ..

33

AFEi'<i) í C E A: DXAGRAI'iAS DE HAHD'tlP ,E

DIAG36MA A BLOQUE5 DEI.- MICHPROCESACOH

L I

.. - ., , . . . . . . .

'94 I

DIAGRAMA A BLOQUES DE LA UNIDAD DE DESARROLLO

35

D I RGRAPlf7 DE LA SL:-,C I Cirl DEL M I CRCPROCESADOH Y GENEHAC ION DE CDNPFiLlL

8 0 3 1

36

DIAGRAMA DE LA CECCION DE HEMORIA

I

37

DIAGRAMA DE L A SECCIOFJ DE COTROLADOR DE TECLADO Y EXHI P I DOR

. .

38

DIAGRAMA DE LA SECCION DE ENTRADA Y SALIDA

&PENDICE Et L I STADOS Programa de m o n i t o r p a r a e l sistema de d e s a r r o l l o 8031. se u b i c a en + i r m e ein EPROM de l a d i r e c c i o n OOOOOOQ a l a 007777Q

Elaborado p o r Raul Espejo Rodarte. (UPIICSA 1986) Area de v e c t o r e s de i n t e r r u p c i o n

DESPERTAR (RESET)

INTERRUPCION EXTERNA ENMASCARABLE 0

e* *+* * * * * * * * * * *++* * ELOOUE 0 E300 8 000 9 001 F7 3 ******+******+*+**U

:iOCi00-* O02 (302 276 RST LJMP DELAL

30003 060 141 O03 I N T O JNB Rand01,$+2 !Para u s u a r i o ? 30006 002 040 003 LJMP UsINTO ;Es d e l u s u a r i o :)0(?.11 101 266 AJMP Cy I N T O ;Es d e l s is tema

'iOOl3 060 142 O03 TO JNB EndrO2,$+2 ; Para usuar i o? 50016 002 (340 013 LJMP UsTO ;Es d e l u s u a r i o :)O021 101 271 AJMP SyTO ;Es de l s is tema

>C)¿)L3 Ct60 143 003 INTl JNB Endr03,4+2 i; Par a usuar i o? 50026 002 040 023 LJMP UsINTl ;E5 d e l u s u a r i o ~ C i O 3 1 042 177 AJMP SyINTl ;Es d e l s is tema

)O033 060 1 4 4 O C i 3 T1 JNB Endr04,$+2 ;Para u s u a r i o ? iC7036 O(:i2 040 C,i33 LJMF UsT 1 pE5 d e l u s u a r i o 'IOC141 041 202 A J M P CyT 1 ;Servicia a1 HW

,0043 020 250 057 S I 0 J EC RI ,Reciver ; Recepci on? ,C)046_ 020 231 O44 J BC TI , T r n s m t i Transmi cion?

La e n t r a d a En A ( l o s tres b i t s menos s i g n i f i c a t i v o s ) e l i j e . c u d c j e s L3125, 2404, 1202, 893, 601, 300, 150 y 123bacid3, y p e r i o d o de r e l o j de t;emFio rcial C2.C)CiQ, 1.989, 1.976,' 1.5'95, 1 , 9 7 6 , 1.672, i.76S, y 1.785 n s l . Requ iere de 3 l a c a l i d a d e s . d e i t a c k .

tCjCs51 124 C ) 0 7 SySCB fiNL A , Iii0O7 ' j Set BAUDAGE! )c)(j53 061 205 ACALL Ref EhAM

CHONClMETRO / CONTADOR O - -

INTERRUPCION EXTERNA ENMASCARABLE i

CRONOMETFrO / CONTADQR í (SERVICIO A L HARDWARE)

PUERTO SERIE - --

Frogramacion de baudajec:

io055 043 R L A iC)':)56 200 340 PLI CH A '

H)0h2 203 move A, BíjC+A

1(:ií:165 320 340 POP A tUU67 044 004 ADD A , 91004

10060 044 O1 2 ADD A,W012

tOCi63 365 21 5 MOV T H l , A

,(:>o7 1 203 tvOVC A, aF"C+A Ii)O72 2.65 044 MOV FcudHef ,k roC,74 042 RET )0i)75 :O6 310 36;J 231 ;7125 y 2404 E4UD

1(:)5 14 0 4 6 23Ci 023 ; &O1 y 300 E4lJD )O1 11 (:)&O 01 1 (:)(:I 1 097 ; 150 y 123 E!#UD

t 0 1 0 1 346 114 335 071 ; 1202 y 693 EAUD

4 0 B

R e c e p c i o n y t r a n c m i s i o n p o r bloques8 00115 060 146 003 Trnsmt JNB Eindr06,4+2 00120 002 040 o53 LJMP UcST ; U s e r T rncmt 00123 001 357 AJMP SyST 0012s 302 225 R e c i v e r CLR P1.5 ; R e c e v e r Busy ! 00127 060 145 003 JNB Endr05,$+2 I R e c i v e U s e r ? 00132 002 040 O63 LJMP USSR

L l e g a d a d e d a t o s por el p u e r t o serie, p u e d e r e c i b i r bloques d e h a s t a 4 k b y t e s . Usa l a s d i r e c c i o n e s i n t e r n a s IEH, lFH, 20H, y 2lH. ESTAS LOCALIDADES CAMBIAN SU CONTENIDO PUES SON USADAS PARA TRANMITIR D e j a e n l a s l o c a l i d a d e s 14H y 1"JH l a d i r e c c i o n i n i c i a l y e n 16H y 17H el numero de bytes r e c i v i d o s . Con tH (@ ldH .6 ) es l a b a n d e r a R e c i b i e n d o !

* ; S y s Trnsmt

; R e c i ve Usuar í o

R e a u i e r e d e 7 l o c a l i d a d e s d e r e c e p t o r

SySR

' SSR0

SSRl

SSH2

s t a c k . o cupad o.

PUSH PUSH CLR CJNE CJNE MOV CJNE MOV ORL POP POP SETB WET MOV CJNE MOV MOV MOV CJMP FüSH PUSH M3V MOV MOV

CLR hOVX POP I NC PiOV NOV POP F' 13 P UJftZ Ci-R

Fusn

A PSW A A,RCountH,SSRl A,RCountL,SSR2 A , SEUF

RCountH,#200 CountH,#lOQ PSW A P1.5

A , H O S l ,SSR3

A, #ZOO A,RCountH,SSR4 Rkoi n t L , SBUF I n B u R r L , R F o i n t L HCcun t H , ft. S 4 O SSRO DPH DPL DFW,RPaintH DPL, HPoi n t L A, SEUF P3 T1 CoDP,A P 3 DPTR RPo i n t L , DPL Rroi n t H , DPH DPL DF" F'Cr?untL,SSHO A

I

; Save work 'n

;Cuenta O? ; Comando !

; L l e g a 1 bloque ; R e c i b i e n d o ! . ; P r epa ra r e t u r n

; El oque?

; E n a b l e T rnsmt r

;Po inter low?

. g Wai t Poi n t e r H !

; I s d a t a b l o c k !

; A l oj a l o !

; U1 t i rito?

265 041 032 123 635 277 200 277 022 004 132 200 272 164 140 265 041 017 205 231 037 205 037 025 165 041 100 200 252 025 O41 200 246 164 100 265 041 013 205 231 040 205 040 026 165 041 040 200 226 164 04.0 265 041 250 205 231 041 123 041 037 305 041 ú27 c323 O27 200 204

Je datos por

SSR3

SSR4

SSRS

SSR6

ssFt7

el puerta I '

CJNE ANL S J M P LCALL S J M P MOV CJNE MOV MOV MOV SJMP

SJhP MOV CJNE MOV MOV MOV S J M P MOV CJNE rlov ANL MOV DEC SJMP

DEr;

. .,

A,RCountH,SCRS CountH,#277 SSRO I n t r p r t SSRO A,#140 A,RCountH,SSRb RPointH,SEUF InBuReH,RPointH KCountH,#100 SSRO RCountH SSRO A, # 1 O0 A,RCountH,SSR7 PCountL,SBUF NubyReL , RCountL RCountH,#040 SSR 0

A,RCountH,SSH2 FtCountH, SBUF HCountH, #O37 NuByReH ,F.i-iauntH NuEyHeH SSRO

A, it040 '

;No rec ib iendo!

; I n t e r p r e t e Cmd

;Pointer high?

; Wait CounterL !

;Aun hay mas!

;Counter low?

;.Wait CounterH!

; Counter h i gh?

;Wait data blok

serie, se pueden e n v i a r bloques de hasta

~

SST2

S S T J

S S T 4

.- SST5

SCT6

C S T 7

SST8

S S T 9

S C T A

JB DJNZ DJNZ DJNZ SJMP J EC MOV POP POP POP POP POP %ET

MOV CJNE MOV MOV SJMP PUSH PUSH NOV MOV MOVX I NC MOV MOV POP roP DJNZ PUSH C L R CJNE F O P CJMF MOV C J NE: ríov VOV CJMP IIEC PUP S J isif' MOV CJNE MOV rmv 5JMP I.IUV C,2 NE

43

P i , 6 , SST3 R 2 , SST2 R 1 , S S T 2 RO, SST2 S8T4 T I , S S T O ;BUF, A ri2 R01 ROO A P8W

1 Tr ansmi t i o Us?

;Retorne.

A, W200 A , T C ~ L ~ ~ H , S S T ~ ;Pointer low? A, M e m F o L T C o u n t H , 44 140 S S T l DPH DPL DPH,MemPoH DP;,MemPoL A, @DP ;Toma dato!

DPTR ._

MemPoL,DPL HemPoH, DF'H D P L DPH T C o u n t L , S S T l ; U1 ti m a ?

A fi A, T C a u n t H, SST8 A C S T I A,#140 R , T C a u n t H , S C T 9 A, MernPoH TCoun t H , # 1 O 0 S S T i T C o u n t H A SSTI

A, f C o u n t H , C S T A R , TCnc in t L TCovntH, 8Q40 S S T 1

A , TCüuntH , S3T6

; Mas de 2561-

; Send p o i ntH?

&,#io0

A , : 'o40

. - -. .. . . . . - . . .

30366 123 043 037 ANL TCountH,#O37 30571 005 043 I NC TCoun tH 30573 34'5 043 MOV A, TCountH 30575 200 204 SJMP SSTi EL SISTEMA NO SOPORTA INTEHRUPCION 1 . 00577 302 252 SyINTl CLR EX i Servicio a l Hard Warer Teclado, Ewhibidor, re lo j y Memoria Dinamica.

;Modo de E/S !Setup clock

TimO0,NadaTl ;Hefresco? TimO0,PaudRef ;Time Out < Zms

;RegetFl ipFlops i- N a d a T l A FSW H91 R 3 0 P3 DPH UPL T1 A , #O0 1 A , Re1 o j 0 He1 oj 0 ,A A A,Helojl Fteloj 1 , A A

._

A,Reloj2 R c 1 o i 2 , A A A ,Reloj3 FCW , *o30 ;Penco Regs 3 Kcl aj 3 ,A R0,DatPrev ; D : s p l y & KB DFH , #I 1 1 O 67, Gr3P i Get b:Bciat8 RSO , :1(?07 ; S t r e a p column R1 ,A ; S a v e K E d a t a 0, -13ú7 ; S t r e a p 5ts.tLts

;SE-rvice

A, R X ) , $+l A,RO

A, R 3 0 , %+l k3Cr , C

C , KBEr * C ;P :EErr=l if KEEr , C ; bacl::=sctual s t a t u s Et:!, DGtPrev F. y,(:) , i 070 ; S t r e a p r o w

c? .. , me column? -

&,R1

45

,00722 ,00724 )O0727 ,00730 ,00732 ,00735 1 O U 7 36 )U0740 100742 ,00744 ,00746 ,00750 100752 )O 0 7 5 4 )O0756 )O0760 iOO76 1 ,00762 )O0 7 6 3 0 0 7 6 4 ,007 66 Ki0 7 6 7 ,o o 7 7 C) ioc, 7 7 2 ,00774 )O0775 100776

124 070 265 030 c)00 310 222 164 265 030 000 ad1 162 164 202 160 222 160 242 346 222 343 242 347 222 163 124 017 104 060 370 346 360 744 170 056 326 o 4 3 sc-io 340 o 4 4 O1 2 203 336 320 340

-c

- -

í- .-

PiNL CJNE XCH M W CJNE MOV OHL ANL MOV MOV MOV MOV MOV ANL ORL MOV MOV MOVX CLR MOV XCHD RL PUSH ADD MOVC XCHD POP

A , #O70

Q,RO A , RZO, $+1

Bndr24 ,C A, R30,$+1 A ,R l C Bndr24 ;C=l 5i renglon C,KbEr ;anterior=rengln ac tua l kEEr,C ;#EErr=l si hay dato de C , A . 6 ; t ec lado con la A.3,C ; misma col umnay C,A.7 ;d i ferente reng HayDat ,C ;Set KB s t a t u s A,#017 ;Direction de dato a A, #O60 ; exh ib i r Fió, A A,@HO ;Obten dato o exhibir @DP ,A ;Exhibelo A ;Obtenga nuevo s t a t u 5 y RO ,#O56 ; d i recci on a E? jecutar A @RO ; para reronoci m i ento de A j t e c l a (DEBOUNCING) A

A, QPC+A ; Get new debonci ng -code_ A,@R0 ;Store't A

A , ::O 1 2

ADD PlOVC MOV J MP DB DE DB DE( Db DE( DE DE DB D El Mí3V PlÜV '

POP POP RET

TimOOn DJNZ MOV XCHD MOV SJMP

T i m O O f f DJNZ ANL SETB MOV ANL MOV POP P O P POP POP POP JNE POP

JNb LJMP I

RET

r o p

TOO CJNE TO1 FiJMP 7- 0 2 CZNE ÑECET JIdE

LJHP T O 3 CJNE

FOP 5 FOP

POP

&CAL 1- AJMP

TO4 ACALL CJNE

A C A L L LJMP

TO5 CJNE EXEFT PiOV

FUSH PUSH

ParrnEx MOV I"lV HOV

pap

E x w r x PIOV

PSW A

T i M O l ,'Retorno A , #O06

T i m O l ,#O40 Retorno T i m O l ,Retorno Bandrs2,#360 D a t o V a l ido A,DatPrev

KEBuf f , A DPL DPH P3 R 3 0 R31 E n d r Z 7 , TOO FSW A Endri7,0+2 LIE tdTt'.B

A , @RO

A , # O 7 7

; T i m e O u t l?

;T ime Out l?

; Dat-o-,Previ o .

;Se atiende?

; Para uwar i o?

! Ya 5e a t e n d i o .;E5 d e l usuaria .

;C lear all

;Para usuar io !

46

47 Qt250 205 033 203 MOV DPH,MemPoH 101253 042 RET

101254 322 157 ,01256 520 320 101260 320 340

TO6 SETB b n d r 17 - POP PSW POP A RET ,01262 O 4 2

,01263 262 224 ,01265 042

,01266 302 250 SyINTO CLR EX0

E l c;istem,a ~ t c a el c r o n o m e t r o O para e j e c u c i a n c r o n o m e t r a d a .

R u t i n a ~ r o n o r n e t r a d ~ a default, hace d e P1.4, un re loj a 10KHz. '' E x e C r A u CPL P1.4

RET E l sistema n o s o p o r t a i n t e r r u p C i O n e 5 e > : t e r n d S .

,01270 063 RET I í-

R e q u i e r e d e 4 Torna la d i r e c c i o n a e j e c u t a r 3 e la5 l o c a l i d a d e s @12H y @ISH ( E x , C r P o )

l o c a , l i d a d e s d e s tack.

101271 3 O C ) O22 SyTO PUSH Ex C r POL )O1373 300 023 FUCH Ex C r FoH ,01275 062 RET I

C o p i a el c o n t e n i d o :.? EFROM e n HAM RUTXNi DE DESPERTAR (FIESET)

101276 220 c)c?c) 000 DELAL MOV DPTR,#UOO 000 ; A p u n t a i n i c i o

)O1302 223 MOVC A , @DP+A :Lee EFROM 1 0 1 303 3bCi I.IClVX 613P, A , . ; E s c r i b e RAM

'01301 344 SRQ CLR A

Kb13C)íi 243 I NC DP ,01-3c?5 345 203 MOV A, DPH )O1327 264 040 367 CJNE A,#040 ,SR0 ; F i n d e EFROM?

,@1312 302 265 EERAM CLR . T1 . ;Mudo de rni3mria ,

Borra (en ceros) l a HAM a r r i b a d e 8khytes

101c.14 s 4 4 SH 1 CLR A iCi 13 15 360 MCIVX GPP,A ;Deposita 0 )01C.16 243 I NC DP

) ( )I 324 5S2 265 SETR T l ;Modo c < n E/S

)O1 3 3 C ) a44 CLR A .

17 343 203 MOV A, DPH ;(1i .-21 204 O00 370 CJNE A, *IO00 CH 1 ;Fin de RAM?

Fmrra l a R A M interna 1326 170 E77 B I R A M MOV R0,#177

i(:)lSSl 366 CRS MOV GRO, A ;Deposite O :KjlL,32 330 375 D J N 2: HC), CR2 ) F i n d e IWAM?

I n i c i a l i z a l a s localidñdec de IRAPI que no d e b e n d e s p w t a r e n cw-0 :)O 1.1.34 170 . (3 14 CIKAM iSiJV F;C) , H Ci 14

:,o 1337 3!:)s I?T)VC A, G:PC+A ;Torria d i r e c c i o n 'IC) 1340 140 07Ci J Z CSFR ;Ultirrla (O)?

:)015',6 350 BR3 KOV A,RO

: ) O í 3 4 2 371 MOV Hi , A ' I C 1 1343 t:, 10 I Ni= R0

1344 :jILJC, PiOV 6 , R O 101345 1:)14 370 n 9 D A , #37O

~

i

48 1 I I

J BC J BC JBC J BC SJMP LCALL SJMP LCALL CJMP LCALL SJMP LCALL. SJMP - LCALL. SJMP LCALL SJMP JNB LCALI- SJMP LCALL SJMP JNB LCPLL SJMP L C A L L SJMP

,--

Endrl4,Po4 Bndrl5,i)oS Bndrl6,Pob Bndrl7,Po7 Pol 1 i ng UsJerO Polling UsJer 1 Pol 1 ing UsJer2 P o l 1 i ng UrjJer3 Po l 1 i ng U53et-4 P o l 1 i ng UcJet-5 P o l 1 i ng Bndr26,S;+S U s J e r 6 P o l l i n g S e r R c v d Fa1 1 ing Endr27,$+3 UsJet-7 ,

Po l 1 i ng t::B I n t r p Po l 1 i ng

en f o r - n z a t o hexadecimal 10s contenidos d e (@32H y B33W), el byte de menor ia

49

. . . I I __. - ~ ~ .,. I , , ... ii . . ". - . . . . I .

01676 171 072 01700 345 035 01702 365 077 01704 264 200 O02 01707 100 040 01711 300 203 O1713 300 202 01715 300 260 't1717 205 O32 202 (.1722 205 O53 203 41725 303 265 01727, 340 01730 320 260 01732 320 202 01734 320 203 01736 221 O02 lQ1740 320 000 ,01742 320 O01 101744 320 320 ,01746 320 101750 042 01751 345 032 101753 3 O C i 203 ,01755 c;r.io 202 ,01757 SO0 260 ,01761 2 2 C i 003 364 101764 360 101765 903 165 )O1767 ;45 <,O<)

MOV tlov MOV CJNE JC PUSH PUSH PUSH MOV MOV CLR MOVX

DsplyO POP POP POP ACALL PDF PO' F O F POP RET

DMemInt MOV PUSH PUSH PLtSH MOV MOVX CLR

Mcdify MOV

R1 ,#O72 A , Coun tH 077, A

DMemInt DPH DPL P3 DPL,MemPoL DPH,MemPoH T1

P3 DPL DFH Di g s A ROO RO 1 PSW A

A,#200 ,$+2

A, @DP

A, MemPoL DPH DPL PS __ -- DPTH,#Modify+l @DP,A T1 t?,ooo I25ply0

;Dest p t r !

;status ;IF MemExtrn

!THEN get it

1 get sddress

;Access DRAM ;Get data ;Restore 1 0 / M ;Restore DP

;Disply it ;Restore w o r k 'n

;Back t o main ;ELSE IWAM ;Save DP

;Set add t o mad

; E x e c DRAM ;Get IRAM data

;Nible alto

; P . J i b l e ba jo

50

51

002017 042 RET ; E x h i b e en Q R l , un d i g i t o h e x a d e c i m a l contenido en el n i b l e bajo d e 4 002020 124 017 DigtoHx ANL A,#017 ; S t r eap n i b l e L o02022 044 003 ADD A, #O03 ; T a b l e o f f s e t 002024 203 MOVC A, @PC+A F Encode number 002025 366 MOV C-RI , A ; S e t mail box

INC R 1 !Po int t o n e x t 002026 O 1 1 RET (202027 042

(302034 146 155- 175; 107 002040 177 157 167 174 O02044 130 136 171 161 002050 075 164 020 036 002054 172 070 162 124 ; l l ~ l l IIL" " m " 'In"

C102060 134 163 147' 120

3" II 0 I 1 I1 1 I I II 2 II 002030 077 006 133' 117 ; II 4 11 115 II I I 611 11 7 I I

; "8 11 119lI , ,A" Ilb"

~ l l c l l Ildll IIEII I I F I I

; II G I I I 1 h I I I1 i II I 1 J I1

; l lo" IlPll l I q " l l r l l

; I I II II x I I I t y I t I I I I

; II < I I I I > II I I I 1 I 1 I 1 &I

I I , I I II I I I1 f I I I 1 I I

I I I 1 I I : II II ; I I II I I

E 11 , I I I I II 11 I 1 II II

;lISll IITII llull I I V I I 002064 355 061 07b 152 OCi2070 117 166 154) 333

I I ) II, I I ~ I I I I - II CK)2074 071 017 1 1 0 100 i I t (

002104 144 122 176 044 t \ I t 1 If # 'I A 0021 10 004 200 11 1. 210 - OC)2100 106 160 040 042

003114 204 202 244 O00 C)iiz120 135 153 Ci";:j 033 002124 O h 6 024 C ) 2 2 176 ; E j ecu ta subrutina:; s e g u n el cocliga_.en KBEUFFER. ; El acumulador pier-de su contenido.' ; Requiere de 12 localidades de s tack . <:,o2 13Cl 345 057 KB In t rp .mOV . 4,KtEuffer ; E j F - t u t a scbrutins.:z de a c u f r d o al cod$-o en A , ue p i e r d e su contenido. ; Requiere de 16 lucalidades d e s t a c k . ; f;i R.:Ct Fie-.et A= 1 E jecu ta ,-puntado.

5 4 Ecort-a bloque I n c c emeri t a a p un t cl d or.

5 8 EREAK. 9 Ejecuta en i t a p a s i m p l e 9 (3 AH Nunicx- o OdH ObH E!ur;l-ra CrlH ; (3 c H Numliro 7 C)dH Numero 4

CiEH tiiunisro 1 OFH Nurr:w-a O ; ; 1OH Ear-ra todo 1 i H E j e cu ta cr-cnornetrado

12ti Numero ClEH 1-H t\lumtiro ObH ; 14H ~ c t m e ~ - o e 15H 14umEt-o 5 i 1. óH Numero 2 17H D t - p u s i t a en memor- i a

;

i ; 20H H a b i 1 i t e / d e s h G b i 1 ite I.<B 2 l H Transmi ta pi.r-c..i c lo ; 22H Espere t i c l > i o 33H Espere c i e to r-erie I 24H Espere dato seri e CLiH Fr 09 r e me c on t F d or-

I I II I1 II u I I I I I I

1 Eje-iiuta f i j o . (@2000H). . 3 Ejecuta E-puntado.

DE c 17 emen t a ap un t. 3 I- or . 5 . . Mueve bl ':lqLie. 7

2

6 r

9

1 8 H L i b e r a Hardware 19H Trór ismi t e 5éI-r i e 1 AH Nun-rtiro OFH 1bH NLifljero OcH 1cH i.iunr-ro 9 1dH P ~ L ~ I T I E ~ O 6 1FH Numero 3 1 FH Progr 6 me m i n i o r i a

F b

P

_. . .

26H Programe apuntador >28H Reset f r i o .

I n t r p r t PUSH

NumF NumE NumD NumC NumB Numñ Num9 Nurn8 N u m 7 Num6 NumS Num4 t4umS NLcitll2 NLtml NumO

PUSH PUSH PUSH PUSH PUSH MOV ANL MOV MOV MOVC XCH ORL MOVC MOV MOV MOV CLR JMP I NC I NC INC I N C I NC I N C INC i I C I NY INC I NC INC I NC I NC I t.1C MQV XCH 5idRP X C H XCHD I tJC X C H c I,! G P XCH t , CtiD

RetIntr POP POP POP

52 27H Memoria interna/exterkta

PSW R20 K21 DPH DPL P3 PSW, 4020 ;Reg . Bnk. 2 A, #O77 HO,A DP,#IntpTab ;Tab la de salto A, @DP+A ;Address L G,RO DPH, # 100 A 'I @DP+A ;Address H D P L , R0 DF", A RO , A A I-DP+A A A A A A A A A 'A A ' A A .

, A A A RO, AcuAcrxL 0 , GHO

A, @RO F:, elio

A,@RO

A, -80 R , @RO

A

H0

A

P3 DPL fjPH

a

; S h i f t 4 n i b l e s

:)O2401 343 102402 205 202 032

M O V X INC MOV MOV DJNZ DJNZ AJMP

MovB12 MOV BDD MOV FUSH MOV FiDDC P O V F'USH MOV ADD MOV PUSH MCIV ADDC MOV FUCH CLR I NC

~ ~ ~ 3 1 3 r 3V ! 3v I',ovx MUV Pl o v MOVX CI-H MOV SLILEI MOV KCIV SLlJBES riov CLR n5v SU2i3 KOV KÜV

54

DP MemPoL,DPL MemPoH,DFH RO , MovEl 1 Hi ,MovPl 1 RetIntr A, MemPoL A,RO MernPoL ,A A A , MEmPoH

MernFoH, fl A

A,RO

A A, ACUAUKH A , R l ACL\AUX H , A A T i R1

I j F " , AcuAuxH

9PL, M-rnPoL >PH, Y- -;PaH cDP, A C A,Gcc d#L

A , R l

A, A c u A u w L

ACUAUML, A

D P L , f¡CL\AU% L

A 9 GDP

A , ecm 1 PiGLIALIXL ,A

A, 1KJC)O A , AcuRux H

4cuGu:.:H,A c A , i*lr mPoL A , i ,CJOl P;:-n,i>oL, A A, PÍtimFoH

;New dest addr

; IFNOT last d a t ;THEN n e x t b y t e ;ELSE return ; Dcjwnward move

' ; C o m p u t e end jadresses . ;& save it

3 ffiave loop

; Gzt d a t a

;Store d G t a

; New ¿?1ir-L'LSE?S

e- 32

; T e s t trnc busy - ;IFNOT time out

;THEN r c t u r n . ; ELUEtet tDevEc,y I

. i

0Cr30CiU 365 OS5 MOV CountH,A 003002 201 266 A J M P Ret I n t r j Rutina de programacion de l contador de iteracion. 003004 345 051 PROCON MOV A,AcuAuxH C)03006 170 035 MOV HQ,#CountH 003010 326 XCHD A , @RQ C ) i ) X i 1 1 205 O30 O34 001:;014 201 226 A J M P Ret I n t r ; Subrutina que deposita en memoria e incrementa el apuntador. 00SQ16 345 C ) 3 5 PROMEM MOV A, CountH 003020 (360 347 015 JNB A. 7, ProMemI

CiÚ3026 205 O 3 2 202

CiCi3033 302 265 C L R T i

CiO3036 200 01.4 SJMP F r o M e m N í)ci3040 220 Si06 053 . ProMrmI MOV DP , #MDF DMI + 1 OC)3C>43 345 032 MOV A, MemPoL c)(32;045 560 MOVX @DP , A (:)Ci;SC)46 302 265 CLH T1 c)Os<:)50 34s 0350 MOV A , A c u A u x L

MOV Coun t L , A c u Au x L

e-- - MOV DPH,MemPoH MOV DPL,MemPoL

(jú3023 205 O33 203 .- 003031 345 03-0 MOV A, A c u A L i x L

003CiS5 260 MDVX &i)P, A

ii03C)52 365 377 MDFPMI MOV 377 ,F\ <Kj:;c154 205 032 202 ProMemN MOV EPL, rii-mPoL

003062 243 I NC DFT (:)c)3057 205 033 203 MOV DPH,MemFoH

003C)63 205 203 0325 - MOV MemFoH,DPH .

Ci(:)T866 205 202 Q3:? MOV MernPoL,DPL

Cl03073 EXECS 301 226 , f i t 3 b1P Rct I n t r

58 ******+*******+**** BLOQUE 7 C300 8 007 9 001 F7 J *************++**+ L)3576 201 226 AJMP RetIntr ::)3600 164 231 216 231 IntpTabL RESET EXEPTB E X E F I X E X E P T r:)3604 245 320 143 162 FILLBL MOVBL DECPT INCPT i13610 117 073 176 201 EREAK EXFSS NumD N u m A 03614 204 207 212 213 Num7 Num4 Numl NumO 05620 276 201 175 200 DELFIL EXECR NumE NumB O3624 203 206 211 222 N u m i 3 N u m S N u m Z DEFMEM C13630 262 314 174 177 DELEL TRANSS N u m F N u m C 1,3634 202 2c15 210 O 1 6 Num9 Numb N u m 3 PHOMEM t2364ú 226 226 226 226 Nada2UH Nada31H Nadñ22H Nada23H 03644 226 004 344 374 Nada24H PHOCON PHOPT MI/ME 03650 577 377 577 377 CRST CRST CHST CRST (33654' 377 397 377 377 CRST CKST CHST CRST C)3660 377 377 377 377 CRST CRST CRCT CHST 03664 377 577 377 377 CKST CHST CHST CRCT G3670 377 377 377 377 CRST CRST CRST CRST 0--yrj74 377 377 377 377 CRST CRST CHCT CRST cj- 700 003 O02 002 O02 IntpTsbH RESET EXEEPTB E X E F I X E X E P T (j, 7C14 O O A 004 005 (305 FILLEL M 3 V F L DECPT JNCPT (:G7 i('J O(:) 5 006 O04 O04 EREAK EXESS NumD NLlrnA

N u m 7 N u m 4 N u m 1 DEL4L E X E C R NumE Nirrr3 Num5 ,N LI m 2 DELEL TRANSS NumF_- .

Ncim9 Numb N u m S Nsda2OH Nñda2lH Neda32H tdada24i-i F'HOCCIN PhOPT (1 'SCT CRST CRST CFiSY CkST CF:ST CRST CK'ST . &F.ST ERST CAST CRST CRST CRST CkST ChST CFIGT CRST

1 I

NumO

DEFMEM

PHOMEM Nadñ23H MI/ME CRST CRST CRCT CfiST CRST . . I

CRCT

NumB I

_NumC I

.

O

APENDXCE C i MAFAS DE MEMORIA

MAPA DE MEMOR:[P( INTERNA BANCC3 DE REOISTROS O : USUARIO

í-

BANCO DE REGISTROS í L USUAHJO . -

BANCO DE REEISTRCC 2 t MONITOR IOH H e s e r v a d o p o r el. r n a n l t o r I i H F : r s e r vé ido por el. mmitor

~ - 3 A p u n t a d o r d e e j e c u c - on c r o n o m e t r a d a a l t o i 4 H i n i c i o de b u f f e r d e r e c e p c i o n bajo íSH I n i c i o d e bÜffer de r e c e p c i o n alto lbt4 Numst-o de b y t e s r e c i b i d o s 17H I\turncra d e b y t e s r e c i v i d o s alto

' Z H A p u n t a d o r de e j f 3 cuc : on c r o n o m e t r a d a b a j o -

F\;ANCO DE REGISTROS 3 : SISTEMA. RhEA DE LISO DEL hONITOR

l O t i F,cum~t-il a d u r dux 1 1 i úr b a j o 19H Pcumul adcir a ~ t i : i 1 i ar a l t o i A H Apuntador b a j o 1 bti P;sun t . -dar al t o icH r u r i t c d o r d e iteration ba jo I d Y Conttccior d e i t e r a l i o n alto y q t a t u s

Los b i t . ; rnc75 ~ i g n i f i c s t i v ~ s 7: é,: F r c l v i k r t d o b l o q u e serie d: !<o :fs< do (I: KEc(-;)tGr r c r i e t cn r i t ; . da r ) .

:>e u s a n p ~ r a : 1r)dica memoria i n t e r n a o rnErnoria e x t e r n a ( m o n i t o r )

L-

&REA DE IIC;CI riE LA RECEPCI~N SERIE. 1EH " Fun t cdo r - b s j o d~ r r i c c F ) c i o n ~ t r j e IFH I ; pun te rJoi- E 1 to d e rftc- i-pci o n 5er-j e

Ex C r POL Ex C r P o H l n B u R e L I nEuReH Nub y H e L NubyHeH

AcuAcixL + nc u AUz: H MemPoL McrnFoH Count L CacintH

R P o i n t L RFointH

AREA DE RAM INTERNA: O H C o n t a d o r b a j o d e r e r e p c i o n s e r i e 1H C o n t a d o r a l t o d e r e c e p c i o n serie

'2H C o n t a d o r b a j o d e t r a n s m i s i o n ser ie '3H C o n t a d o r a l t o d e transmitiion s e r i e !4H AjIt ' e d e t i e m p o p a r a s e r v i c i o a l h a r d w a r e 5 H D ñ t d e tec lado p a r a d e b o u n c i n g '6H T i e 30 d e p r o c e s a O !7H T i e m p o d e p r o c e s a 1 !BH C o n t a d o r de r e l o j 39H C a n t a d o r d e t -e lo j :AH C o n t a d o r d e r e l o j !bH C o n t a d o r de r e l o j IcH E a n d e r ñ s p a r a d i r e c c i o n d e p r o c e s o

GREA DE USO DE L A TRANSMISION SERIE.

( l i b e r a c i o n a u c u a r i o ) r O: RCT (@iOOO) 1 : I h T O (@1003) 2: TO ( G' i OOb ) 3 : l N T l (@1013) 4: T1 (@íC>lb ) 5 : F e c e p c i o n serie ((3 IO2'b)

7: T e c l a d o ( @ í 03 b ) 6: Tr anr;mi si ori ser i e ( @ 1 O413 )

R C o u n t L RCoun t H

T C o LI n t L TCcuntH EaudRef D a t P r e v T i mí30 T i m 0 1 Reloj0 R e l o j 1 R e l o j 2 R e l o j 3

B n d r Z O

Em d r 07

AREA PARA EXiiIBICION. 9óH Solamente l os ojepmentos 13 y H 32H 32H 33H 34H 3 5 H 3 6 H 3 7 H 3 8 H 39H 5AH SbH No e x h i b e s e g m e n t o H '(&nto) TcH No e x h i b e segmento H ( p u n t o ) TdH 3EH 3FH ;OH a 7FH Reiervados p a r a e l tack"

D i c p l O D i s p l l D i s p l 2 D i s p l 3 D i s p l 4

D i s p l b D i s p l 7 D i s p i e D i s p l 9 D i s p l A DiEiplB Di s p l C DispLD D i a p l E D i s p l F

D i s p l S

4

62

MEMORIA EXTEHbIAr

i

0

8

.....

1'

0

1.2

' I 1

. _

I' 0

o 1--

I

. .

_ _ * _ - _ -- - . - _

DIAGRAMA DE D I R E C C I O N A M I E N T O DE MEMORIA INTERN6

B A FSW I P C F3 I E C PZ SbUF SCiJN P1 T H l THO T L 1

TI.IC:,D TCON DPH DFL CP PO

TLC

COMO B I T

__I_ ---- -__I_--

017H

U 1 CiH

I

’ carlo R E G I s .r R o

Q

FOR C’-F\CI.;‘ F O I N l E

REG 1 S I R 0 ’ E IhiDIRECTO FOR

63

I I R E C T O

!OV 'UCH

'OP

'CY C d D

iovx IOVC

CONJUNTO DE INSTRUCCIONES

AGRUPRDAS POR FUNCIONES

1uv

:LR

:PL :L R L C

;E-rEi

\NL IRL !RL

APENDICE Dt. CODIOO DE MAQUINA.

a ) . - TRANSFERENCIA D E DATOS: i 1. - PARA FROFSOCITOS GENERALES:

T r a n s f e r e n c i a s d e b i t o da! b y t e I n c r e m e n t a SP , y e n la l o c a l i d a d a p u n t a d a p o r é l , d e p o s i t a el c o n t e n i d o da! l a l o c a l i d a d d e memoria i n t e r n a i n d i c a d a en su a r g u m e n t o .--: T r a n s f i e r e el v a l o r c o n t e n i d o e n l a l o c a l i d a d i n d i c a d a por el Sp, a : a d i r e c c i ó n que i n d i c a su a r g u m e n t o .

i i ) , - E S P E C I F I C A S A L ACUMULABOR: I n t e r c a m b i o d e l s e g u n d o o p e r a n d o con el a c u m u l a d o r . I n t e r c a m b i o c ie 10s n i b l u s r n ~ n c i s s i g n i f i c a t i v o s d a 1 a c u m u l a d o r y d e l o p e r a n d o f u e n t e . M o v i m i e n t o s a / desde el a c u n u l a d o r a / d e s d e memoria e x t e r n a . Movi m i e n t o s e n t r e a c u m u l a d o r - y rnemori a de p r o g r a m a .

i i i ) . -TRANSFERENCIA DE 16 13ITS: DTF'TR, ttnnnnH B p e r a c i ó n en 1 6 b i t 5 que c q r g a el a p u n t a d o r .

b ) . - LOGICAS ( R e g r e s a n el r e s u l t a d o e n o p e r a n d o d e s t i n o ) I

Pone b i t s e n cero ( d e l a c u m u l a d o r , de l Cy o d e un b i t d i r e c c i o n a d o ) Fcne el C y , . o e l b i t d i r e c c i o n c d o e n u n o . C o m p l é m e n t a ( a unos) el a c u m u l z \ d o r , el C y , o e l b i t d i r e r c i o n a d o .

F;R EF:C SWAP E j e c u t a n cor-t-imientos e n el I c- . -umu3ñ.rior ( a la i x q u i e r d a , a l a d e r e c h a , S C ~ I - E si mismos, a trs .v: ; :z d e l carry , o d e d e c u a t r o h i t s ) ,

. - -. .- -

i ) . - D E UN SOLO OPERANDO:

i i ) . -DE !3cJC OF'ERRKDOS: E j i r cu ta l a o p c - r z c i ó n E o o l e a n a I' y 'I en u n b l t o e n un b y t e O p e r a c i ó n l d q i c a I' o " en 8 ó 1 b i t s E j c z c u t a d i n y u n c i o n e x c l u s i v a e n u n b y t e

c ) . - ARIMETICAS ( T o j o , l o s r e s u l t a d o s 5e a r r o j a n e n el a p E r a d o r d t i s t i n o ) I

i 1 . -ADICIi3N: I n c r E n ~ n t a 121 o p r r s n d ? e n uno . No a f e c t a b a n d e r a s Sums, a l e c u m u l a d o r , si el r e c u l t a d o no c a b e prende el carry Ccirria a l e,cumlL\iador e l c a r r y m&s el vcllcjr d e l operclrtdo fuente , c i el

64

r c s u l t s % d o n o cabe en el aciirncilcdor p r e n d e el c a r r y

E l c a r r y 5- prende si e l re--ul.ta,do es m ~ y o r qcie 99 )A A j u c t e d e c i m a l d e l a ~ - u m r \ para v a l o r e s e n d i g i t u s d e c i m a l e s (BCD)

i i ) . -CUBSTRACCION? :C Decrernenta en uno e l v a l o r d e l o p c r a n d o f u e n t e , no a f e c t a b a n d e r a s JEB R e s t a a1 acumulador e l v a l o r d e l o p e r a n d o f u e n t e , y el v a l o r d e l

c a r r y , Fone l a bandePa d e c a r r y en uno si e l r e s u l t a d o f u e menor que cero .

JL

I V

i i i ) .- MULTIPLICACION: M u l t i p l i c a 10:; v a l o r e s en A y 13 el r e s u l t a d o l o a r r o j a en d i c h o s

r e g i s t r o s A b y t e b a j o , E b y t e a l t o . OV queda en cero si 5=O. C a r r y en cero y AC no se a l t e r a .

i v ) . -DIVISION; i-

D i v i d e A e n t r e B. E l c o c i e n t e que& en A, el r e s i d u o en B. S i 5 e r a cero A r e s u l t a : i n d e f i n i d o y 5e pr-ende OV , c a r r y r e s u l t a e n c e r o y AC n o se a l t e r a

d ) . - I H A N C F E R E N C I A C DE CONTROL i 1 .- INCONDICIQNAC;

:ALL Empuja l a d i r c - c c i dn s i g u i e n t e en l a p i l a y t r a n s f i e r e e l c o n t r o l a

:ALL I g u a l que l a a n t e r i o r pero conduce a c u a l q u i e r 1uQ; i r de l a mcimoria

NTERRCI: .;IOlilES I ~ u a l que l a s a n t e r i o r e s p e r o e j e c u t a d a a r a i z d e una seha1

ET ::c.sume l a d i r e c c i ó n d e e j e cuc i tn dada p o r l a s l o c a l i d a d e s

ET I amo l e . a n t e i - i o r , p e r a b o r r a l os ” f l i p - f l o p s ” d e i n t e r r u p c i o n e s JMP - rsns f iere 131 contt:.ol d e programa a l a d i r e c c i ó n i n d i c a d a JMF’ i d em , 2e i -o dEntt-o d e su pc .g ina . de 2 k- B y t e s . JhP T r c ) n s f r r e n c i . a de control cicntro d e un r c i d i o ce 138 l o c a l i d a d e s

¡.IF ~?DFTRt-9 Surta c-ztoce dos r e 9 i s t r o s p ~ r a e n c o n t r a r l a l o c a l i d a d a donde

ia d i r e c c i ó n i n d i c a d a d e n t r o d e su p a g i n a d e 2 P: Bytes

de programa

l e c t r - i c a ( : i n t e r n a o e x t e r n a 1 . . .

.-+untadc..s por e l SP

F i+ i c i ! i t a l a c r e a c i b n d e c é d i g o r e u b i c a b l e . trnr-tLÍerirá e l c o r j t r o l

Z NZ C I\! c id €3 I3 FC J fUE

SNZ

3P

65

f

I. . i I .

W A L L RDD

GDDC

AJMP ANL

CJNE

CLR

1PL

DA DEC

D I V DJNZ

I NC

MNEMONICOC EN ORDEN Ai-FABETICO (CODIFICACION HEXADECIMAL) I

rrr A , R n

nn @ R i #nn

A , R n nn @ R i Qtnn

r r r A,Hn

nn SRi +fnn

/bb C,bb

nn,A ! I mm

A,nn,rr TFnn, rr

Rn,#nn,rr @RI ,Grin ,rr A C bb A . c bb A A Rn nn @ H i

Rn , t- r nn,rr A DTF'TR Rn nn @Hi

C l l , 31, 51, 71, 91, El, D1, F l 3 rr 2 2 C28, 29, 24, ZB, 2C, 2D, 2E, 2 F 3 1 1 25 2 1 C26, 271 1 1 24 n n a i n e , 39, ZA, SB, zc, 30, ZE, ; j ~ a 1 1

2 1 35 n n C36, 371 1 1 54 nn 2 1 Col, 21, 41 , 5 1 , el, A l , cl, E l l rr 2 2 C58, 59, SA, 5B, 5C, 5D, SE, 5 F 3 1 1 55 nn 2 1 C56, 571 1 1 54 nn 2 1 ü2 bb 2 2 €30 bb 2 2 92 nn 2 1 93 n n mm 3 2

3 2 b5 nn rr 5 2 E 4 n n rr

CEE, B9, EA, BE(, BC, ED, BE , EFJ c n rr 3 2 CE6, E371 nn rr 3 2 E4 1 1 c3 1 1 C 2 bb 2 1 F4 1 1 I33 1 1 BZ bb 2 1 D4 1 1 14 1 1 E 1 8 , 19, l A , lP, lC, LD, l E , 1 F 3 1 1 15 nn 2 1 Cl6, 173 1 1 8 4 1 4 E38, I.9, DA, DB, , 5 , UD, DE, D F I rr 2 2 D5 nn rr 3 2 4 1 1

A 3 1 3 C 09, 09, OA , C)F, O C , OD, OE , OF 3 1 1 05 n n 2 1 C06, O71 1 1

.-

67

'E I BC IC IMP INB I NC I N Z I2 .CALL ,JMP 1ov

yrnvc

í O V X

P LIP Fi.JCH

bb,rr bb,rr rr @A+DTPTR bb,rr rr rr rr rrrr rrrr A,Rn

nn @Ri #nn

bb,C C,bb DTPTR,nnnn Hn,A

nn #nn

Kn mm

, k'R i :: rnm

nn

A,@ArDTPTR

A 'I F R i @DTF'- iH

@Ri ,A 4

' te91 PTF: A A

nn,A

@ R i ,A

<;nn

m+rc

A,Rn nn G R i SC nn

/bb C,bb

nri ,A

nn nn

Gmm

20 bb rr 10 bb rr 40 rr 73 30 bb rr 5.0 rr 70 rr 60 rr 12 rr rr O2 rr rr C E 8 , E?, EA, E E , EC, ED, EE, EFI E5 nn C E 6 , E71 74 nn 92 bb A2 bb 90 nn nn C F B , F9, FA, "3, FC, F3, F E , FFI, CA8, 49 , AA, ,?E, AC, AD, A E , A F I nn C76, 79, 7A, 7B, 7C, 7D, 7E, 7 F l nn F5 nn C88, €19, 8A, Rb, 8c, 8 d , BE, 8 f l nn 85 mm nn CE36, 871 nn 75 nn m m CF6, F71 [ A b , A 7 1 nn C76, 771 nn 93 83 C E 2 , E31 E0 CF2, F31 FO A 4 o o C48, 49, LiA, 'LB, 4C, 4D, &E, 4 F 3 45 nn C.36, 4 7 3 44 nn 72 b b A10 tsb 42 fin 4 3 nn rim DO nn CO nn

í- . -

3 2 3 2 2 2 1 2 3 2 2 2 2 2 2 2 3 2 3 2 1 1 2 1 1 1 1 1 2 2 2 1 3 2 1 1 2 2 2 1 2 1 2 2 3 2 2 2 3 2 1 1 2 2 z i 1 2 1 2 1 2 1 2 1 2 1 2 1 4 1 1 1 1 2 1 1 1 2 2 2 2 2 2 2 1 2 2 - 2 2 2 2

68 '

ZT 3T I

JMP UEB

WAP LH

CHI3 RL

A A 4 A bb C rr A,Rn

nn @ R i #nn

A A,Rn

nn G R i

A , @ F ( i A,Rn

nn C R i %inn

mm n n , A

22 32 23 33 03 13 D2 bb D3 80 rr C98, 99, 9A, 5E, 9 C , 9D, TE, 9Fl 95 nn

i- C96, 973 94 nn c4 CC8, C9, CA, CE, CC, CD, CE, C F I C5 nn CC6, C73 CD6, D73 f68, 69, 6 A , bB, bC, bD, &E, 6 F l 65 nn Cáb, 673 64 nn 62 nn (53 nn m m

. _

1 2 1 2 1 1 1 1 1 1 1 1 2 1 1 1 2 2 1 1 2 1 1 1 2 1 1 1 1 1 2 1 1 1 1 1 1 1 2 1 1 1 2 1 2 1 3 2

-

I

~

1 L 2 3 3 5 5 7 - 5

z-: 3 - d c c - - - íJ 1 2 3 4 5 6 7 8 9 A b

d E F o 1 2 3 4

b 7 8 9 A b

d t F

c

c d

C

69 L I S T A DE INSTRUCCIONES POR ORDEN ASCENDENTE DE CODIGOI

NOP AJMP aaa LJMP aaaa RR A INC A INC nn INC @HO INC @ R l INC RO INC R1 INC R 2 INC R3 INC R4 INC R 5 INC R 6 INC R7 ' 2

JBC bb ,rr ACALL aaa L C A L L aaaa RRC A DEC A DEC nn DEC @RO DEC BR1 DEC RO DEC R1 DEC R 2 TJEC R 3 íhEC R4 iil=c R5 L E C R 6 DEC Ft7 Jti bb,rr 0J:iP ; E a

FiET R L A ADD &,!inn RDD A,nn ADD A, (LRO cCJa A , & ñ l F 3 D A,RO ADD 4,Rl

fill3 A,b3 A . F , ~

c. r,q f-! . [<S t UD k , R b 'DD A , h 7

í?PD A,F\2

30 31 32 33 34 35 36 37 38 39 3 A C;b 3C 3d 3E 3F 40 41 42 43 44 4 5 4.6 47 48 4 9 4A 4b 4c 4 d 4E 4F 50 e- 1 Li 2 53 54 55 56 57 56 El9 5A ,tb 5 C 5d SE 5F

L-

CJNE bh,rr ACALL aaa RET1 RLC A ADDC A,tnn ADDC A , n n ADDC A,@RO ADDC A,@R1 ADDC A,RO ADDC A,RI ADDC A,R2 ADDC A , R 3 ADDC A,R4 ADDC A,RS ADDC C,R6 ADDC F ; , R 7 JC t-r AJMP C a d

ORL nn ,A ORL nn,"mm OHL A,#nn ORL A,nn ORL A,GKO OHL A,@R1 ORL A,RO ORL A,R1 .

C'RL A , F;2

CiRL A ,H4 a m A , M

ORL p. ,h5 CiRL f i , ,F& URL A,,Ft7 3 J C rr- F'PL-L ¿-da ANL nn ,A PNL nn , +!mm AlJL A , : 'nn GNL A,nn A W A M A , i - ñ l

A , C" F\ 0

nr4L A,RO C"L A,R1 fiNL A,RZ

ANL A,R4 Fi.w @,ES

ANL A,R7

ANL P,R3

A N L A,R6

60 bi 62 63 44 6s 66 67 68 69 6A 6b b C bd tE 6F 7 0 71 72 75 74 75

- 16 77 78

. 79 70 7b 7c 76 7 E 7F €!O e l 82 83 64 GS 06 E37 €38 89 SA 8b 6c í3d BE 8F

JZ rt- AJMP aaa XRL nn,A XRL nn,#mm XRL &,+inn XRL A,nn XRL A,@RO XRL A,@Rl XRL A,RO XRL A,Rl XHL A,R2 XRL A , R 3 XRL A,R4 XRL A,R5 XRL A,R6 XRL A,R7 JNZ t-r ACALL aaa ORL C,bb JMP SDTFiTR+A MOV A,#nn MOV nn , %ritm MOV @.HO,Gnn MOV @ R l ,+inn I lOV HO,#nn HOV Rl,.lfnn IIDV RZ,+'nn MOV R3,;inn MOV R4 ,< nn MOV R5,ifrin MOV H6 , i'nni MOV f37,::nn SJHP rr AJ:.iP aaa ANL C,bb MOVC d,QPC+A DIV AB MC3V nn ,rnm MOV nn,&R0 h 0 V nn,Gi\"l HOV nn,RO MOV nn,Rl MOV n n , R 2 MOV nn,Fi3 MOV nn,R4 FiOV nn,Fi'5 MOV nn,F:6 MrJV t.n,F<7

o 1 2 3 4 5 6 7 8 9 A p: C d E F u 1 . 2 3 4

6 7 8 9 A . b

d E F (3 1 2

4 -

b 7 E3 9 ?\ b

id E

SF

- 5

c .

T

.j

L-7 J .

C

MüV DTPTR,#nnnn c0 ACALL aaa cl MOV bb ,C c2 MOVC A,@!A+DTPTR c3 SUBE A,Hnn c4 SUBE A,nn c5 CUEE A,@RO Cb SUBE A,@Rl c7 SUBE A,RO CB SL'E5 A , R l C9 Ci*EB A,HZ CA CI2E.b A,R3 cb SIJBB A,R4 cc SUBE A,R5 cd SUBE A,R6 CE SUBS A,R7 CF ORL C,/bb dO AJMP í a a d i MOV C,bb d2 INC DTF'TF: d 3 MUL AB d4 ????????????-??? tj5

MOV @Rl,nn d7 MOV RO,nn d O MOV H1,nn d4 hOV R2,nn dA MOV R?,nn db l l@V R4.nn dC N1)V R5,nn dd !"iV R6,nn dE PDV R7,NN dF F!t.JL C,/bb EO PC4LL asla E i CF'L bb E2 fF'L. c F3

MOV @RO,nn db

CJNE A, +Inn, t-ir- E 4 C J h K o,nn,rr E 5 t,S :E CiliO, +:nn, rr E6 C3"F C q l ,':nn,rr E7 r , i Y E kc) ,<inn, rr E 8 Ld tGE K1,:;nn,ric E9 C'3r:E .F3, rin , r - r E A CJUE hT,-Ynn,t-r Eb CJNE 64, Lrtn,r-t- Ec CJPJK h5,-'4nn ,rr Ed C7NE Rh,"rin,t-r FE r2L ' t f,7, rIn,rr FF

PUSH nn FO AJMP aaa F i CLR bb F2 CLR C F3 SltlAP CI F4 X C H A,nn F5 X C H A,@RO F6 X C H A,@Rl F7 X C H A,RO F8 X C H A , R l F 9 X C H A,R2 FA X C H A,R3 Fb X C H A,R4 Fc X C H A,R5 Fd

X C H A,R7 FF POP nrr A C A L L saa SETB bb SET5 E: DA A DJNZ nn,rr XCHD liS,@CiO XCHD /A,@R1 DJNZ f ? O , r r - --

DJNZ f?l,rr DJNZ R2,rr DJNZ R3,rr PJNZ 94,t-r DJNZ 135,rr DJNZ 1?6,rr DJNZ R7,rr hOVX I?, @PTPTR AJMP saa

X C H A,R6 FE

M U V X I?,f~F;O rmvx q , c ~ i i CLH A PiOV A,nn ritrv A,I;Hi, PIOV A,IKl MuV A,RO PiOV A , H l hW &,R2 riov A,H~ I*'OV A , F,4 riov A,h5

i-iJV Ft,FI7 NUV A , R 6

MOVX @DTPTR,& ACflLL aaa MOVX A,(aRO MOVX A,@Rl C P L A MOV nn,A MOV BRO,A MOV @Rl,A MOV Ró,4 MOV R1,A MQV R2,A MOV R3,A MOV R 4 , A MOV R5,A MOV R6,A MOV R7,A

. . ” i

71 APENDICE E: REGISTROS DE FUNCIONES

ESPECIALES (8031)

La5 d i r e c c i o n e s . estan e x p r e s a d l ? s e n m a y u s c u l a s , y los m n e m o n i c o s en i n u s c u l as.

Las columnas primera y s e g u n d a s x p r e s a n d i r e c c i o n y m n e m o n i c 0 d e l jte . Las c o l u m n a s a l a d e r e c h a i n d i c a n l o mismo p e r o p a r a b i t .

D=tr h 1

92-pi.2

’7 A =: r b 8 . .

AZ-pZ. 2

A ~ = : P X 1

E S = i n t O

FQ=pi: 1

D2=ov

E*‘=a. 2

- -- f -. 7- "

72

t c o n = 8 8 C o n t r l o l de los c o n t a d o r e s / c r o n ó m e t r o s e x t e r n a s

f (c i / l ) k a n d e r a s de s o b r e f l u j o de los c o n t a d o r e s

e i n t e r r u p c i o n e s

(0/1) . 1 si h a

h a b i d o r u b r e f l u j o , p u e s t a p o r h a r d w a r e , se l i m p i a p o r e j e c u c i ó n de

l a i n s t r u r c i o n HETI , Si l a s i n t e r r u p c i o n e s e c t a n habilitadas

t r a n s f i e r e e l c o n t r o l dc- p r o g r a m a a la5 d i r e c c i o n e s OB o la , e n

.forma de s u b r u t i n a d e c w v i c i o . - -

r (O/ l ) B i t cie a r r a n q u e de c b n t a d o r e s ( 0 / 1 ) . 1 e5 c o n t a n d o s o n

m a n e j a d a s p o r software . e ( O / l ) E { a n d e r a d e ' d e t e r c i ó n cje. i n t e r r u p c i o n e e externas. 1 si hay

i n t e r r u p c i ó n p e n d i e n t e , p u e r s t a por h a r d w a r e , A, se b o r r a c o n la

( i i j e c u c i 0 n p w p r o g r a m a d e l a i n s t r u c c i o n R E T I . S i 12s

i n t e r r u p c i o n t i c e s t a n habi 1 i tadas , t r a n s f ¡ere e l c a n t r o l a 1 a s

d i r e r c i o r ~ e s O3 o 13 , e n .forma d e s u b r u t i n a d e servicio . t (0/1) I.Soda de d e s e n c s d e n n m i e n t o oe i n t r r u p c i o n e s externas . 1 lc?s

p r o g r c m a p u r f l a n c o d e b a j a d a , O por nivel (OV ) . 5 u n mane jadas p o r

5af t w i3 Y- e.

73 I

E l r e g i s t r o !se d i v i d e e n dos " n i b l e s " de control , que c o r r e s p o n d e n

L cada c r o n 6 m e t r o / c o n t a d o r .

S i gates1 , e n t o n c e s el c o n t a d o r corre s ó l a m e n t e c u a n d o el b i t

. r < O / l ) r * l , y s i r n u l t a n e r m e n t e l a 5Í-hal i n t ( O / l ) = + 5 V . Si g a t e = O e l c o n t r o l es

in i c a m e n t e por 1 a b a n d e r a t r ((:I/ 1 ) . S: c/t*l entonces es c o n t a d o r ( e n t r r d ñ p o r t ( í / ü ) ) , si es cero

jp6:t-a como crcmdmetr-o ( d i v i d e e n t r e 12 ' l a í r ' e c i i e n c i a 13.1 o s c i l a d o r ) . __ -~

Las modos d e o p e r a c i á n se p r o g r a m a n segun 105 b i t s ml y mO , de l a

; i g u i G n t f - manera:

. ) o Modo MCS-48: t l (t?/l) s i r v e como d i v i s o r de pree. ;ca.IIari !>erito de 5

b i t s , t h ( O / 1 ) l l e v a l a c u e n t a d e l o s b i t s 12 - S . :I 1 t5crlo 1 : Se ' c a n f i q u r a ccmo c o n t a d o r d e 16 b i t s

I

ulahref lujo d e l conti,dor 1 , que no dic;p-ui-ie d e t.f 1 n i d e t r l .

scon=98 ContrlDl d e l a i n t e r f ñ s e serie.

F Los modos d e a p e r a c i ó n p r o g r a m a d o s p o r 5 m O y sml son : e--

o Modo d e e x p a n s i ó n p a r a e n t r a d a / s a l i d a por m e d i o d e un r e g i s t r o - '

de corrimientoc.

i

o

1

m 2

en

h8

b8

i

i

H e c e p E o r / t r a n s m i s o r asfrtcrono . - iniversal ( UART ) d e €3 b i t s c o n

v e l o c i d a d de f l u j o v a r i a b l e . UART d e 9 b i t s , c o n velocidad d e f l u j o c o n s t a n t e . UART d e 9 b i t s , con v e l o c i d a d d e f l u ~ o v c , r i c ; b l e .

~-

D e s h a b i l i t a c i ó n d e l a recepción de campos para l os c u a l e s

Pc.-h,- b i 1 1 t a el r r z E p t o r ( h a b i l i t a si e c t a e n O . No v en o b i t d e datos a t r a n t z r n i t i r . Noveno b i t d e d a i o s r e c i v i d o s .

.. " . . . . ~. .- - .>.:-. ".

iec=k8 Control de habilitación de interrupciones

75 '

a Habilitación g l o b a l d e interrupciones ( 1 habilita ) . 5 Habilitación específica de l a interrupción del puerto serie.

I ti i ahilitación especifica d e l c o n t a d o r 1

1 >: 1 Hehilitrción especifica dc l a interrupción e x t e r n a 1 . I I I I

- I

to Habi 1 itacidn especlfica d e l contsdor o

:.: o Habiliti zión especifica d e la interrupción e x t e r n a O .

. . .. / . . . .. . . . , . . I r .

p3=b0 Puerto 3 (+unciones al ternas de hardware).

I Pu l so generado por hardware para informar que e l bus está en I tet-cer ~ k t s d o , para l a entrada de dato ( a c t i v o en O ) . I

5

I t 1

-ltO

:d

Pu l so generado por hardware para i nd i ca r que el bus t i e n e un

d a t o de s a l i d a val i do ( a c t i v o en O 1

Entrada de re lo j al contador 1 , o entrada muestreada . Entrada de r e l o j a l coqtador C. , o entrñda murlstreada .

~- _ _ Entrada de i n t er r upc i ó n e x t e r n a 1

En t r- ad a de i n t Et- rupc i cfin e:.: t et- ri a O

Sn l i da de l transmisor s e r i e , o r e l o j para r e g i s t r o de

corrimi-ntos. ,

< d Entrada a l receptor s e r i e , o entrada s a l i d a para r e g i s t r o de

1 r:Gr rimieritas.

t Todas i r r t ?5 fttnciories p~it .d~.n ser , alternéitivanirnte , l ine-as de 0

7 t r c ~ d c / T a l i d a cuntrclc-dazi por e l pur r to 3 . Si sun funciclnes dlternacj

7 7

i p c = B B C o n t r o l ae p r i o r i d a d e s d e i n t e r r u p c i p c i ó n .

3 5 b i t

2tl E i t

3x 1 B i t

3 t O b i t

3 x o Bit

d e c o n t r o l d e p r i o r i d a d d e l p u e r t o serie . 1 . c o n t a d or de c o n t r o l ' d e p r i or i d a d d e l

d e c o n t r o l d e p r i o r i d a d d e l a i n t e r r u p c i ó n e : í t e r n a 1 .

d e c o n t r o l d e p r i or i dad del c o n t a d c s - 6 , .

d e control d e prioricj-ad-- b e l a i n t e r r u p c i ó n externa O .

En tcdos l o s cacos el v c i l o r :L i n d i c a a l t a prioridad . A pr io r idades

. c r ~ e j . rite5 1 a p r iot- i dad i n t r 1 nceca E' 5 :

I n t e r - r u p c i d n E x t e r n a O CmAxima p r i o r i d a d ) , C o n t n d o r ' O , interrupción E x t e r n a

1 , ccnt.- idor 1 , y p u E r t 8 ict-ie ( m i n i m a p r i o r i d a d )

__

5 . . . . ,_ . . . . . . , . . ” ... . . .. .. . I .

78

psw=DO P a l a b r a de estado de p r o g r a m a .

E a n d e r a d e acL?rt-eo de b i t 3 a b i t 4 del acarnulador , ucada pura

a j u s t e dec:. mal

5 1 , rs2

B a n d e r a

.€-i n d er a

E<;. ri o er a

El

el usuár í o

E?c.ndei-<-s d e s e l e c c i ó n de bknco de r e g i s t r o s .

. . , .l. C“,

.*.

de

de

r e s e t

<.

s c t r e f l u j o , p i a r a l a cuma , r e s t a , d i v i s i ó n 6

(ru1 t i p:i i csción .

p a - i d a d d e l dcto contenioo en el s c u m u l a d o r .

p o n e F!!f t a p , i l c b r a en ceros .

* _

o

1

2

3

4

5

b

APENDICE F: COMANDOS DEL MONITOR