univ€rsidrd148.206.53.84/tesiuami/uam7816.pdf.-area multiusos: que va de los bytes 30h al 7fh y...

109
UNIV€RSIDRD RUTÓNOMR METROPOlITRNR. PROYECTO TERMINRL DE INGENIERíR RSESOR: ING. JESUS BARRIOS ,<- . I , ._ . €N€flO TW3.

Upload: phamque

Post on 12-May-2018

215 views

Category:

Documents


3 download

TRANSCRIPT

UNIV€RSIDRD

RUTÓNOMR

METROPOlITRNR.

PROYECTO TERMINRL DE INGENIERíR

RSESOR: ING. JESUS BARRIOS ,<- . I , ._ .

€N€flO TW3.

POR LÓPEZ SALGADO NIVARDO

ÍNDICE.

POR LÓPEZ SALGADO NIVARDO

ídice

AN'IECEDENTES

BBLIOGWÍA Buffer al bus principal Buffer en la líneas

Carga de datos Código CONC1,IJSIONES Control de columnas Control de renglones Control para la recepción remota Controlador de Bus

DEISCRIPCI~N Iliagarma 1

Iliagarma 3

Diagrama 10

Diagrama 1 1

Diagrama 12 Diagrama 13

Diagrama 2

Diagrama 4

Diagrama 5

Diagrama 6

Diagrama 7

Diagrama 8 Diagrama 9 Diagramas Distribución de baja potencia

--&

"D-

ETAPA DE CONTROL DIGITAL ETAPA DE POTENCIA Etapa de potencia para las columnas Etapa de potencia para los renglones

31

107 44 45

43 74 104 50 49 47 46

35 57

59

66

67

68

69

58

60

61

62

63

64

65

56 48

40 51 53 52

Figura 1 Figura 2 Figura 3 Figura 4 FUENTE DE ALIMENTACI~N

Gráfica 1

Hardware

ÍNDICE

INTERFAZ PC-PEARRON INTRODIJCCI~N

MATRIZ DE IEI>'S Microcontrolador MC-805 1

ORF,TrvOS

PROGRAMACI~N

RESIJLTAIIOS

Software

TEORÍA

"G-

""

"0-

"p-

-R-

"S-

POR LÓPEZ SALGADO NIVARDO

36 55 72 73 37

38

12

2

39 8

54 41

6

70

I O0

23

11

POR LÓPEZ SALGADO NIVARDO

OBJETIVOS.

POR LÓPEZ SALGADO NIVARDO

1.- Establecer en forma concreta y objetiva la descripción del

proyecto, así como las metas que se pretenden alcanzar.

2.- Desarrollar cada una de las etapas del proyecto y evaluar su

resultado hasta lograr los resultados esperados.

3.- Aplicar las metodología de investigación para en su caso

poder modificar alguna etapa del proyecto que no cumpliera con

las metas establecidas, teniendo en cuenta que dicha modificación

debe respetar las características esenciales del proyecto.

4.- Obtener el producto final que cumpla con los

requerimientos establecidos.

5.- Concluir los resultados y las experiencias obtenidas

HOJA 6

POR L6PEZ SALGADO NIVAKDO

POR LÓPEZ SALGADO NIVARDO

El desarrollo de los periféricos para la computadora personal tiene un crecimiento gigantesco debido a la popularidad que han tomado estas en las labores cotidianas de todos los ámbitos, por esta razón se ha puesto énfasis en desarrollar un producto que pueda aprovechar todas las ventajas que las micro computadoras aportan.

Desde hace algunos años he tenido la inquietud de investigar como se puede controlar un arreglo matricial de puntos luminosos, después de hacer varios experimentos simples en los cuales se obtuvieron resultados esenciales, decidí tratar de elaborar un sistema que desplegara un caracter en una matriz de 8 X 8 led's. Hay que hacer notar que en este experimento el control de la sincronización era totalmente por hardware, el objetivo era: hacer que el dispositivo luminoso respondiera físicamente a la periodicidad de los pulsos aplicados, para después hacer que la sincronía fuera generada por softwarel.

Ahora el reto esta en hacer que el hardware fuera muy sencillo y el control central estuviera regido por un micro-controlador adecuado, se analizaron las características de algunos microcontroladores de 8-bits con el 2-80, 6800, HC-11, 8051, etc. Se eligió el MC-8051 por razones que se presentarán ampliamente.

El micro-controlador MC-8051 pertenece a la familia IntelMR- que por sus características lo hacen el más adecuado para esta aplicación

Después de lograr que el micro-controlador pudiera desplegar un caracter en la matriz de 8 X 8 se pensó en extender el tamaño a 64 X 8, en este punto se tuvieron que resolver un gran número de problemas como son la velocidad de escaneo de las líneas horizontales ya que como en la televisión, existe una frecuencia mínima por debajo de la que se observa parpadeo en una imagen fija, otro de los puntos a vencer es la sincronización ya que los retardos inducidos por los cables es considerable. Es en el punto anterior en donde se experimento en forma exhaustiva

La aplicación de la tecnología electrónica en la vida diaria hace que tareas dificiles se hagan con menor esfuerzo, por ejemplo: la automatización de la industria armadora de automóviles realiza muchas actividades que hasta hace algunos años eran realizadas por personas, ahora la electrónica hace posible que los robots desempeñen con mayor eficiencia estos trabajos.

'Esto implica hacer que la generación de los contadores que permiten la sincronización se hiciera por programa, esto trae como beneficio la flexibilidad y el ahorro en componentes electrónicos, ya que muchos componetes son sustituidos por un microcontrolador,

HOJA a

POR LÓPEZ SALGADO NIVARDO

El área de la electrónica es una de las ciencias que ha tenido los avances tecnológicos más impresionantes hasta la fecha, por lo tanto los proyectos que involucran soluciones con semiconductores rápidamente se ven superados con las nuevas tecnologías que surgen en cuestión de meses, estas nuevas tecnologías se caracterizan por ofrecer soluciones más poderosas y esto se basa en la gran escala de integración en un solo "Chip", esto trae como consecuencia la reducción de tamaño y consumo de energía, sumado a esto tenemos que gracias a la automatización en su fabricación, el costo es muy bajo. Por lo anterior es muy importante al hacer un diseño, considerar los componentes actuales para echar mano de todas las herramientas que la tecnología moderna nos facilita y poder competir en un mercado amplio ya que hoy en día es fácil obtener en México los componentes electrónicos que lanzan al mercado las principales empresas mundiales en el ramo.

El area sobre la cuál se enfoca este proyecto va encaminada a mejorar las herramientas de publicidad masiva que existen en el mercado, tradicionalmente en las calles observamos carteles, murales, anuncios luninosos estáticos

La idea sobre la cual funciona el Pizarron Electrónico se basa en el principio de escaneo con el que funciona un monitor de video.

Para poder mostrar una imagen sobre una matriz de puntos*, es necesario conocer las características de respuesta del ojo humano, ya que existe un efecto de retención al observar una imagen luminosa,es decir, una imagen puede cambiar de estado durante una fracción de segundo y mas tarde volver a la normalidad y nosotros no darnos cuenta de este suceso.

Para conocer este tiempo se han hecho multiples experimentos y muchos de ellos han determinado que cuando una imagen luminosa se repite por lo menos 60 veces por segundo, el ojo humano no detecta cambios en el estado de esa imagen luminosa, lo que implica que el tiempo máximo para volver a mostrar una imagen que deseamos que aparezca permanente es de 16.66 ms.

* En un monitor de computadora a cada punto se le llama pixel y mide aproximadamente 0.28mm de diámetro, la pantalla está formada por una matriz de pixeles con 1024 columnas y 768 renglones (monitor SVGA).

POR LbPEZ SALGADO NIVARDO

TEORÍA .

POK LÓPEZ SALGADO NIVARDO

"Hardware".

POR L6PEZ SALGADO NIVARDO

El microcontrolador 8051 es uno de los miembros de la familia MCS-51 de INTEL. Esta familia fue hecha para usarse en aplicaciones de tiempo real, control industrial y para periféricos inteligentes de computadoras.

CARACTERíSTICAS:

* NO TIENE:

-Memoria de programa interna pero puede direccionar 64 Kbytes de memoria de programa externa y hasta 64 Kbytes en memoria de datos, usando circuitos integrados de memoria externos.

* TIENE:

-128 Bytes de memoria de datos interna y una parte de ella se puede direccionar bit por bit. -Una área de 128 Bytes de memoria interna asignada para los SFRs (Special Function Registers).

Solo se pueden usar 21 de ellos, los demas Intel los ha reservado para expansiones futuras. -Una unidad de procesamiento central. -4 puertos programables de entradalsalida (32 líneas en total) algunos de estos se usan para el

manejo de la memoria externa. -2 timerlcontadores de 16 bits cada uno. -1 puerto serial. -Circuiteria interna para el oscilador del reloj. -4 bancos de registros (cada banco tiene 8 registros), localizados en la memoria de datos interna. -5 líneas de interrupción (2 de fuentes externas y 3 de fuentes internas: 2 de los timers O y 1 y otra del

puerto serial) con dos niveles de prioridad.

La familia del 8031 tiene dos tipos de memoria: la memoria de programa y la memoria de datos.

La memoria de programa puede ser hasta de 64 KBytes. Los primeros 4 KBytes pueden residir dentro del microcontrolador (8051) o pueden estar los 64KBytes externamente (8031 y 8051).

Dentro de la memoria de datos se distinguen dos tipos: una es la externa que puede crecer hasta 64 KBytes y la otra es la interna que consta de 128 Bytes, más 21 SFRs (Special Function Register). Los 128 Bytes mencionados pueden ser accesados ya sea directamente (MOV data addr) o bien indirectamente (MOV @Ri). Los SFRs sólo pueden ser direccionados en forma directa.

Los 128 Bytes de memoria de datos interna están divididos en tres áreas :

1 .-Bancos de registros 0-31 de la dirección OOH a la 1 FH (32 Bytes). Después del reset el banco que se usa por default es el O; sin embargo se puede seleccionar por sofware otro banco. Cada banco contiene 8 registros numerados del O al 7. El reset inicializa el stack en la localidad 07H y hará que el stack coincida con el segundo banco de registros por lo que si se desea usar más de un banco de registros se debe inicializar el stack pointer a una localidad superior.

2 .-Area direccionable por bit de la dirección 20H a la 2FH para un total de 16 Bytes. Cada uno de los 16 Bits de esta área puede ser direccionada directamente (0-7FH). Ensamblador se puede hacer referencia a estos Bits de dos maneras una mediante sus direcciones directas (O a7FH) y la otra es con referencia a sus Bytes (20H-2FH) de esta manera los Bits 0-7 pueden referirse como los Bytes 20.0-20.7 ó el bit 8 como el 21 .O y así sucesivamente. Cada uno de estos 16 bytes de esta área también puede ser direccionado como Byte.

3 .-Area multiusos: que va de los Bytes 30H al 7FH y que puede usarse como área de datos o

Los SFR's (Special Function Register) con que cuenta el 8031 son: cualquier otro uso.

HOJR 13

POR LÓPEZ SALGADO NIVARDO

AC C [dirección OEOH]

ACC es el registro acumulador. El mnemónico para cierta instrucciones es A. Es el registro más usado en el juego de instrucciones.

B [dirección OFOH]

El registro 6 se usa durante las operaciones de multiplicación Y división. Para las otras instrucciones puede ser usado C O ~ O otro registro más,

Psw (Program Status Word) [dirección ODOH]

El registro PSW contiene información del status del programa, ver descripción de sus Bits más adelante.

HOJA 14

POR L6PEZ SALGADO NIVARDO

S P (Stack Pointer) [dirección 81H]

El registro SP es un registro de 8 Bits. Se incrementa antes de meter datos en la pila ya sea por instrucciones PUSH o CALL. El stack o pila puede residir en cualquier lugar de la memoria de datos interna. Después de un reset el SP se inicializa con un valor 07H lo que hace que el stack comience en la localidad 08H.

D PTR (Data Pointer) [dirección 83H y 82H]

El registro DPTR esta formado de un Byte alto (DPH) y un Byte bajo (DPL). Su función es guardar una dirección de 16 Bytes. Estre registro puede ser manipulado como un registro de 16 Bytes o como dos registros independientes de 8 Bytes.

POrn P3 (Puertos O a 3) [dirección 80H, 90H, OAOH,OBOH]

Son los “laches” de los puertos de entradalsalida O al 3.

HOJA 15

POR LÓPEZ SALGADO NIVARDO

S B U F [dirección 99H]

En realidad son dos registros; un buffer de transmision y un buffer de recepción. Cuando un dato se transfiere a SBUF este va al buffer de transmisión donde se mantiene para la transmisión serial (el transferir un Byte a SBUF es lo que inicia la transmisión. Y cuando el dato es transferido del SBUF se lee del buffer de recepción.

(THO,TLO)(TH I ,TH I) [dirección 8CH,8AH,8DH,8BH]

Son los registros de 16 Bits de los timerlcontadores O y 1 respectivamente. TH corresponde al Byte alto y TL al Byte bajo.

I P (Interrupt Priotity) [dirección OB8HI

Registro de control para manejar la prioridad de las interupciones ver descripción de sus Bits más adelante.

POR LÓPEZ SALGADO NIVARDO

I E (Interrupt Enable) [dirección OA8HI

Registro de control para habilitar las interrupciones, ver descripción de sus Bits más adelante.

T M O D Fimerlcounter Mode Control) [dirección 89H]

Registro de control para configurar el modo de operación de los timerlcounters, ver descripción de sus Bits más adelante.

TC O N vimer/Counter Control) [dirección 88H]

Registro de control para arrancar o parar los timers. También contiene Bits de status, puestos por hardware, de las interrupciones externas y las interrupciones de los timers cuando llegan a un estado de sobreflujo, ver descripción más adelante.

HOJA 17

POR L6PEZ SALGADO NIVARDO

SC O N (Serial Control) [dirección 98H]

Registro de control y status del puerto serie.

Los SFR’s que tienen funciones especiales asignadas a sus Bits son:

PS Wprogram status word (direccionable por bit).

CY AC co RS1 RSO ov - P CY = PSW.7 Bandera de acareo.

AC = PSW.6 Bandera auxiliar de acarreo.

FO = PSW.5 Flag O disponible al usuario para uso general.

RSI PSW.4 Bit 1 para seleccionar banco de registros.

RSO = PSW.3 Bit O para seleccionar banco de registros. Estos dos bits (RSI y RSO) determinan el banco de registros que se usa: (O, O) Banco O (00H-07H) (O, 1) Banco 1 (08H-OFH) (1, O) Banco 2 (10H-17H) (I, 1) Banco 3 (18H-IFH)

ov = PSW.2 Bandera de sobreflujo. - PSW.l Bandera definible por el usuario

P - PSW.0 Bandera de paridad.

I -

- Se pone a 110 por hadware cada ciclo de instrucciones para indicar si el número de bit “1” en el

acumulador es imparlpar.

HOJR 18

? b a t y & 5 7 d d e 7 V POR LÓPEZ SALGADO NIVARDO

/E interrupt enable (direccionable por bit).

€R I I €S €T1 €X1 €TO €X0

EA = 1E.7 Deshabilita todas las interrupciones. Si EA=O ninguna interrupción será reconocida. Si EA=I cada una de las interrupciones se habilita de acuerdo a su bit correspondiente.

- I 1 E.6 No implementada, reservada para futuros usos. I 1 E.5 No implementada. ES 1E.4 Habilita o deshabilita la interrupción del puerto serial. ET1 = 1E.3 Habilita o deshabilita la interrupción del timer 1. EX1 = 1E.2 Habilita o deshabilita la interrupción externa 1. ET0 1 E.l Habilita o deshabilita la interrupción del timer O. EX0 = 1 E.0 Habilita o deshabilita la interrupción externa O.

Si el bit es O la interrupción correspondiente se deshabilita de acuerdo a su bit correspondiente.

/p interrupt priority (direccionable por bit). I PS PT1 PX1 PTO PXO

- IP.7 No implementada, reservada para usos futuros. I - IP.6 No implementada, reservada para usos futuros. - IP.5 No implementada. PS = IP.4 Define el nivel de prioridad de la interrupción del puerto serial. PTI = IP.3 Define el nivel de prioridad de la interrupción del timer 1. PXI=IP.2 Define el nivel de prioridad de la interrupción externa 1. PTO = IP.l Define el nivel de prioridad de la interrupción del timer O. PXO IP.0 Define el nivel de prioridad de la interrupción externa O. Si el bit es O la interrupción correspondiente tiene un nivel de prioridad bajo, si el bit es

- -

1 el nivel de prioridad es alto.

POR LÓPEZ SALGADO NIVARDO

TCON timerlcounter control (djreccjonable por bit).

TF 1 Tf? 1 TF O TRO 1€1 IT1 K O IT0

TF1 (TCON.7) Bandera de sobreflujo del timer 1. Se activa por hardware y se desactiva por hardware también cuando se hace el salto al vector de interrupción.

TR1 (TCON.6)= Bit de control del timer 1. Se pone a 1 para arrancarlo y a O para detenerlo.

TFO(TCON.S)= Bandera de sobreflujo del timer O. Se activa por hardware y se desactiva, por hardware también, cuando se hace el salto al vector de interrupción.

TRO(TCONA)= Bit de control del timer O. Se pone a 1 para arrancarlo y a 0 para detenerlo.

IEl (TCON.3) = Bandera de flanco de la interrupción externa 1. Se pone a 1, por hardware, cuando se detecta el flanco de la interrupción externa. Se pone a O por hardware, cuando se procesa la interrupción

IT1 (TCON.2) Bit de control para el tipo de interrupción 1. Se pone por software, si es 1 indica que la interrupción se activa por flanco de bajada y si es O que se activa por nivel bajo.

IEO(TCON.I) = Bandera de flanco de la interrupción externa O. Se pone a 1, por hardware, cuando se detecta el flanco de la interrupción externa. Se pone a O, por hardware, cuando se procesa la interrupción.

ITO(TCON.O) = Bit de control para el tipo de interrupción O. Se pone por software, se es 1 indica que la interrupción se activa por flanco de bajada y si es O que se activa por nivel bajo.

POR LÓPEZ SALGADO NIVARDO

TMOD timerlcounter mode control (NO direccionable por bit)

GRT€ UT M1 M0 GRT€ UT M1 M0

TIMER f TIMER O

GATE TMOD.7 y TMOD.3 Cuando TRx (en TCON) está puesto a 1 y GATE=I, el timer x correra solo mientras el pin INTx esté en nivel alto (control por hardware). Cuando GATE=O, el timer x correra solo mientras T k = l (control por software).

c/T = TMOD.6 y TMOD.2 Selector de timer o contador. O indica timer (entrada del reloj del sistema interno. 1 indica contador (entrada del pin Tx).

MI TMOD.5 y TMOD.l Bit selector de modo.

M0 = TMOD.4 y TMOD.0 Bit selector de modo.

M I M0 Modo de operación.

O 0 timer de 13 bits (timer O y 1) o 1 timer de 16 bits (timer O y 1) IO modo 3 timer O 1 1 modo 3 timer 1.

POR LÓPEZ SALGADO NIVARDO

“Software”.

POR L6PEZ SALGADO NIVARDO

El juego de instrucciones de estos microcontroladores se puede dividir en : 55% son instrucciones de un byte, 36% son de dos bytes y 9% de 3 bytes; 58% de las instrucciones toman 1 us en ejecutarse 40% tardan 2 us, y 2% se ejecutan en 4 us (con un reloj de 12 MHz), las instrucciones que se llevan 4 us son las instrucciones para realizar multiplicaciones y divisiones.

Para comprender el juego de instrucciones de la familia del 8031 hay que tener en cuenta que, desde el punto de vista de las instrucciones, existen 3 tipos de memoria: 64 Kbytes de memoria de programa (interna, externa o ambas) que se direccionan con el registro PC (Program Counter). 64 Kbytes de memoria de datos externa que se direccionan con el registro DPTR (Data Pointer), y la memoria de datos interna que puede direccionarse de varias maneras. Cada instrucción hace referencia a uno de estos tipos así que hay que estar seguros de donde se va a trabajar para de este modo escoger la instrucción adecuada.

Hay una gran diferencia entre la memoria de datos interna y externa, las direcciones de datos internas se refieren a aquellas que están dentro del chip y que pueden accesar de varias formas; mientras que las direcciones externas están localizadas fuera del chip, en los 64 Kbytes de memoria de datos externa y sólo puede ser accesada con las instrucciones MOVX.

HOJA 23

POR LÓPEZ SALGADO NIVARDO

MEMORIA DE DATOS INTERNA:

Las 4 principales formas de direccionamiento de la memoria de datos interna son: directa,inmediata, por registro, e inderecta por registro. El modo directo usa una dirección de la RAM interna para accesar el dato, el modo inmediato usa el valor del dato que sigue a la instrucción; el direccionamiento por registro usa un número de registro para accesar el dato; y el modo por registro indirecto toma el contenido del registro como una dirección directa para accesar el dato.

MEMORIA DE DATOS EXTERNA:

La instrucción M O M transfiere un byte entre el acumulador y la memoria de datos externa. La dirección de la memoria de datos externa está contenida en el registro DPTR de 16 bits, eta dirección puede ser cargada el DPTR con una sola instrucción MOV o bien puede ser incrementada. Desafortunadamente no hay más instrucciones de 16 bits.

El 8031 tiene un solo acumulador, llamado “ACC o A dependiendo de la instrucción. Casi todas las instrucciones usan el acumulador ya sea en una forma u otra. Un acumulador auxiliar llamado B se usa en las instrucciones de multiplicación y división Existen muchas instrucciones de manipulación de datos que pueden moverlos de o hacia uno de los registros del banco de registros activo, existen 4 bancos de registros. El Stack se puede colocar en cualquier lugar de los 128 bytes de memoria de datos interna. El contenido de cualquier localidad de la memoria de datos interna se puede meter y luego sacar del stack.

HOB 24

POR LÓPEZ SALGADO NIVAKDO

MANEJADOR DE BITS:

Debido a que la mayoría de las aplicaciones de un controlador requiere el manejo de bits en entradalsalida, el 8031 tiene una gran variedad de instrucciones para manipular bits. Una sola instrucción puede poner, limpiar, complementar, o copiar cualquier bit en la memoria de datos interna. Los puertos de entradalsalida caen dentro de ese espacio por lo que no hay necesidad de usar las clásicas instrucciones de "leer, enmascarar, poner, combinar, escribir" que se tienen que hacer con otros microprocesadores. Esta capacidad de direccionar bits permite que cualquier bit de algún puerto de entradalsalida sea transferido a otro pin de otro puerto vía el acumulador booleano (el bit de carry). En total se tienen 210 bits que se pueden direccionar individualmente y cada uno de ellos se puede probar y así tomar decisiones en base a su estatus (es decir saltos condicionados).

DISPOSITIVOS DE ENTRADNSALIDA:

El 8031 no tiene instrucciones explícitas de entradalsalida ya que maneja un esquema de "memory mapped". Los puertos del chip estfrn mapeados en el espacio de memoria de datos interna, y se accesan con la misma instrucción MOV que se usa para las otras tranferencias, esto quiere decir que el contenido de cualquier registro e en general de cualquier localidad de la memoria interna puede ser trasferida directamente a uno de los 4 puertos de entradalsalida o viceversa. Todos los periféricos externos que se usen tienen que ser mapeados en la memoria de datos externa y accesados con la instrucción MOV.

Se debe hacer incapie en las poderosas capacidades aritméticas que posee el 8031 (instrucciones de multiplicaci6n y división rapidas) que pueden ser aprovechadas para aplicaciones de tiempo real y de procesamiento de sellales, esto junto con sus grandes capacidades de manejo de bits lo hacen un microprocesador id6neo en aplicaciones de control.

HQJJA 25

POR LÓPEZ SALGADO NIVARDO

DESVENTAJAS:

El 8031 tiene una arquitectura basada en el acumulador para accesar la memoria de datos externa, por lo que se tiene que desperdiciar tiempo y código en leer un dato al acumulador y luego transferir el acumulador para conseguir mover un dato de una localidad a otra en la memoria externa.

La única instrucción de salto condicional es:”compara y salta si no es igual” esto hace que se tenga que desperdiciar c6digo y tiempo para hacer saltos condicionales del tipo:”compara y salta si es igual”, “comparta y salta si es menor”, “compara y salta si es mayo?.

Si bien es cierto que basta una instrucción para cargar el registro DPTR de 16 bits y también una para incrementarlo no existe una para decrementarlo. Este registro es con el que se hace el acceso a la memoria de datos externa por lo que se puede imaginar los problemas que esto trae consigo.

INTERRUPCIONES:

El 8031 tiene, como ya se ha mencionado, 5 fuentes de interrupción:

INTERRUPCIONES EXTERNAS:

Las interrupciones externas INTO e INTI pueden ser activadas por nivel o por transición dependiendo del estado de los bits IT0 e IT1 en el registro TCON. Las banderas que realmente generan estas interrupciones son los bits IEO e IEl del registro TCON; así cuando un dispositivo externo genera una interrupción y esta señal llega a uno de los pines de interrupción del 8031 se enciende la bandera correspondiente. Si la interrupción esta configurada como activa por transición la bandera correspondiente se limpiara al saltar al vector de interrupción, pero si es activa por nivel entonces es el dispositivo externo el que debe desactivar la bandera (dejando de pedir interrupción).

POR LÓPEZ SALGADO NIVARDO

INTERRUPCIONES DE LOS TIMERS:

Las interrupciones de los timers O y 1 son generadas por medio de las banderas TFO y TFI (del registro TCON) que se activan cuando se llega al sobreflujo de los contadores correspondientes (salvo en el caso del timer O trabajando en modo 3). Las banderas correspondientes se desactivan una vez que se haga el salto al vector de interrupción.

INTERRUPCION DEL PUERTO SERIAL:

La interrupción del puerto serial se genera mediante la función OR de las banderas T I y R1 del registro SCON. Ninguna de estas banderas se desactiva al saltar al vector de interrupcibn de hecho la rutina de atención de interrupción tiene que determinar cual de las dos banderas es la que generó la interrupción y despuks desactivar la bandera correspondiente.

En general todas las banderas que generan las interrupciones pueden ser activadas o desactivadas por sofware, con el mismo resultado que si hubieran sido activadas o desactivadas por hardware. Esto quiere decir que pueden generarse interrupciones o bien cancelar interrupciones pendientes por medio de sofware.

HABILITACION DE INTERRUPCIONES:

Cada una de las interrupciones puede habilitarse o deshabilitarse individualmente por medio del bit correspondiente en le registro IE. Este registro tiene también un bit pata deshabilitar globalmente todas las interrupciones.

HOB 27

POR LÓPEZ SALGADO NIVAKDO

PRIORIDAD DE LAS INTERRUPCIONES:

Cada una de las interrupciones puede ser individualmente programada a uno de dos niveles de prioridad mediante el bit correspondiente en el registro IP.

Una interrupción de prioridad baja puede a su vez ser interrumpida por una de alta prioridad, pero no por otra de baja prioridad. Una interrupción de prioridad alta no puede ser interrumpida por ninguna otra interrupción. Si se reciben dos peticiones de interrupción, de diferente prioridad simulthneamente la petición de mayor prioridad es la que se atiende; sin embargo se las peticiones son de igual prioridad una secuencia de “pool” interna es la que determina cual petición es la que se atiende.

TIMERS:

El 8031 tiene dos timerskontadores con un registro de 16 bits cada uno; timer O y timer 1. Cada uno de ellos puede ser configurado para trabajar como trimer o como contador de eventos.

En la función de timer el registro se incrementa cada ciclo de máquina, así que se puede decir que es un contador de ciclos de máquina. Ya que cada ciclo de mhquina consiste de 12 períodos de oscilador, la velocidad de conteo fes de 111 2 de la frecuencia del oscilador del reloj.

En la función de contador el registro se incrementa cada vez que haya una transición de 1 a O en el pin de entrada correspondiente (TO o TI).

Cada timer tiene un registro de 16 bits formado por un byte alto (THx) y un byte bajo (TLx), donde “x” es O ó 1 según el timer correspondiente.

Ademhs de configurarse como timers o como contadores los timers pueden programarse para trabajar en 4 diferentes modos de operación. Los modos O, 1 y 2 son iguales para los dos timers; pero el modo 3 es diferente para cada uno:

HOJA 28

MODO O:

POR LÓPEZ SALGADO NIVARDO

Este modo trabaja con un registro de 13 bits, los 8 bits del THx y los 5 bits menos significativos del TLx. Los 3 bits restantes del TLx contienen datos indeterminados así que deben ignorarse. Cuando en el conteo este pasa de todos los bits en “1” a todos los bits “O” (sobreflujo) se enciende la bandera de interrupción del timer correspondiente, es decir TFx, que se encuentra en el registro TCON.

MODO 7:

Este modo es similar al modo O con la diferencia que el registro usa todos los 16 bits para el conteo.

MODO 2:

En este modo se tienen 8 bits para el registro de conteo (TLx) y cuando se llega al sobreflujo no sólo se enciende la bandera de interrupción correspondiente sino que además se recarga en el registro TLx el valor del registro THx el cual se establece por sohare. El valor de THx no se ve afectado.

MODO 3:

Para el timer 1 el modo 3 simplemente hace que mantenga la cuenta. El efecto es el mismo que si se pusiera el bit TRI = O (del registro TCON).

Para el timer O el modo 3 configura a TLO y THO como dos contadores independientes. TLO controla las interrupciones del timer O THO controla las interrupciones del timer 1.

HOJA 29

POR LÓPEZ SALGADO NIVARDO

ANTECEDENTES.

HOJA 30

POR LÓPEZ SALGADO NIVARDO

Antes de proponer un modelo para la solución del sistema que se pretende resolver es necesario investigar sobre los trabajos hechos al respecto y recopilar toda lainformación disponible hasta la fecha, sin embargo para la elaboración de este proyecto se partirá desde la base misma de la experimentación, a fin de comprobar y si es posible descubrir nuevas implementaciones o aplicaciones de los dispositivos que encontramos en el mercado, la idea es crear nuestras propias soluciones a los problemas deacuerdo a las herramientas de que disponemos..

La parte fundamental del proyecto en sí es mostrar imágenes y estas son a través de el dispositivo de salida, en este caso es el led, por lo tanto es necesario conocer su respuesta y sus características de una manera precisa y comprobada, en este proyecto una parte importante del costo del mismo esta determinada por la matriz de led, por lo anterior la selección del tipo adecuado del dispositivo son de vital importancia para el desarrollo del sistema.

Dentro de las ventajas que tiene el led sobre otro tipo de dispositivos emisores de luz (por ejemplo: focos con filamento de tugsteno, focos de neon, focos de halógeno, etc.) sobresalen:

Ventajas:

-Bajo consumo de energía aprox. 20ma.

-Magnifico tiempo de vida 20’000 hrs.

-Bajo costo.

-Resistente a la intemperie.

HOJA 31

jhLbyeet&7ddc9- POR LÓPEZ SALGADO NIVARDO

A continuación se desarrollaron dos experimentos para determinar si el led a fin de cuentas es el dispositivo más adecuado.

Experimento uno.

Se monto el siguiente circuito

Con un generador de onda cuadrada se usó un pulso simétrico con periodo de 1 seg y valor pico de 3 volts, esta forma de onda se aplicó a un led en serie con una resistencia de 100 ohmns.

OBSERVACIONES: Bajo esta circunstancia se observó un claro parpadeo con gran intensidad de luz proveniente del dispositivo led.

La siguiente etapa consistió en aumentar la frecuencia hasta obtener una intensidad aparentemente constante.

OBSERVACIONES: AI ir aumentando la frecuencia se nota una diminución en la intensidad de la luz, pero el parpadeo se hace menos evidente, se llegó al límite en el que aparentaba estar encendido el dispositivo led sin parpadeo y esta frecuencia fue de 55 Hz, pero cabe hacer notar que la intensidad luminosa se degradó a un 70% de la que se observaba cuando parpadeaba notablemente.

Ahora con fines de recuperar la intensidad de luz en el dispositivo led se utilizó la misma frecuencia de 55 Hz pero ahora se incremento el valor pico de la onda a 5 volts.

OBSERVACIONES: Se notó que la intensidad aumenta en una proporción considerable sin daAarse el dispositivo, se dejó operar por horas y no presentó anormalidad.

H O J A 32

? % u p z % ? # d e 7 ~ POR LÓPEZ SALGADO NIVARDO

Experimento dos.

Ahora por razones que impone el scaneo de una matriz el pulso que se aplica a un dispositivo no es simbtrico, en este caso concreto es a razón de 64 a 1 como lo observamos en la siguiente figura:

Con ayuda de un multiplexor se logro obtener la relación 1/64 del ancho del pulso de subida respecto al de bajada y se conectó nuevamente al led en serie con una resistencia de 100 ohmns. se conservó la frecuencia de 55 Hz.

OBSERVACIONES: Nuevamente se observó que no existe parpedeo pero la intensisdad del led disminuyo hasta el 20%.

La modificación inmediata fui! disminuir el valor de la resistencia a un valor de 10 ohmns conservando los demás valores.

OBSERVACIONES: En este momento ern efecto se notá que el brillo aumenta al 50% pero aún es poco la luminosidad.

Otra de las opciones fue duplicar la frecuencia al doble, aproximadamente 100 HZ yconservando los demás parámetros intactos.

OBSERVACIONES: AI aumentar la frecuencia aumentó notablemente la intensidad regresando al 80% de brillo y este valor para los fines del proyecto son muy aceptables.

POR LÓPEZ 5AL.GADO NIVARDO

DESCRIPCION.

POR LÓPEZ SALGADO NIVARDO

El proyecto del PIZARRdhl ELEcrRdhlICO, lo podemos agrupar en varias etapas que podemos representar en un diagrama de bloques (ver la Figura I), a continuación se describe de forma general cada parte..

Figura 1

POR LÓPEZ SALGADO NIVARDO

(ALIMENTACIÓN.

La fuente de alimentación es la parte más esencial de todo circuito electrónico ya que es la que suministra la energía adecuada para que cada uno de los componentes desarrolle la función para la cual fue creado, es decir, cada componente (desde una compuerta lógica hasta un micro-controlador) necesita ser alimentado con los valores especificados por el fabricante para poder garantizar su correcto funcionamiento.

Hay que poner especial cuidado en esta parte ya que es imposible obtener resultados satisfactorios si contamos con una fuente de alimentación que no reúna los niveles especificados por el fabricante-

La fuente de alimentación adecuada para los circuitos electrónicos es aquella que filtra todas las fluctuaciones provenientes de la línea. A continuación se presenta en la Gráfica 1, la gráfica de carga para la fuente de alimentación, esta gráfica describe de manera clara el rango de variación para el potencial de alimentación al circuito, se establecen estos valores deacuerdo a las características de los componentes utilizados. Los fabricantes de los circuitos integrados que se utilizan en este proyecto establecen como valor nominar para el potencial SVDC con una tolerancia máxima de 70.5VDC, tomando en cuenta lo anterior se tomó el criterio de establecer un margen de seguridad por Io cual se restringió la tolerancia solo a TO.~VDC, de esta forma se establece que a plena carga el potencial mínimo que le exigimos a la fuente es de 4.7VDC.

La fuentes que emplean unicamente transformador como medio para elevar o disminuir la tensión tienden a ser reemplazadas por esta últimas que tienen la tecnología de swicheo, una parte del funcionamiento de las fuentes de switcheo esta en la utilización de transformadores con embobinados ligeros pero guardando una geometría toroidal, otra parte del funcionamiento se debe a la utilización de osciladores de alta frecuencia.

HOM 36

POR LÓPEZ SALGADO NIVAKDO

,I ”

/ /’

í

-\

GRAFlCA DE CARGA PARA LA FUENTE

0.5A I .OA I .5A CARGA REQUERIDA POR LA PANTALLA

Un tipo de fuente que en la actualidad nos proporciona esta calidad es la fuente de alimentación de swicheo y estas características es por la filosofía de su construcción.

La potencia de la fuente de alimentación debe estar por encima del valor nominal de la requerida por el circuito, esto es por alguna compensación debido a la temperatura. El fabricante de los semiconductores establece los valores de degradación en el consumo de energía, esta dependencia est2 intimamente ligada a la temperatura ambiente, normalmente las características reportadas traen como referencia la temperatura de 25“.

Para este diseño se optó por utilizar una fuente conmutada comercial, ya que la construcción de este tipo de fuentes es complicado, la magnitud de un diseno para una fuente comnutada sería tema para la elaboración de otro proyecto de ingeniería, por cierto muy atractivo dada la gran aplicación de las fuentes de poder para la gran mayoria de sistemas electrónicos.

POR LÓPEZ SALGADO NIVARDO

INTERF'AZ PC-PIZARRON.

En el Diagrama 1 se presentan los componentes electrónicos que forman a la interfaz.

La interfaz consta básicamente de un latch (IC07) que hace la función además como buffer para las línea de ida como de regreso hacia el micro desde la P.C. El conector DB-25 proporciona el acoplamiento para conectarse con el puerto paralelo.

La interfaz es el medio de comunicación ente el puerto paralelo de la computadora personal y el sistema de control digital (MC-8051), es el medio para llevar a cabo la conversión del protocolo de comunicación que tiene el puerto paralelo en modo de impresión con la recepción de datos en paralelo3 que utiliza el MC-8051 .

La interfaz es vista por el puerto paralelo de impresión como un dispositivo que emula los comandos de la impresora, es capaz de poner una línea de control para el puerto paralelo en estado de espera, es decir, si se esta transmitiendo una gran cantidad de caracteres (texto) y el procesador requiere tiempo para hacer alguna operación, detiene la transmisión del puerto y le indica que continúe cuando est6 listo para recibir más información, en pocas palabras la interfaz proporciona un control de flujo de información para el procesador digital.

Otra característica de la interfaz es que actlba como un buffer para llevar el bus de datos (8 bits) por un cable plano de longitud máxima de 5m, este longitud máxima garantiza que los datos no lleguen corruptos a la entrada del procesador digital y viceversa. Si fuera necesario se puede introducir un circuito repetidor bidireccional con capacidad de transmisión de 1 O mts.

3El MC-8051 puede recibir datos en forma serial pero para obtener mayor velocidad en la transferencia de información se eligió implementar una forma de recepción paralela)

HOJR 38

POR L6PEZ SALGADO NIVARDO

ll ETAPA DE CONTROL ll DIGITAL. II

La etapa de control digital la podemos seccionar en las siguientes partes:

0 Microcontrolador 8051 (Ver el Diagrama 2).

0 Carga de datos (Ver el Diagrama 3).

0 Buffer al bus principal 1 (Ver el Diagrama 4).

0 Buffer en las líneas (Ver el Diagrama 5).

Controlador de bus (Ver el Diagrama 6).

0 Control para la recepción remota (Ver el Diagrama 7).

0 Distribución de baja potencia (Ver el Diagrama 8).

0 Control de renglones (Ver el Diagrama 9).

0 Control de columnas (Ver el Diagrama 1 O).

Las partes mencionadas con anterioridad todas ellas forman parte de la etapa digital, la razbn es que el microcontrolador centraliza las funciones de modo que el se encarga de gobernar todo el funcionamiento, a cntinuacibn se describe cada una de ellas.

POR L6PEZ SALGADO NIVARDO

Microcontrolador MC-8051.

En el Diagrama 2 se muestra el diagrama electrónico del entorno necesario para que el microcontrolador pueda realizar sus funciones.

El control digital es gobernado por el microcontrolador MC-8051 (COI) y realmente las funciones que es capaz de realizar son comparables con una mini-computadora. La arquitectura de este micro (como se expuso en la parte teórica) tiene una infinidad de aplicaciones de control dado que dentro de este micro tenemos alambrados los puertos y linea de control, cosa que otros CPU‘s no ofrecen.

El entorno necesario para que este micro funcione adecuamente comprende b k a m e n t e la memoria RAM, la memoria ROM, latch’s y el cristal.

La memoria RAM (IC04 e IC05) se utiliza para almacenar el texto que es enviado desde la P.C. y además se usa para guardar datos temporalmente al realizar los procesos internos, aunque el microcontrolador tiene 128 registros internos para el manejo de los datos esta area resulta insuficiente dad la gran cantidad de operaciones que se deben realizar para desplegar una rutina de presentación. La memoria RAM se encuentra seccionada en dos chip’s esto debido a que en el momento de hacer el desarrollo de este proyecto no se encontraba en el mercado nacional una sola memoria con la capacidad de almacenamiento equivalente a las dos usadas, esta situación trae como consecuencia utilizar mas alambrado y costo en hardware que si solo se utilizara una.

En la memoria ROM (IC03) se tiene almacenado el programa principal el cual controla todas las funciones de entrada y salida del micro así como de los periféricos, además en la memoria ROM se tienen grabados diversos tipos de letra, es decir, en la memoria de solo lectura estan grabados los mapas de cada uno de los caracteres ascii, de manera que un mismo texto puede ser desplegado con diversos tipos de letra y con rutinas de despliegue diferentes dentro de una librería permanente, ademas en la ROM es muy aconsejable tener rutinas de autoverificación para detectar fallas y malos funcionamientos del entorno.

ls"2.g 65 POR LÓPEZ SALGADO NIVAKDO

Dentro de los latch's que se usan dentro del entorno básico para el micro, se tiene uno (IC02) que permite cargar la parte baja del direccionamiento a la memoria (El direccionamiento total es de 16 bits y los puertos de salida del micro son de 8 bits) y posteriormente permitir leer el dato hacia el micro.

EL cristal (XTALI) se encarga de generar el reloj maestro sobre el cual se desarrollan todos los tiempos del microcontrolador, la frecuencia que se maneja par este diseño es de 12 Mhz, manejar esta frecuencia que se puede considerar alta dada la característica del hardware implica tener cuidados como la longuitud de los cables, la inducción que puede haber de una etapa a la otra puede afectar considerablemente el desempeño del sistema, esto se comenta por que al realizar un prototipo lo más comun es utilizar alambre wire-wrap. Una solución adecuada es colocar capacitores cerca de las entradas de la alimentación de cada circuito integrado para disminuir los errores provocados por las corrientes parásitas que circulan en un bucle de semiconductores y conductores.

El circuito de reset (C3 y R129) tiene una característica interesante, concebido de esta manera como se presenta el el diagrama cada vez que se alimenta el sistema automáticamente inicializa (pone un reset) al micro garantizando la integridad de la ejecución del programa.

De esta etapa sale el bus principal 1 que es la unión más importante con el resto del sistema.

HOlA 41

POK LÓPEZ SALGADO NIVARDO

Carga de datos.

En el Diagrama 3 se observan los componentes electrónicos involucrados en esta etapa.

La carga de los datos es una operación necesaria para la selección de la información que viaja a través del bus buffer principal 1, la idea es tomar un dato en el momento en que el micro le indique que lo tiene a su disposición y esto se logra mediante una línea de control rotulada carga dato, el circuito adecuado para realizar esta operación de captura es el latch (IC08).

Adicionalmente se puede pensar que del bus buffer principal 1 surge una ramificación que genera otro bus rotulado bus de datos, dada esta implicación surge la necesidad de utilizar un buffer que sea capaz de conservar la integridad de la informacón4, el circuito elegido para realizar la función de buffer es el IC09 que posee las características para alimentar la etapa contigua.

Estos requerimientos son características de la tecnologia utilizada y existen ciertos parametro como el FAN-IN y el FAN-OUT que limitan en número de componentes conectados con sus entradas en paralelo.

HOJA 42

POR LÓPEZ SALGADO NIVARDO

Buffer al bus principal.

En el Diagrama 4 aparecen los componentes electrónicos que forman esta etapa.

La parte fundamental de esta etapa es un buffer (ICIO) bidireccional.

Por una parte entra el bus principal 1 y por la otra sale otro bus rotulado bus buffer principal 1 además a esta etapa entra una línea de control que permite que la información fluja de in lado hacia el otro, es necesario recordar que el puerto al cual se encuentra conectado el bus principal 1 es bidireccional y lo mismo puede sacar información como recibirla.

POR LÓPEZ SALGADO NIVAKDO

~~

Buffer en la líneas.

En el Diagrama 5 aparecen los componentes electrónicos asociados.

Esta etapa consta de un buffer (IC1 I ) con capacidad unidireccional y es el medio para que las líneas de control en general sean capaces de transmitir información fiel.

Este circuito se encuentra activo siempre, es decir no tiene líneas de control que cambien su estado de operación a lo largo de la operación del sistema.

Esta etapa tiene vital importancia sobre el control de las diferentes acciones que realiza el micro y esa es la razón de resaltar su contribución.

POR LÓPEZ SALGADO NIVARDO

Controlador de Bus.

En el Diagrama 6 se exponen los componentes electrónicos integrantes en esta parte.

EL controlador de bus es un circuito de control formado por un flip-flop (IC12), un circuito secuencia1 tan simple ofrece posibilidades al micro gigantes, dado que al integrar esta parte al sistema, esté nos habilita la posibilidad de redireccionar el bus principal 1 para que este sea capaz de recibir la información desde la etapa de recepción remota.

Este componente del sistema funciona como un periferico de control indispensable para que el micro pueda tener comunicación con el exterior.

POR LÓPEZ SALGADO NIVARDO

Control para la recepción remota.

En el Diagrama 7 observamos los componentes electrónicos involucrados.

Esta etapa esta formada por un latch asyncrono5 (IC13) que tiene la función de poner en un estado de alta impedancia dos líneas del sistema bp3.5 y q, este par de líneas de control entran en ación en el momento en que se estan recibiendo datos desde la etapa de recepción remota, la complejidad de este circuito no radica en lo sofisticado del componente electrónico usado, sino por la disposiciót alambrado de las líneas que en éI intervienen.

Su importancia dentro del sistema como lo he venido resaltando con otras etapas anteriores, posible el fiuncionamiento del el sistema.

del

t ace

Un latch asyncrono tiene un estado en el cual permite que la información en la entrada pase a traves de éI como si fuera un buffer y existe otra condición en la cual al activarse una linea captura el dato que tiene en la entrada y Io mantiene constante a la salida hasta que nuevamente suceda un cambio en esta línea de control.

HOJJA 46

POR LÓPEZ SALGADO NIVARDO

Distribución de baja potencia.

En el Diagrama 8 aparecen los componentes que integran esta sección.

Esta etapa de distribución de baja potencia es densa, esta formada por una fila de latch’s (IC14- IC21) estos tienen la función de recibir los datos y colocarlos en su columna correspondiente para dejarlos en espera de que se forme un renglón completo de información que puede ser una imagen o una pantalla de texto determinada. En el siguiente nivel tenemos otro renglon de latch‘s (IC22-IC29) del mismo que los anteriores pero todos ellos tienen la función de cargar un renglon completo (64 bits) en el momento que se termine de formar para inmediatamente transmitirlo al nivel siguiente y finalmente encontramos un renglon de buffer’s (IC30-IC37) cuya función es mantener coherente la movilidad de los datos a lo largo del bus de baja potencia.

Dentro de los bus’s de entrada figuran el bus de datos y el bus de control de columnas, las líneas de entrada son alta impedancial, carga en paralelo, alta impedancia 2 y alta impedancia 3. El bus de datos es el medio de translado para los datos, el bus de control de columnas indica en que momento uno de los ocho latch’s debe tomar el dato que le corresponde para formar la imagen que se quiere desplegar, la línea de carga en paralo se activa cada vez que se ha formado un renglón completo y en ese momento mediante esta línea de control el segundo grupo de latch’s asume que un renglón integro se debe cargar para transmiirlo inmediatamente, las líneas de alta impedancia 1 , 2 y 3 funcionan para bloquear el despliegue de la información en la matriz de modo que si se esta presentando alguna información en la matriz, basta con activar alguna de estas líeas para detener solo la operación de la pantalla y no así el funcionamiento del microcontrolador.

A la salida tenemos un bus de 64 lineas rotulado bus de baja potencia, este es el bus que conecta esta etapa con la de potencia.

POR LÓPEZ SALGADO NIVARDO

Control de renglones.

En el Diagrama 9 aparecen ilustrados los componentes electrónicos asociados a esta etapa.

A la entrada del circuito aparece el bus buffer principal I I este bus llega a un latch syncrono (IC38) que tiene la función de cargar una palabra de control para los renglones en el momento adecuado] la línea que le indica a este latch cuando debe cargar la palabra de control es la línea rotulada carga renglon, a continuación tenemos conectado al latch un buffer unidireccional (IC39) para garantizar la integridad de estos datos de control. A continuación dentro de esta misma etapa se incluye un decodificador (IC40) que interpreta cuál renglon debe estar activo en ese momento dependiendo del estado de la entrada, y finalmente tenemos otro componente que es un buffer unidireccional que refuerza la veracidad de la salida a lo largo del bus de renglones.

El papel de esta etapa es encender cada renglon de la matriz de led’s en el tiempo que le corresponde

HOJA 48

POR LÓPEZ SALGADO NIVARDO

Control de columnas. -

El Diagrama 10 presenta a los componentes electrónicos que contituyen la etapa.

Como entrada al circuito aparece en primer lugar el bus buffer principal 1 llega a la entrada de un latch (IC43) que captura la palbra de 8 bits para el control de las columnas, la otra entrada a la etapa es una línea de control carga columnas que tiene la función de indicarle al latch el momento en el cual hay un dato en el bus para éI, esta línea de control tiene la función de un reloj de carga, a continuación aparece como es de esperarse un buffer unidireccional (IC43) para reforzar la validez de la información capturada y luego retransmitida hacia la siguiente sección, del buffer tomamos una línea de control que corresponde a la salida Y4 la cual después de invertirla mediante el IC06 aparece rotulada carga en paralelo y sirve para indicarle a la etapa de distribución de baja potencia el momento en que se encuentra un renglon listo para ser cargado en el segundo renglon de latch's, continuando con la descripción de esta etapa tenemos ensegida un decodificador (IC44) que permite interpretar la información de control para la carga de las colunmas en la etapa de distribución de baja potencia , como parte terminal de esta sección aparece un buffer unidireccional (IC45) que como antes restablece los niveles lógicos de la información, en la salida se presenta un bus rotulado bus de control, columnas este es un bus unidireccional de 8 bits.

La función primordial de esta sección es la de indicar a la etapa de distribución de baja pofencia el momento en que deben cargar cada uno de los latch agrupados en el primer renglon, la carga de estos latchs es secuencia1 y la otra función es indicarle a la misma etapa que se ya se hizo referencia, el momento en que el segundo grupo de latch's debe cargar un renglon que ya se encuentra completo mediante la línea de control rotulada carga en paralelo.

POR LÓPEZ SALGADO NIVARDO

ll ETAPA DE POTENCIA. H

La etapa de potencia es la encargada de tomar por una parte las señales que provienen de circuito de control digital y mandar las señales de potencia hacia la matriz.

La construcción de esta estapa está hecha a base de transistores, estos ofrecen características muy especiales como son: el tiempo de respuesta, la capacidad de transferencia de energía, su bajo costo, etc.

Se utilizan dos tipos de transistores unos del tipo NPN y los otros del tipo PNP, las características de polarización hacen que cada uno de ellos tenga una función importante y determinante en el sistema.

La etapa de potencia es el nexo entre el gran desarrollo de la electrónica digital con la aplicación que requiere hacer funcionar motores, gruas, reflectores de gran capacidad, etc. Las maravillosas posibilidades que presenta el control que nos proporciona un microcontrolador solo se pueden aplicar a la industria cuando somos capaz de crear interfaz de potencia con los grandes sistemas que utilizan para su operación grandes cantidades de enrgía que a fin de cuentas son transformadas en trabajo.

La etapa de potencia la podemos dividir de la siguinete manera.

0 Etapa de potencia para renglones (Ver el Diagrama 11).

Etapa de potencia para columnas (Ver el Diagrama 12).

HOJA 50

1524 6'5 POR L6PEZ SALGADO NIVARDO

Etapa de potencia para los renglones.

El diagrama 11 representa los componentes electrónicos asociados.

La entrada a esta sección es un bus unidireccionat de 8 bits rotulado bus de renglones el cuál transporta la información correspondiente al momento adecuado de tener activo determinado renglón, es importante decir que el diseño de esta solución considera que el scaneo de los renglones es secuencia1 y periódico en tanto se esté efectuando el despliegue de alguna pantalla. Lo que sigue es una columna de transistores NPN (Q65-Q72), cada uno de ellos tiene asociada una resistencia en la base (R130- R137 respectivamente) y una resistencia en el colector (R138-R145 respectivamente) los transistores tienen el emisor directamente a tierra y cuando están inactivos están en la región de no conducción y en estado activo en conducción, la salida es un conjunto de 8 línea que convergen en un conector rotulado conector r l .

Esta etapa tiene el compromiso de poner un renglon en estado activo bajo la condicion de que estese encuentre conectado a tierra y en estado de renglón inactivo a la condición de tener el renglón en alta impedancia.

HOJA 51

POR LÓPEZ SALGADO NIVARDO

Etapa de potencia para las columnas.

El Diagrama 12 presenta a los componentes electrónicos concernientes con esta parte.

La descripción es la siguiente, en la entrada aparece un bus de 64 lineas rotulado bus de baja potencia, cada una de estas líneas se conecta a uno de 64 transistores tipo PNP (QOVQ64) en arreglo renglon, entre cada línea que proviene del bus y la base de cada transistor se encuentra una resistencia (R65-RA28 respectivamente), cada transistor tiene conectado su emisor con una resistencia (R01-R64 respectivamente) y los extremos de estas resistencia se conectan a +Vcc, por la parte terminal los colectores de los transistores se agrupan en conjuntos de 8 en forma consecutiva de modo que los colectores de los transistores Q01-QO8 se conectan a un conector rotulado conector c l de manera que en total la salida consta de ocho conectores rotulados conector cl-conector c8 respectivamente y estos van directamente a la matriz de led's.

En el diagrama mencionado se presentan solo dos bloques de los ocho que constituyen el proyecto, haciendo referencia a la consecución en la identificación de los componentes podemos saber la densidad de componentes de esta etapa.

HOJA 52

POR LÓPEZ SALGADO NIVARDO

I MATRIZ DE LED’S. I

En el Diagrama 13 se muestra la conexión electrónica de la matriz de led’s.

En el diagrama solo se muestran dos de los ocho bloques que componen la totalidad de la matriz, hay que recordar que está compuesta de 64 columnas X 8 renglones, cada bloque forma una submatriz de 8x8 la única conexión común entre submatrices es mediante los renglones, ya que en columnas son independientes.

Se pensó en la idea de instalar conectores para hacer más clara la forma de conexión con los otros módulos de manera que existen para las columnas 8 conectores de ocho lines cada uno rotulados conector cl-conector c8 respectivamente y para los renglones solo existe un conector de ocho lineas rotulado conector r l .

La matriz en general se conecta para las columnas los ánodos de todos los diodos led’s (DI 1- D864) que forman a dicha y para los renglones todos los cátodos de los diodos led‘s que forman dicho renglon.

La matriz de led’s es a fin de cuentas la cara del proyecto, pues es aquí en donde se refleja todo el trabajo que hay detras del sistema, por eso es muy importante dar una buena apariencia a la construcción de esta. Dentro de los requerimientos de construcción y no precisamente electrónicos, se consideraron los materiales más adecuadospara la elaboración del gabinete para soportar incluso situaciones de desempeAo a la intemperie, para lo cual se eligió alumino (material que evita la oxidación) y cristal polarizado (para crear una atsmosfera interna que permita la visualización de la matriz bajo la presenciua de la luz solar). En la Figura 2 se presenta una vista del gabinete empleado.

POR LÓPEZ SALGADO NIVARDO

'\ \\ \

Figura 2

Es importante para este sistema el alinear la matriz de led's con la mayor precisión posible ya que al desplazarse un punto desde un extremo de la pantalla hacia el otro el efecto debe ser suave y dar la apariencia de que el punto flota por la matriz.

POR LbPEZ SALGADO NIVARDO

Diagrarnas.

POR LÓPEZ SALGADO NIVARDO

0

v-i

v3 O 00

I u E O

c

U

I I

PL- CD

d 4

O

O b 4 A

o

POK LÓPEZ SALGADO NIVARDO

POR L6PEZ SALGADO NIVARDO

1

H o z H d p.r

d

F9

n

DIAGRAMA 5

BUFFER EN LAS LINEAS.

2 1 8 7 6 5 4 3 2 1

Y Y Y Y Y Y Y Y X 7 6 5 4 3 2 1 j

d O n

d

O u E

Y- O O d- t-

HOJA 61

POR LÓPU SALGADO NIVARDO

- - r -r O O 9 I'.

i I

u e, Irl

4 -r” O 0 iw I L

HOB 62

POR LÓPU SALGADO NlVARDO

I G

J

DIAGRAMA 8

DISTRIBUCION DE BAJA POTENCIA.

."

. _ - ." .._

."

." ". ."

IC2 I 74l-qx7.4

POR L ~ P E Z SALGADO NIVARDO

O u HOWl 64

DIAGRAMA 10

Y Y Y Y Y Y Y Y X 7 6 5 4 3 2 1

CONTROL DE COLUMNAS.

Y Y Y Y Y Y Y Y

1 B B B B B B B B I 3 7 6 5 4 3 2 1 1

74u564u

A A A A A A A A 8 7 6 5 4 3 2 1

h u w

POR LÓPEZ SALGADO NIVARDO

I

POR LÓPU SALGADO NIYARDO

HOJA 67

I I

U

3 3 E W V Y O L d-

HOJA 68

POR LÓPEZ SALGADO NIVARDO

HOJR 69

La programación del micro-controlador es la parte más importante del proyecto, ya que es esta la encargada de gobernar todas las funciones para la operación del pizarrón electrónico.

Para programar al microcontrolador MC-8051 existen diversas herramientas como lo son traductores que permiten programar en un lenguaje de alto nivel como PASCAL, C, etc y despues trasladar el codigo al 8051 , cuando la aplicación no requiere optimización en la velocidad de respuesta estas herramientas pueden ser útiles pero en el caso que nos concierne estas opciones para la programación son inadecuadas ya que generan código redundante, para el pizarrón electrónico es importante que la respuesta del micro-controlador esté en el límite de su capacidad, por lo que la opción es programar sobre las instrucciones que maneja el ensamblador, para la correcta aplicación de dichas instrucciones se necesita recurrir al manual de referencia para el programador y considertar el tiempo de ejecución de cada instrucción.

Existen diversas técnicas de programación para lograr un objetivo y depende de la visión del programador el hacer el algoritmo lo más eficiente posible, se dice esto porque hay muchas posibilidades para implementar un algoritmo en un lenguaje de programación pero, para las aplicaciónes de control es indispensable que la velociad de respeuesta del sistema sea rápida, y esto se traduce en quitar instrucciones redundantes o ¡necesarias.

En la figura 3 se presenta en forma de diagrama de flujo la serie de pasos para la programación del microcontrolador MC-8051 de INTEL".

El software se elaboró utlizando el conjunto de instrucciones para el microcontrolador, la programación a este nivel se le conoce como programación a nivel ensamblador dado que al programar se tiene que tener en cuenta las operaciones a nivel registros más basicas, un mucho el programador tiene que elegir el manejo de los registros del sistema de la manera más efuciente.

En la figura 4 se muestra a la memoria de solo lectura (ROM) en donde reside el programa y las librerias implementadas.

HOJA 70

POR L6PEZ SALGADO NIVARDO

figura 3.

HOJA 71

POR LÓPEZ SALGADO NIVARDO

HOJA 72

POR LÓPEZ 5ALGADO NIVAKDO

Código.

? b 4 4 ? & 7 ~ c t c 9 ~ POR LÓPEZ SALGADO NIVARDO

AVOCET SYSTEMS 8051 CROSS-ASSEMBLER - VERSION I .IOM SOURCE FILE NAME: MATSSIM PAGE 1 %?#G$

O000 0008 O009 OOOA OOOB oooc OOOD OOOE OOOF O010 O01 1 0012 0013 0014 0015 0016 0017 OOlC O01 D O01 E O01 F 007D 007E 007F 0087 0080 O000 0080 0040 0080 0080 0080 O084

O000 O000 O 130

0003 0003 020085

CONTROL PARA PIZARRóN 8x64Pts: 1992

IVDPL IIVDPL TIPLETRA PALH PALL ALMSIGCH ALMSIGCL ANCHO VDPH VDPL CDPH CDPL VELOC2 VELOCI EFECTI EFECT2 CONTADOR RUTINA TAUTLET REGION COUNT OFFSET1 OFFSET2 PCON INIDESPH INIDESPL INIALMCH INIALMCL ALCMVEH ALCLAVEL ALMTEXTH ALMTEXTL

ORG OOOOH AJMP START

EQU EQU EQU EQU EQU EQU EQU EQU EQU EQU EQU EQU EQU EQU EQU EQU EQU EQU EQU EQU EQU EQU EQU EQU EQU EQU EQU EQU EQU EQU EQU EQU

ORG 0003H LJMP INTI EO

08H 09H OAH OBH OCH ODH OEH O FH OIOH Ol lH 012H 013H 014H 015H 016H 017H OICH OlDH OIEH O1 FH 07DH 07EH 07FH 087H 080H O0 H 080H 040H 080H 080H 080H 084H

P w 7 M d C 7 -

AVOCET SYSTEMS 8051 CROSS-ASSEMBLER - VERSION 1.10M SOURCE FILE NAME: MAT9.SIM

0030

0030 C2AF 0032 758380 0035 758280 O038 EO 0039 FWD 0038 A3 003C EO 003D F50E 003F A3 0040 EO 0041 849009 0044 A3 0045 EO 0046 B49404 0049 D2F6 0048 8006

004D 750D80 0050 750E84 0053 751510 0056 751 400 0059 750F07 005C 751 DFF 005F 757E00 0062 757FOO 0065 751EFF 0068 757D09 006B 758130 006E 750AOO 007 1 75 1608 0074 751 708 0077 7DFF 0079 D2A8 0078 C2BO 0070 O0 007E D2BO 0080 D2AF 0082 0201 D6

0085 C2AF 0087 D2B1 0089 0280 008B C083 008D C082 008F 7590FF

PAGE 2

ORG

START MOV MOV MOVX MOV I NC MOVX MOV I NC MOVX CJNE INC MOVX CJNE SETB SJMP

SSCOTT MOV SCOOT: MOV MOV MOV MOV MOV MOV MOV MOV MOV MOV MOV MOV SETB CLR NOP SETB SETB JMP

INTIEO: SETB SETB PUSH PUSH MOV

POR LÓPEZ SALGADO NIVARDO

0030H

CLR IE.7 DPH,#ALCLAVEH DPL,#ALCLAVEL A,@DPTR ALMSIGCH,A DPTR A,@DPTR ALMSIGCL,A DPTR A,@DPTR A,#OSOH,SSCOTT DPTR A,@DPTR A,#O94H,SSCOTT B.6 SCOOT

MOV ALMSIGCH,#ALMTEXTH ALMSIGCL,#ALMTEXTL MOVVELOCI,#OlOH VELOC2,#OO ANCHO,#07 RUTlNA,#OFFH OFFSETI,#OO OFFSET2,#OO TAUTLET,#OFFH COUNT,#O9 SP,#030H TIPLETRA,#OO EFECT1,#08 EFECT2,#08 R5,#OFFH IE.0 P3.0

P3.0 IE.7 PGM

CLR IE.7 P3.1 P3.0 DPH DPL 9OH,#OFFH

P z u 9 & @ 7 d d c 9 -

AVOCET SYSTEMS 8051 CROSS-ASSEMBLER - VERSION 1.10M SOURCE FILE NAME: MAT9.SIM PAGE 3

0092 7FOO 0094 O0 0095 O0 0096 O0 0097 O0 0098 7E00 DNEWI: 009A A2B3 DNEW: 009C 4008 ESPERA: 009E BEFF02

OOAI OIEB 00A3 OE PLISS: 00A4 O 19A OOA6 E590 NEXT: 00A8 C2BO OOAA O0 OOAB D2BO OOAD B40DOB OOBO 30F304 0083 7FOO 00B5 8030 0087 D2F3 SLTO: 0089 802C OOBB B40A10 SLTI: OOBE 30F30D OOCl C2F3 OOC3 150E OOC5 E50E OOC7 B4FFCE OOCA 150D OOCC 80CA OOCE B49F08 SLT2: OODI 750D80 00D4 750E84 00D7 80BF 00D9 842007 SLT4: OODC OF OODD BF0907 OOEO I F OOEI 80B5 ODE3 7FOO SLT3: 00E5 C2F3 00E7 F15F ASCII: 00E9 80AD OOEB 11 F8 EXIT: OOED DO82 EXIT2: OOEF DO83 OOFI D2F5 OOF3 D2AF OOF5 C2B1 OOF7 32

MOV NOP NOP NOP NOP MOV MOV JC CJNE

AJMP INC AJMP MOV CLR NOP SETB CJNE JNB MOV SJMP SETB SJMP CJNE JNB CLR DEC MOV CJNE DEC SJMP CJNE MOV MOV SJMP CJNE INC CJNE DEC SJMP MOV CLR ACALL SJMP ACALL POP POP SETB SETB CLR RETI

R7,#00

R6,#00 c,P3.3 NEXT RG,#OFFH,PLISS

EXIT R6 DNEW A,P1 P3.0

P3.0 A,#ODH,SLTI B.3,SLTO R7,#00H ASCII 8.3 ASCII A,#OAH,SLT2 B.3,SLT2 8.3 ALMSIGCL A,ALMSIGCL A,#OFFH,DNEWI ALMSIGCH DNEWI A,#O9FH,SLT4 ALMSIGCH,#ALMTEXTH ALMSIGCL,#ALMTEXTL DNEWI A,#020H,SLT3 R7 R7,#09H,ASCll R7 DNEWI R7,#00H B.3 ALMFIFO DNEWI PREPARA DPL DPH B.5 IE.7 P3.1

POR LÓPEZ SALGADO NIVARDO

HOJR 76

POR LÓPEZ SALGADO NIVARDO

AVOCET SYSTEMS 8051 CROSS-ASSEMBLER - VERSION 1.10M SOURCE FILE NAME: MAT9.SIM PAGE 4

OOF8 D2F6 PREPARA: OOFA 758380 OOFD 758280 O100 E50D 0102 FO 0103 A3 O 104 E50E 0106 FO 0107 A3 0108 7490 OIOA FO OIOB A3 o 1 oc 7494 OIOE FO OIOF 22

O110 20E005 DECOD: O1 13 750COO 0116 2118 O1 18 750C08 UNO: O1 1 B D3 DOS: OllC 13 OllD C4 OllE FF O1 1 F 54FO 0121 450C 0123 F50C 0125 EF 0126 540F 0128 F50B O 12A E50A 012C 30E002

012F 8003 0131 530BF7 NEARI:

0134 30E102 NEAR2: O 137 8003 0139 430810 NEAR3:

013C 30E20D NEAR4: 013F 30E105 O 142 430840 O 1 45 800A O147 430B20 NEAR45: O 1 4A 8005

SETB MOV MOV MOV MOVX INC MOV MOVX INC MOV MOVX INC MOV MOVX RET

JB MOV AJMP MOV SETB RRC SWAP MOV ANL ORL MOV MOV ANL MOV MOV JNB

SJMP ANL

JNB SJMP ORL

JNB JNB ORL SJMP ORL SJMP

B.6 DPH,#ALCLAVEH DPL,#ALCLAVEL A,ALMSIGCH @DPTR,A DPTR A,ALMSIGCL @DPTR,A DPTR A,#090H @DPTR,A DPTR A,#094H @DPTR,A

ACC.O,UNO PALL,#OOH DOS PALL,#08H C A A R7,A A,#OFOH A, PALL PALL,A A, R7 A,#OFH PALH,A A,TIPLETRA ACC.O,NEARI

N EAR2 PALH,#OF7H

ACC. 1 ,NEAR3 NEAR4 PALH,#OIOH

ACC.2,NEAR5 ACC.I,NEAR45 PALH,#040H SAL 1 PALH,#020H SAL1

POR LÓPEZ SAL.GADO NIVARDO

AVOCET SYSTEMS 8051 CROSS-ASSEMBLER - VERSION 1.10M SOURCE FILE NAME: MAT9.SIM PAGE 5

014C 30E102 NEARS: JNB ACC.1,SALI 014F 80F6 SJMP N EAR45

0151 22 SALI: RET

0152 COFO INTELIGE : O 1 54 75F002 0157 A4 O158 DOFO

015A 90015E 015D 73

015E 2182 TABLEI: 0160 2189 0162 2190 0164 2197 0166 219E 0168 21A5 016A 21AC 016C 2182 (AUTOMATICA) 016E 2189 0170 21BC 0172 21BF 0174 21C2 0176 21C5 0178 21C8 017A 21CB 017C 21CE 017E 21D1 O180 21D4 O1 82 750AOO 0185 750F07 o1 88 22 O 189 75OAO 1 018C 750F08 018F 22

O 190 750A02 0193 750F03 0196 22

O1 97 750A03 O 19A 750F06

PUSH MOV MUL POP

MOV JMP

AJMP AJMP AJMP AJMP AJMP AJMP AJMP AJMP

AJMP AJMP AJMP AJMP AJMP AJMP AJMP AJMP AJMP AJMP IR01 : MOV RET IR02 : MOV RET

I R03 MOV RET

I R04 MOV

B B,#02H AB B

DPTR,#TABLEI @A+DPTR

IRO1;STANDARD I R02 ;ORATOR I R03 ;SUBINDICE I R04 ;SMALL I R05 ; I TALI CA I R06 ;SUPERINDICE I R07 ;AUTOMATICA I R08 :SIGUIENTE TIPO

I R09 IR10 IR1 1 IR12 IR13 IR14 IR15 IR16 IR17 IR18 MOV ANCHO,#07

;DSTDOWN ;ROTUP ;DSTDER ; ROTDOWN ;DSTIZQ ;DSTUP ;ROTIZQ ;FAST ;ROTDER

TIPLETRA,#OO

MOV TIPLETRA,#OI ANCHO,#08

MOV TIPLETRA,#02 ANCHO,#03

MOV TIPLETRA,#03 ANCHO,#06

HOJA 78

POR L6PEZ SALGADO NIVAKDO

AVOCET SYSTEMS 8051 CROSS-ASSEMBLER - VERSION 1.10M SOURCE FILE NAME: MAT9.SIM PAGE 6

019D 22

019E 750A04 OlAl 750F07 01A4 22

01A5 750A05 IRO6: O 1 A8 750F05 OlAB 22

O 1 AC 750A06 I R07: OIAF 750F07

O1 B2 750A07 IR08: O1 B5 750F08 O1 88 22

0169 91A9 O1 BB 22

OIBC 71F7 O1 BE 22

OIBF B146 OlCl 22

01C2 71C5 O1 C4 22

01C5 91FO O 1 C7 22

01C8 9163 O1 CA 22

OICB 713D OICD 22

OICE Dl12 O1 DO 22

OlDl 711C 01D3 22

O 1 D4 O0 01D5 22

01D6 3OF6FD PGM:

RET

I R05 MOV RET

MOV MOV RET

MOV MOV

MOV MOV RET

I RO9: RET

IR10: RET

IR11: RET

IR12: RET

IR13: RET

IR14: RET

IR15 RET

IR16: RET

IR17: RET

IR18: RET

JNB

MOV ANCHO,#07

TIPLETRA,#05 ANCHO,#05

TIPLETRA,#06 ANCHO,#07

TIPLETRA,#07 ANCHO,#08

ACALL DSTDOWN

ACALL ROTUP

ACALL DSTDER

ACALL ROTDOWN

ACALL DSTIZQ

ACALL DSTUP

ACALL ROTIZQ

ACALL FAST

ACALL ROTDER9

NOP

B.6,PGM

HOJR 79

TIPLETRA,#04

;hzayect&7t%4wt4ddc7~

AVOCET SYSTEMS 8051 CROSS-ASSEMBLER - VERSION 1.10M SOURCE FILE NAME: MAT9.SIM PAGE 7

01D9 751280 PGI: OlDC 751384 OlDF D1A5 OlEl 851382 PG2: 01E4 851283 01E7 EO O1 E8 F9 O1 E9 5301 FO O1 EC B99046

OIEF 20E31E 01F2 849711 O 1 F5 8005 01F7 B4960E PG12: O1 FA 800A OIFC 051E PG11: OlFE E51E 0200 840605 0203 751 EO0 0206 E51 E PG8: 0208 540F PG4: 020A 3152 020C 7420

020E 8025

0210 B49E02 PG7: 0213 8009 0215 B49DFO PG17 0218 B2F7 02 1 A 7420 021C 8017

021E 20FlOC PG18:

0221 751C08 0224 7420 PG9: 0226 31 10 0228 51AB 022A D51CF7

022D FlOl PG10: 022F C2FO 0231 5155 0233 8006

0235 31 10 PG6: 0237 51AB 0239 C2F1

0238 FlOl PG5:

MOV MOV ACALL MOV MOV MOVX MOV ANL CJNE

JB CJNE SJMP CJNE SJMP INC MOV CJNE MOV MOV ANL ACALL MOV

SJMP

CJNE SJMP CJNE CPL MOV SJMP

JB

MOV MOV ACALL ACALL DJNZ

ACALL CLR ACALL SJMP

ACALL ACALL CLR

ACALL

CDPH,#ALMTEXTH CDPL,#ALMTEXTL LIMPMEM DPL,CDPL DPH,CDPH A,@DPTR R1 ,A O1 ,#OFOH R1,#090H,PG6

ACC.3,PG7 A,#097H,PG8 PG11 A,#096H,PG4 PG8 TAUTLET A,TAUTLET A,#06,PG4 TAUTLET,#OO A,TAUTLET A,#OFH INTELIGE A,#020H

PG6

A,#O9EH,PG17 PG18 A,#O9DH,PG4 B.7 A,#020H PG6

B.1,PGlO

CONTADOR,#08 A,#O20H DECOD ROTDER CONTADOR,PG9

INCCAR B.O EFECTO PG5

DECOD ROTDER B. 1

INCCAR

HOJA 80

POR LÓPEZ SALGADO NIVARDO

POR Li)PEZ SALGADO NIVARDO

AVOCET SYSTEMS 8051 CROSS-ASSEMBLER - VERSION 1.10M SOURCE FILE NAME: MAT9.SIM PAGE 8

023D 30F505 0240 C2F5 0242 0201 D9

0245 E50E PG3: 0247 851 308

024A E50D 024C B51203

024F 0201 D9 0252 0201E1 PG16:

0255 E516 EFECTO: 0257 3152 0259 E516 025B 04 025C 841 105

025F 751608 0262 8002 0264 F516 EFI

0266 D2FO EF2: 0268 E517 026A 3152 026C E517 026E 04 026F 841 105

0272 751708 0275 8002 0277 F517 EF3:

0279 D2F1 EF4: 027B D57D2A

027E 757D09 0281 057E 0283 057F 0285 E57F 0287 B40903 028A 757FOO 028D 057F EF5: 028F E57E 0291 840808 0294 757E00

JNB CLR LJMP

MOV CJNE

MOV CJNE

LJMP LJMP

MOV ACALL MOV I NC CJNE

MOV SJMP MOV

SETB MOV ACALL MOV INC CJNE

MOV SJMP MOV

SETB DJNZ

MOV INC INC MOV CJNE MOV INC MOV CJNE MOV

B.5,PG3 8.5 PG 1

A,ALMSIGCL A,CDPL,PG16

A,ALMSIGCH A,CDPH,PG16

PG 1 PG2

A,EFECTI INTELIGE A,EFECTI A A,#OIIH,EFI

EFECT1,#08 EF2 EFECT1,A

B.O A, EFECT2 INTELIGE A,EFECT2 A A,#011 H,EF3

EFECT2,#08 EF4 EFECT2,A

B. 1 COUNT,EF7

COUNT,#09 OFFSET1 OFFSET2 A,OFFSET2 A,#09,EF5 OFFSET2,#OO OFFSET2 A,OFFSETI A,#08,EF6 OFFSET1 ,#O0

HOJA 81

POR LÓPEZ SALGADO NIVARDO

AVOCET SYSTEMS 8051 CROSS-ASSEMBLER - VERSION 1.10M SOURCE FILE NAME: MAT9.SIM PAGE 9

0297 757FOO 029A 8OOC

029C 7408 EF6: 029E 257E 02A0 F5 16

02A2 7408 02A4 257F 02A6 F517

02A8 C2FO EF7: 02AA 22

02AB 7AFF ROTDER: 02AD 7BFF 02AF 7CFF 0281 7820 O283 850C82 02B6 850883 0289 EO ROTDER6: 02BA F6 0288 A3 02BC 08 028D B828F9 02CO 751080 ROTDER5: 02C3 751 1 O0 02C6 7820 02C8 851 182 ROTDER4: 02CB 851083 02CE 7928 02D0 EO ROTDERI: 02D1 F7 02D2 A3 02D3 O9 O204 B930F9

02D7 19 02D8 E6 DERECHA 02D9 C3 02DA 33

MOV OFFSET2,WO SJMP EF7

MOV ADD MOV

A,#08 A,OFFSETI EFECT1,A

MOV A,#08 ADD A,OFFSET2 MOV EFECT2,A

CLR RET

MOV MOV MOV MOV MOV MOV MOVX MOV INC INC CJNE MOV MOV MOV MOV MOV MOV MOVX MOV INC INC CJNE

DEC MOV

CLR RLC

B.O

R2,WFFH R3,#OFFH R4,WFFH RO,#020H ; LEE CARACTER DPL,PALL DPH,PALH A,@DPTR @ROA DPTR RO RO,#028H,ROTDER6 VDPH,#INIDESPH VDPL,#INIDESPL RO,#020H DPL,VDPL DPH,VDPH R1,#028H ;LEE RENGLON A,@DPTR

DPTR R1 R1,#030H,ROTDERl

@R1 ,A

R1 A,@RO ;ROTA RENGLON A LA

C A

HOJA 82

Pe99eu%7dde9-

AVOCET SYSTEMS 8051 CROSS-ASSEMBLER - VERSION 1.1OM SOURCE FILE NAME: MAT9.SIM PAGE 10

02DB F6 02DC 92D6 02DE A2D6 ROTDER2: 02EO E7 02E1 33 02E2 F7 02E3 19 02E4 92D6 02E6 B927F5

02E9 O9 02EA 851083 02ED 851 182 02FO E7 SALTO3 : 02F1 FO 02F2 A3 02F3 O9 02F4 B930F9

02F7 85821 1 02FA 858310 02FD 08 02FE B828C7

0301 751400 0304 751510 0307 FIOF 0309 OA 030A EA O308 B50FB2

ONE 22

030F 751C08 ROTDER8: 0312 7420 ROTDER7: 0314 3110 0316 51AB 0318 D51CF7 031 B 22 031C 20FOFO ROTDER9: 031F 751C08 0322 8002 0324 FlOl ROTDERIO: 0326 851283 ROTDER11: 0329 851 382 032C EO 032D 31 10 032F 51AB 0331 D51CFO

MOV MOV MOV MOV RLC MOV DEC MOV CJNE

I NC MOV MOV MOV MOVX INC INC CJNE

MOV MOV I NC CJNE

MOV MOV ACALL INC MOV CJNE

RET

MOV MOV ACALL ACALL DJNZ RET JB MOV SJMP ACALL MOV MOV M O M ACALL ACALL DJNZ

POR LÓPEZ SALGADO NIVARDO

@ROPA PSW.6,C C,PSW.G A,@)RI A @R1 ,A R1 PSW.6,C R1,#027H,ROTDER2

R1 DPH,VDPH DPL,VDPL

@DPTR,A DPTR R1 R1,#030H,SALT03

VDPL,DPL VDPH,DPH RO RO,#028H,ROTDER4

VELOC2,#OO VELOCl,#lOH GRAFICA R2 A, R2 A,ANCHO,ROTDERS

A,@)RI ; ESCRIBE A MEMORIA

CONTADOR,#OB A,#020H DECOD ROTDER CONTADOR,ROTDER7

B.O,ROTDER8 CONTADOR,#08 ROTDERI 1 INCCAR DPH,CDPH DPL,CDPL A,@DPTR DECOD ROTDER CONTADOR.ROTDERl0

HOJR 83

POR L6PEZ SALGADO NIVARDO

AVOCET SYSTEMS 8051 CROSS-ASSEMBLER - VERSION 1.10M SOURCE FILE NAME: MAT9.SIM PAGE 11

0334 751403 0337 7515FF 033A FIOF 033C 22

033D 30F004 ROTIZQ: 0340 D 185 0342 8002 0344 D13E ROTIZQ7: 0346 758380 ROTIZQ8: 0349 750847 0 3 C 7AFF ROTIZQ6: 034E 85081 1 0351 7820 0353 851 182 ROTIZQ3 : 0356 E51 1 0358 2408 035A F511 035C EO 0350 F6 035E 08 035F B828F1 0362 751080 ROTIZQS: 0365 751 100 0368 7820 036A 851083 ROTIZQ4: 036D 851 182 0370 7928 0372 EO ROT1 ZQl : 0373 F7 0374 A3 0375 O9 0376 B930F9 0379 7928 0378 E6 IZQUIERDA 037C C3 037D 13 037E F6 037F 92D6 0381 A2D6 ROTIZQ2: 0383 E7 0384 13 0385 F7 0386 O9 0387 92D6 0389 B930F5

MOV MOV ACALL RET

JNB ACALL SJMP ACALL MOV MOV MOV MOV MOV MOV MOV ADD MOV MOVX MOV INC CJNE MOV MOV MOV MOV MOV MOV MOVX MOV INC I NC CJNE MOV MOV

CLR RRC MOV MOV MOV MOV RRC MOV INC MOV CJNE

VELOC2,#03 VELOCI,#OFFH GRAFICA

B.O,ROTIZQ7 LIMPMEM2 ROTIZQ8 READCARS DPH,#INIALMCH IVDPL,#047H R2,#OFFH ; RO,RI,R2,R3 VDPLJVDPL ; CARGA EL ULTIMO CARACTER RO,#020H DPL,VDPL A,VDPL A,#08 VDPL,A A,@DPTR @ROA RO RO,#028H,ROTIZQ3 VDPH,#INIDESPH VDPL,#INIDESPL RO,#020H DPH,VDPH DPL,VDPL R1,#028H A,@DPTR ;LEE RENGLON

D PTR R1 R1,#030H,ROTIZQl R1,#028H A,@RO ;ROTA RENGLON POR LA

C A

PSW.6,C C,PSW.6 A,@RI A @R1 ,A R1 PSW.6,C R1,#030H,ROTIZQ2

@R1 ,A

@ROA

HOJA 84

P W 7 d d C 7 W

AVOCET SYSTEMS 8051 CROSS-ASSEMBLER - VERSION 1.10M SOURCE FILE NAME: MAT9.SIM

038C 851083 038F 851 182 0392 7928 0394 E7 ROTIZQ9: 0395 FO 0396 A3 0397 O9 0398 B93OF9

0398 85821 1 039E 858310 03A1 08 03A2 B828C5

03A5 751400 03A8 751510 03AB FIOF 03AD OA 03AE EA 03AF B50FBO

O382 1508 03B4 E508 O386 B43F93

O389 20F008 03BC 751410 03BF 7515FF 03C2 FIOF 03C4 22 ROTIZQ12:

03C5 20F004 ROTDOWN:

03C8 D13E 03CA 8002 03CC DIB5 UP3: 03CE D1C5 UP2: 03D0 751400 03D3 75157F 03D6 FIOF O308 7DFF 03DA 7515FF UPI: 03DD 7514FF 03E0 Dl96 03E2 751400 03E5 7515FF 03E8 FIOF 03EA OD 03EB BDOI EC

PAGE 12

MOV MOV MOV MOV MOVX INC INC CJNE

MOV MOV INC CJNE

MOV MOV ACALL INC MOV CJNE

DEC MOV CJNE

JB MOV MOV ACALL RET

JB

ACALL SJMP ACALL ACALL MOV MOV ACALL MOV MOV MOV ACALL MOV MOV ACALL INC CJNE

POR LÓPEZ SALGADO NIVAKDO

DPH,VDPH DPL,VDPL RI,#O28H ; ESCRIBE A MEMORIA

@DPTR,A DPTR R1 R1,#030H,ROTlZQ9

VDPL,DPL VDPH,DPH RO RO,#O28H,ROTIZQ4

VELOC2,#OO VELOCI,#OIOH GRAFICA R2 A, R2 A,ANCHO,ROTIZQ5

IVDPL A,lVDPL A,#OSFH,ROTIZQG

B.O,ROTIZQ12 VELOC2,#OIOH VELOCI ,#OFFH GRAFICA

A,@RI

B.O,UP3

READCARS UP2 LIMPMEM2 INTERC VELOC2,#OO VELOCI ,#07FH GRAFICA RS,#OFFH VELOCI ,#OFFH VELOC2,#OFFH RETARDO VELOC2,#OO VELOCI ,#OFFH GRAFICA R5 R5,#01,UPI

HOJA 85

?+4?&%7dde7-

AVOCET SYSTEMS 8051 CROSS-ASSEMBLER - VERSION 1.10M SOURCE FILE NAME: MAT9.SIM PAGE 13

03EE 20F005 03F1 751403 03F4 FIOF 03F6 22 UP4:

03F7 20F004 ROTUP:

03FA D13E 03FC 8002 03FE D1B5 BAJ7: 0400 758380 BAJ8: 0403 79FF 0405 750978 0408 750830 BAJ6: 040B 85081 1 BAJ5: 040E E51 1 0410 2408 0412 F510 0414 851 182 BAJ4: 0417 051 1 0419 EO 041A 851082 041D 0510 041 F FO 0420 O9 0421 B907FO 0424 A9FF 0426 E508 0428 C3 0429 9408 0428 F508 042D B4F8DB

0430 7820 0432 850982 0435 EO BAJI: 0436 A3 0437 F6 0438 08 0439 B828F9

043C 7820 043E 758200 0441 E6 BAJ3: 0442 FO 0443 08 0444 A3 0445 B828F9

JB MOV ACALL RET

JB

ACALL SJMP ACALL MOV MOV MOV MOV MOV MOV ADD MOV MOV INC MOW MOV INC MOVX INC CJNE MOV MOV CLR SUBB MOV CJNE

MOV MOV MOVX INC MOV I NC CJNE

MOV MOV MOV MOVX INC INC CJNE

B.O,UP4 VELOC2,#03 GRAFICA

B.O,BAJ7

READCARS BAJ8 LIMPMEM2 DPH,#INIALMCH R1 ,#OFFH llVDPL,#078H IVDPL,#030H VDPL,lVDPL A,VDPL A,#08 VDPH,A DPL,VDPL VDPL A,@DPTR DPL,VDPH VDPH @DPTR,A R1 R1,#07,BAJ4 R1 ,OFFH A,lVDPL C A,#08 IVDPL,A A,#OF8H,BAJ5

RO,#020H DPL,IIVDPL A,@DPTR DPTR @ROSA RO RO,#028H,BAJI

RO,#020H DPL,#OO

@DPTR,A RO DPTR RO,#028H,BAJ3

A,@RO

Horn 86

POR LbPEZ SALGADO NIVARDO

p ” y c c t 6 7 d d c 9 -

AVOCET SYSTEMS 8051 CROSS-ASSEMBLER - VERSION 1.10M SOURCE FILE NAME: MAT9.SIM PAGE 14

0448 75 1400 0448 751530 044E FIOF 0450 E509 0452 C3 0453 9408 0455 F509 0457 B438AE

045A 20F005 045D 7515D0 O460 FIOF 0462 22

0463 20F006 DSTUP:

0466 D 13E 0468 D1A5 046A 8002 046C D I B5 DSTU3: 046E 758380 DSTU4: 0471 750840 0474 79FF DSTU2: 0476 85081 1 0479 851182 DSTUI: 047C E51 1 047E C3 047F 9440 O481 F8 0482 051 1 0484 EO 0485 8882 0487 FO 0488 O9 0489 B907ED

048C 751 400 048F 751570 0492 FIOF 0494 E508 0496 2408 0498 F508 049A 848087 049D 20F008 04AO 751 402 04A3 7515FF

MOV MOV ACALL MOV CLR SUBB MOV CJNE

JB MOV ACALL BAJ9 :

JB

ACALL ACALL SJMP ACALL MOV MOV MOV MOV MOV MOV CLR SUBB MOV INC MOW MOV MOW INC CJNE

MOV MOV ACALL MOV ADD MOV CJNE JB MOV MOV

VELOC2,#00 VELOCI ,#030H GRAFICA A,IIVDPL C A,#08 I IVDPL,A A,#038H,BAJ6

B.O,BAJ9 VELOCI ,#ODOH GRAFICA RET

B.O,DSTU3

READCARS LIMPMEM DSTU4 LIMPMEM2 DPH,#INIDESPH IVDPL,#040H R1 ,#OFFH VDPL,IVDPL DPL,VDPL A,VDPL C A,#040H RO,A VDPL A,@DPTR DPL, RO @DPTR,A R1 R1,#07,DSTU1

VELOC2,#OO VELOCI ,#070H GRAFICA A,IVDPL A,#08 IVDPL,A A,#080H,DSTU2 B.O,DSTU5 VELOC2,#02H VELOCI,#OFFH

HOJR 87

POR LÓPEZ SALGADO NIVARDO

?%84eU%7wde7-

AVOCET SYSTEMS 8051 CROSS-ASSEMBLER - VERSION 1.10M SOURCE FILE NAME: MAT9.SIM

04A6 FIOF 04A8 22 DSTU5:

04A9 20F006 DSTDOWN:

04AC D13E 04AE D 1 A5 04B0 8002 O482 D I 85 DSTD3: O484 758380 DSTD4: O487 750878 04BA 79FF DSTD2: 04BC 85081 1 04BF 851182 DSTDI: 04C2 E51 1 04C4 C3 04C5 9440 04C7 F8 04C8 051 1 04CA EO 04CB 8882 04CD FO 04CE O9 04CF B907ED

O402 751400 04D5 751570 04D8 FIOF 04DA E508 04DC C3 04DD 9408 04DF F508 04E1 B438D6

04E4 20F008 04E7 751402 04EA 7515FF 04ED FIOF 04EF 22 DSTD5: 04FO 30F003 DSTIZQ: 04F3 B1 D7 04F5 22 04F6 D1A5 BAT4 : 04F8 D13E 04FA 758380 BAT5: 04FD 750840 0500 7BFF

PAGE 15

ACALL RET

JB

ACALL ACALL SJMP ACALL MOV MOV MOV MOV MOV MOV CLR SUBB MOV INC MOVX MOV MOVX INC CJNE

MOV MOV ACALL MOV CLR SUBB MOV CJNE

JB MOV MOV ACALL RET JNB ACALL RET ACALL ACALL MOV MOV MOV

POR LÓPEZ SALGADO NIVARDO

GRAFICA

B.O,DSTD3

READCARS LIMPMEM DSTD4 LIMPMEM2 DPH,#INIDESPH IVDPL,#078H RI,#OFFH VDPL,IVDPL DPL,VDPL A,VDPL C A,#040H RO,A VDPL A,@DPTR DPL,RO @DPTR,A R1 R1,#07,DSTDl

VELOC2,#00 VELOCl,#O70H GRAFICA A,lVDPL C A,#08 IVDPL,A A,#O38H,DSTD2

B.O,DSTD5 VELOC2,#02H VELOCl,#OFFH GRAFICA

B.O,BAT4 ;RO,Rl,R2,R3 BORIZQ

LIMPMEM READCARS DPH,#INIALMCH IVDPL,#INIALMCL R3,#OFFH

HOJFt 88

F b 4 & 5 7 & & 9 W

AVOCET SYSTEMS 8051 CROSS-ASSEMBLER - VERSION 1.10M SOURCE FILE NAME: MAT9.SIM PAGE 16

0502 7AFF 0504 7800 BAT3: 0506 85081 1 BAT2: 0509 E8 050A D3 0508 13 050C F8 050D 851182 BATI: 0510 EO 0511 58 0512 C9 0513 E51 1 051 5 C3 0516 9440 0518 F582 051A C9 051 B FO 051 C E51 1 051 E 2408 0520 F511 0522 OA 0523 BA07E7

0526 751 400 0529 751510 052C FlOF 052E AAFF 0530 OB 0531 BB07D2

0534 0508 0536 7BFF 0538 E508 053A B448C7

053D 751 405 0540 751 5AO 0543 FIOF 0545 22

0546 30F003 DSTDER:

O549 B19C 0548 22 054C D1A5 BET4: 054E D13E 0550 758380 BETS: 0553 750847 0556 7BFF 0558 7AFF

MOV MOV MOV MOV SETB RRC MOV MOV MOVX ANL XCH MOV CLR SUBB MOV XCH MOVX MOV ADD MOV INC CJNE

MOV MOV ACALL MOV INC CJNE

INC MOV MOV CJNE

MOV MOV ACALL RET

JNB

ACALL RET ACALL ACALL MOV MOV MOV MOV

R2,#OFFH RO,#OO VDPL,lVDPL A, RO C A RO,A DPL,VDPL A,@DPTR A, RO A,R1 A,VDPL C A,#040H DPL,A A, R1 @DPTR,A A, VDPL A,#08 VDPL,A R2 R2,#07,BATI

VELOC2,#OO VELOCI,#OIOH GRAFICA R2,OFFH R3 R3,#07,BAT2

IVDPL R3,#OFFH A,IVDPL A,#048H,BAT3

VELOC2,#05 VELOCI ,#OAOH GRAFICA

B.O,BET4

BORDER

LIMPMEM READCARS DPH,#INIALMCH IVDPL,#047H R3,#OFFH R2,#OFFH

HOJA 89

POR LÓPEZ SALGADO NIVARDO

POR LÓPEZ SALGADO NIVARDO

AVOCET SYSTEMS 8051 CROSS-ASSEMBLER - VERSION 1.10M SOURCE FILE NAME: MAT9.SIM PAGE 17

055A 7800 BET3: 055C 85081 1 BET2: 055F E8 0560 D3 o561 33 0562 F8 0563 851182 BETI: 0566 EO 0567 58 0568 C9 0569 E51 1 0568 C3 056c 9440 056E F582 0570 C9 0571 FO 0572 E51 1 0574 2408 0576 F511 0578 OA 0579 BA07E7

057C 751400 057F 751510 0582 FIOF 0584 AAFF O586 OB 0587 BB07D2

058A 1508 058C 7BFF 058E E508 0590 B43FC7

0593 751410 0596 7515FF 0599 FIOF 059B 22

059C 758380 BORDER: 059F 750807 05A2 7BFF 05A4 7AFF 05A6 78FF BlT3: 05A8 85081 1 BIT2: 05AB E8 05AC C3 05AD 33 05AE F8 05AF 851182 BITI:

MOV MOV MOV SETB RLC MOV MOV MOVX ANL XCH MOV CLR SUBB MOV XCH MOVX MOV ADD MOV I NC CJNE

MOV MOV ACALL MOV INC CJNE

DEC MOV MOV CJNE

MOV MOV ACALL RET

MOV MOV MOV MOV MOV MOV MOV CLR RLC MOV MOV

RO,#OO VDPL,lVDPL A, RO C A RO,A DPL,VDPL A,@DPTR A, RO A, R1 A,VDPL C A,#040H DPL,A A, R1 @DPTR,A A, VDPL A,#08 VDPL,A R2 R2,#07,BETI

VELOC2,##0O VELOCI,#OIOH GRAFICA R2,OFFH R3 R3,#07,BET2

IVDPL R3,#OFFH A,IVDPL A,#03FH,BET3

VELOC2,#OIOH VELOCI,#OFFH GRAFICA

DPH,#INIALMCH IVDPL,#07H R3,#OFFH R2,#OFFH RO,#OFFH VDPL,lVDPL A, RO C A RO,A DPL,VDPL

HOJA 90

PhQ94?&%7&&9-

AVOCET SYSTEMS 8051 CROSS-ASSEMBLER - VERSION 1.10M SOURCE FILE NAME: MAT9.SIM PAGE 18

O582 EO O583 58 05B4 FO O585 E51 1 O587 2408 05B9 F511 05BB OA 05BC BA07FO

05BF 751400 05C2 751510 05C5 FIOF 05C7 PAFF 05C9 OB 05CA BB07DB

05CD 1508 05CF 7BFF 05D1 E508 05D3B4FFDO

05D6 22

05D7 758380 BORIZQ: 05DA 750800 05DD 7BFF 05DF 7AFF 05E178FF BOT3: 05E3 85081 1 BOT2: 05E6 E8 05E7 C3 05E8 13 05E9 F8 05EA 851182 BOTI: 05ED EO 05EE 58 05EF FO 05FO E51 1 05F2 2408 05F4 F511 05F6 OA 05F7 BAO7FO

05FA 751400 05FD 751510 0600 FIOF 0602 AAFF 0604 OB 0605 BB07DB

MOVX ANL MOVX MOV ADD MOV INC CJNE

MOV MOV ACALL MOV INC CJNE

DEC MOV MOV CJNE

RET

MOV MOV MOV MOV MOV MOV MOV CLR RRC MOV MOV MOVX ANL MOVX MOV ADD MOV INC CJNE

MOV MOV ACALL MOV INC CJNE

A,@DPTR A, RO @DPTR,A A, VDPL A,#O8 VDPL,A R2 R2,#07,BITI

VELOC2,#OO VELOCI,#OIOH GRAFICA R2,OFFH R3 R3,#07,BIT2

IVDPL R3,#OFFH A,lVDPL A,#OFFH,BIT3

DPH,#INIALMCH IVDPL,#OO R3,#OFFH R2,#OFFH RO,#OFFH VDPL,lVDPL A, RO C A RO,A DPL,VDPL A,@DPTR A, RO @DPTR,A A, VDPL A,#O8 VDPL,A R2 R2,#07,BOTI

VELOC2,#OO VELOCl,#OIOH GRAFICA R2,OFFH R3 R3,#07,BOT2

POR LbPEZ SALGADO NIVARDO

POR LÓPEZ SALGADO NIVARDO

AVOCET SYSTEMS 8051 CROSS-ASSEMBLER - VERSION 1.10M SOURCE FILE NAME: MAT9.SIM PAGE 19

0608 0508 060A 7BFF 060C E508 060E B408DO

INC IVDPL MOV R3,#OFFH MOV A,lVDPL CJNE A,#08H,BOT3

0611 22 RET

0612 30F004 FAST: 0615 D1A5 0617 8024 0619 D13E FAST3: 061 B 758380 061E 751100 0621 751040 0624 851082 FASTl: 0627 051 O 0629 EO 062A 851 182 062D 051 1 062F FO 0630 E51 1 0632 B440EF

0635 751 404 0638 7515FF 063B FlOF 063D 22 FAST2:

063E 751080 READCARS: 0641 750840 0644 A8FF MIR2: 0646 85081 1 0649 851 283 064C 851 382 064F EO 0650 A3 0651 858312 0654 85821 3 0657 31 10 0659 850883 MIRI: 06% 850C82 065F EO 0660 A3 0661 858308 0664 85820C

JNB ACALL SJMP ACALL MOV MOV MOV MOV INC MOVX MOV INC MOVX MOV CJNE

MOV MOV ACALL RET

MOV MOV MOV MOV MOV MOV MOVX I NC MOV MOV ACALL MOV MOV MOVX INC

. MOV MOV

B.O,FAST3 LIMPMEM FAST2 READCARS DPH,#INIDESPH VDPL,#INIDESPL VDPH,#INIALMCL DPL,VDPH VDPH A,@DPTR DPL,VDPL VDPL @DPTR,A A,VDPL A,#040H,FASTI

VELOC2,#04 VELOCI ,#OFFH GRAFICA

VDPH,#INIDESPH IVDPL,#040H R0,OFFH VDPL,IVDPL DPH,CDPH DPL,CDPL A,@DPTR DPTR CDPH,DPH CDPL,DPL DECOD DPH,PALH DPL,PALL A,@DPTR DPTR PALH,DPH PALL,DPL

HOJA 92

? & Y 4 # 4 % 7 d d C 9 W

AVOCET SYSTEMS 8051 CROSS-ASSEMBLER - VERSION 1.10M SOURCE FILE NAME: MAT9.SIM

0667 851 083 066A 851 182 066D FO 066E Dl88 0670 85821 1 0673 08 0674 B807E2

0677 0508 0679 E508 0678 B448C6

067E 1513 0680 E513 0682 B4FF02

0685 1512 0687 22

0688 C3 SUMA8: 0689 E582 068B 2408 068D F582 068F E583 0691 3400 0693 F583 0695 22

0696 A9FF 0698 A8FF 069A 08 069B E8 069C B515FB

069F O9 06AO E9 06A1 B514F4

06A4 22

PAGE 20

MOV MOV MOVX ACALL MOV INC CJNE

INC MOV CJNE

DEC MOV CJNE

DEC IRSE1 :

CLR MOV ADD MOV MOV ADDC MOV RET

RETARDO : RETARDO : RETARD1 : MOV CJNE

INC MOV CJNE

RET

POR LÓPEZ SALGADO NIVARDO

DPH,VDPH DPL,VDPL @DPTR,A SUMA8 VDPL,DPL RO RO,#07H,MIRI

IVDPL A,lVDPL A,#O48H,MIR2

CDPL A,CDPL A,#OFFH,IRSEI

CDPH RET

C A, DPL A,#08H DPL,A A,DPH A,#OOH DPH,A

MOV R1 ,OFFH MOV R0,OFFH INC RO A, RO A,VELOCI,RETARDI

R1 A, R1 A,VELOC2,RETARDO

POR LÓPEZ SALGADO NIVARDO

AVOCET SYSTEMS 8051 CROSS-ASSEMBLER - VERSION 1.10M SOURCE FILE NAME: MAT9.SIM PAGE 21

06A5 758380 LIMPMEM: 06A8 758200 06AB 7400 LIMPIO: 06AD FO 06AE A3 06AF E582 06B1 B440F7

06B4 22

O685 758380 LIMPMEM2: 06B8 758240 06BB 7400 LIMP102: 06BD FO 06BE A3 06BF E582 06C1 B480F7

06C4 22

06C5 750940 INTERC: 06C8 758380 06CB 750800 BRIN2: 06CE 751 108 06D1 851182 BRINI: 06D4 EO 06D5 850882 06D8 FO 06D9 051 1 06DB 0508 06DD E508 06DF B438EF

06E2 850982 BRIN3: 06E5 EO 06E6 850882 06E9 FO 06EA 0509

MOV MOV MOV MOVX INC MOV CJNE

RET

MOV MOV MOV MOVX INC MOV CJNE

RET

MOV MOV MOV MOV MOV MOVX MOV M O M I NC INC MOV CJNE

MOV MOVX MOV MOVX INC

DPH,#INIDESPH DPL,#INIDESPL A,#OOH @DPTR,A DPTR A, DPL A,#040H,LIMPIO

DPH,#INIALMCH DPL,#INIALMCL A,MO @DPTR,A DPTR A, DPL A,#080H,LIMP102

IIVDPL,#O.QOH DPH,#INIDESPH IVDPL,#OOH VDPL,#08H DPL,VDPL A,@DPTR DPL,lVDPL @DPTR,A VDPL IVDPL A,lVDPL A,#038H,BRINI

DPL,IIVDPL A,@DPTR DPL,lVDPL @DPTR,A IIVDPL

POR LÓPEZ SALGADO NIVARDO

AVOCET SYSTEMS 8051 CROSS-ASSEMBLER - VERSION 1.10M SOURCE FILE NAME: MAT9.SIM PAGE 22

06EC 0508 06EE E508 06FO B440EF

06F3 751400 06F6 751540 06F9 FIOF 06FB E509 06FD B480CB

0700 22

0701 C3 INCCAR: 0702 E513 0704 2401 0706 F513 0708 E512 070A 3400 070C F512 070E 22

070F D2D3 GRAFICA: 0711 D2D4 0713 C2B4 0715 C2B5 071 7 7800 0719 7AFF 0718 7BFF 071D C2B1 071F 79FF REPITE: 0721 758380 0724 758200 0727 EO SIGPAL: 0728 30F70 1 072B F4 072C F590 ABC: 072E O 0 072F O0 0730 O0 0731 O0 0732 O0 0733 D2B4 0735 O0 0736 O0 0737 C2B4 0739 8890

I NC MOV CJNE

MOV MOV ACALL MOV CJNE

RET

CLR MOV ADD MOV MOV ADDC MOV RET

SETB SETB CLR CLR MOV MOV MOV CLR MOV MOV MOV MOW JNB CPL MOV NOP NOP NOP NOP NOP SETB NOP NOP CLR MOV

IVDPL A,lVDPL A,#040H,BRIN3

VELOC2,#OO VELOC1,#040H GRAFICA A, I1 VDPL A,#080H,BRIN2

C A,CDPL A,#01 H CDPL,A A,CDPH A,#OOH CDPH,A

PSW.3 PSW.4 P3.4 P3.5 RO,#OOH R2,#OFFH R3,#OFFH P3.1 RI,#OFFH DPH,#INIDESPH DPL,#INIDESPL A,@DPTR B.7,ABC A 90H.A

P3.4

P3.4 90H,RO

HOJA 95

POR LÓPEZ SALGADO NIVARDO

AVOCET SYSTEMS 8051 CROSS-ASSEMBLER - VERSION 1.10M SOURCE FILE NAME: MAT9.SIM PAGE 23

0738 O0 073C O0 073D O0 073E O0 073F O0 0740 D2B5 0742 O0 0743 O0 0744 C2B5 0746 08 0747 O9 0748 A3 0749 B93FDB

074C OA 074D EA 074E B515CE

0751 7AFF 0753 OB 0754 EB 0755 B514C7 0758 D2B1 075A C2D3 075C C2D4 075E 22

075F COEO ALMFIFO: 0761 E50D 0763 B4FF08

0766 E50E 0768 B4FF03 076B DOEO 076D 22 076E 850E82 ALM1: 0771 850D83 0774 DOEO 0776 FO 0777 A3 0778 85830D 077B 85820E 077E 22

NOP NOP NOP NOP NOP SETB NOP NOP CLR INC INC INC CJNE

INC MOV CJNE

MOV I NC MOV CJNE SETB CLR CLR RET

PUSH MOV CJNE

MOV CJNE POP RET MOV MOV POP MOVX INC MOV MOV RET

P3.5

P3.5 RO R1 DPTR R1,#03FH,SIGPAL

R2 A, R2 A,VELOCI,REPITE

R2,#OFFH R3 A, R3 A,VELOC2,REPITE P3.1 PSW.3 PSW.4

ACC A,ALMSIGCH A,#OFFH,ALMI

A,ALMSIGCL A,#OFFH,ALMI ACC

DPL,ALMSIGCL DPH,ALMSIGCH ACC @DPTR,A DPTR ALMSIGCH,DPH ALMSIGCL,DPL

HOJFl 96

POR LÓPEZ SAL.GADO NIVARDO

AVOCET SYSTEMS 8051 CROSS-ASSEMBLER - VERSION 1.10M SOURCE FILE NAME: MAT9.SIM PAGE 24

O000 FIN END

P a B 9 t z & 7 & d C 9 W POR LÓPEZ SALGADO NIVARDO

AVOCET SYSTEMS 8051 CROSS-ASSEMBLER - VERSION l. lOM SOURCE FILE NAME: MAT9.SIM PAGE 25

- SYMBOL TABLE -

ABC

ACC

ALCLAVEH

ALCLAVEL

ALMI

ALMFIFO

ALMSIGCH

ALMSIGCL

ALMTEXTH

ALMTEXTL ANCHO

ASCI I B

BOT1 BOT2

BOT3

BAJI

BAJ3

BAJ4

BAJ5

BAJ6

BA J7

BA J8

BA J9

BAT 1 BAT2

BAT3

BAT4

BAT5

BET1

BET2

BET3

BET4

BET5

BIT1

BIT2 BIT3 BORDER BORIZQ

BRIN1

BRIN2

O000 o000 072C

00EO

0080 O080 076E

075F

NOD

W E

0080 0084

OOOF

WE7

00FO

05EA

05E3

05E 1

0435 0441

041 4

0408 O408 03FE

0400 0462

050D

0506 0504

04F6

04FA

0563

055C

055A

054C

0550 05AF

05A8 05A6 059C

05D7

06D1 06CB

BRIN3 06E2

CDPH 0012

CDPL 0013

CONTADOR 00lC

COUNT

DECOD

DNEW

DNEWI

DOS

DPH DPL

DSTDI

DSTD2

DSTD3

DSTD4

DSTD5

DSTDER

DSTDOWN

DSTIZQ

DSTUI

DSTU2

DSTU3

DSTU4

DSTU5

DSTUP

EFI

EF2

EF3

EF4

EF5 EF6

EF7

EFECTI

EFECT2

EFECTO

ESPERA

EXIT

EXIT2 FAST FAST1

FAST2

FAST3 FIN

007D

o1 10 GQ9A

O098

O l lB

0083

0082

04BF 04BA

0482

O484

04EF o546

04A9

04FO

0479

0474

046c 046E

04A8 0463

0264

0266

0277

0279

0280

029C

OB8 001 6

0017

0255

O09c OOEB

OOED 061 2 0624

063D o619 077F

GRAFICA

IIVDPL

IE

INCCAR

INIALMCH

INIALMCL

INIDESPH

INIDESPL

INTELIGE

INTERC

INTIEO

IR01 IR02

IR03 IR04

IR05 IR06

IR07

I R08

IR09 IR10

IR11 IR12

IR13

IR14

IR15

IR16

IR17

IR18

IRSE1

IVDPL

LIMPIO

LIMP102

LIMPMEM

LIMPMEM2

MlRl

MIR2

NEAR1 NEAR2 NEAR3

NEAR4

NEAR45 NEAR5

070F

O009

00A8

0701

0080 0040 O080 oooo 0152

06C5 0085 0182

o1 89

o1 90 O1 97

019E

01A5

OIAC

O1 82

O1 B9

O1 BC

O1 BF

01c2

01C5

01C8

OICB

OICE

OlDl

01D4

0687 O008

06AB

06BB

06A5

06B5

0659 0644

0131 0134 O1 39 O1 3C

O1 47

014C

NEXT

OFFSET1

OFFSET2

P I

P3

PALH

PALL

PCON

PG 1

PGIO PGI 1

PG12

PG16

PG17

PG18

PG2 PG3

PG4

PG5

PG6 PG7

PG8 PG9

PGM

PLISS

PREPARA

PSW

READCARS

REGION

REPITE

RETARDO

RETARD1

RETARDO

ROTDER

ROTDERI

ROTDERIO ROTDERI 1 ROTDER2 ROTDER4 ROTDER5

ROTDER6

ROTDER7

ROTDER8

00A6

007E

O07F

O 0 9 0

0090 OOOB

000c

0087

O1 D9

022D

OIFC

01F7

0252

021 5 021 E

01E1

O245

0208

023B

0235

021 o 0206

0224

O1 D6

O0A3

OOF8

OODO

063E

001 F

071 F

0698

069A

0696

02AB

02D0

0324

0326

02DE 02C8 02co

O289

0312 030F

ROTDER9

ROTDOWN

ROTIZQ

ROTlZQl

ROTIZQ12

ROTIZQ2

ROTIZQ3

ROTIZQ4

ROTIZQ5

ROTIZQ6 ROTIZQ7

ROTIZQ8

ROTIZQ9

ROTUP

RUTINA

SAL1 SALTO3

SCOOT

SIGPAL

SLTO

SLTI

SLT2

SLT3

SLT4

SP

SSCOTT

START

SUMA8

TABLE1

TAUTLET TIPLETRA

UNO

UP1

UP2

UP3

UP4

VDPH

VDPL VELOCI VELOC2

031C

03C5

033D

0372

03C4

0381

0353

036A

0362

034C 0344

0346

0394

03F7 O01 D

0151

02FO

0053

0727

0087

OOBB

OOCE 00E3

GOD9

0081 004D

0030

0688

O1 5E

001 E

OOOA

o1 18

03DA

03CE

oxc 03F6

001 o O01 1 0015

001 4

POR LÓPEZ SALGADO NIVARDO

RESULTADOS.

POR LÓPEZ SALGADO NIVAKDO

Los resultados obtenidos son muy satisfactorios, ya que las caracteristicas que resultaron,

ponen en buen lugar de competencia a mi Pizarrón Electrónico con respecto a otros productos de

características similares,haciendo notar que mi solución contempla otras posibilidades que otros

no tienen.

A manera de resumen de los resultados obtenidos, en la siguiente hoja se hace una lista de

las caracetrísticas más relevantes del proyecto y el énfasis de que la interfaz con la computadora

personal P.C. hasta hoy en día no se encuentra en el mercado un producto que nos brinde estas

posibilidades.

POR LÓPEZ SALGADO NIVARDO

'\ '\ \

a lnterfaz con la P.C.

a Se conecta al puerto PARALELO [LPT].

a El mantenimiento que requiere es mínimo.

a Bajo consumo de energía.

Una vez programada desde la P.C., se puede colocar el cualquier lugar con solo con la conexión a la linea de 127VAC.

?%89eUa7wa!¿7- POR LÓPEZ SALGADO NIVARDO

a Una vez que se introduce un texto desde la P.C. , este se mantiene en memoria aún si existe una interrupción en el suministro de energía eléctrica.

La pantalla puede permanecer semanas desconectada de la línea de suministro y conservar el conjunto de textos que fueron introducidos desde la P.C.

a Para borrar todos los textos introducidos que se han almacenado, basta con pulsar el botón de reset que se encuentra en la parte posterior de la pantalla para poder introducir nuevamente desde la P.C. bloques de texto.

u Si se quiere conservar los textos previamente almacenados , basta con conectar la pantalla al puerto e introducir el nuevo texto, el que se desplegará al final de los que ya estaban almacenados.

1 La Pantalla puede desplegar todo el conjunto de caracteres ASCII extendido.

Capacidad de almacenar hasta 64'000 caracteres. El equivalente de 32 pantallas que aparezcan en el mofiitor de la P.C. totalmente llenas de texto, en formato standard [ 80 columnas por 25 renglones].

POR LÓPEZ SALGADO NIVAKDO

CONCLUSIONES.

HOH 103

POR LÓPEZ SALGADO NIVARDO

Después de aplicar las técnicas de investigación aprendidas a lo largo de la instrucción

académica se puede hacer énfasis en lo siguiente:

La elaboración de un modelo que resuelva lo más cercano posible el problema propuesto,

implica mucho trabajo de análisis, incluso para iniciar la recopilación de información se trabajo

mucho ya que si se inicia por un lado erróneo todo el trabajo subsecuente no será aprovechado.

La siguiente parte importante en este orden de sucesión es el planteamiento del modelo que

se pretende funcione como solución del problema. En esta etapa se pretende considerar a todas

las variables involucradas; pero la experiencia nos dice que esto es falso por que a fin de cuentas

la realidad se trata de modelar con las variables más determinantes ya que en sentido estricto el

universo interactúa en su totalidad y las variables reales son infinitas, claro, la ciencia toma solo

las más importantes para presentar un modelo y los resultados obtenidos son muy aproximados a

la realidad. Es por esto que durante la propuesta de la solución se tiene que reconsiderar una parte

o todo la solución dependiendo de la importancia del peso que las nuevas variables encontradas

tengan sobre el fenómeno a simular.

tiom 104

POR LÓPEZ SALGADO NIVARDO

Las hipótesis que se formularon al inicio fueron redefinidas deacuerdo a los resultados de las

primeras pruebas, sin embargo, estos cambios no modificaron substancialmente el desarrollo del

trabajo, la consecuencia más importante es la pérdida de tiempo, ya que como lo hice notar al

inicio de este reporte, los desarrollos basados en la tecnología electrónica deben ser rápidos para

que el tiempo de vida del producto en el mercado justifique la inversión en investigación e

implementación.

Una vez que los dispositivos electrónicos respondían a mis requerimientos, se consideró la

elaboración de un hardware muy flexible, es decir, que el software no encontrara limitaciones

importantes sobre el hardware instalado. Esto sucede en todo desarrollo que implique tecnología

digital, lo que se busca es que el software pueda desarrollarse con las mínimas restricciones de

hardware posibles todo esto para garantizar un producto versátil y modificable sin que esto deba

tener un alto costo.

Ya que se tenía armado el alambrado de las partes, el reto era hacer posible esa idea de

implementar situaciones que antes solo eran posibles con circuitos electrónicos dedicados como:

contadores, decodificadores, multiplexores, etc. con software. Esta parte del desarrollo de software

requirió la mayor parte del tiempo del proyecto, ya que todo tiene su precio y el precio que se paga

por desarrollar sistemas que realicen funciones complejas mediante software requiere destreza en

la programación estructurada sea cual sea el microcontrolador que se esté utilizando.

AI final de las pruebas se obtuvieron en efecto las características que se habían especificado

en la propuesta del proyecto, cabe mencionar que los cambios realizados durante el desarrollo no

afectaron el funcionamiento final sino el acoplamiento entre las partes que lo constituyen.

HOR 105

POR L6PEZ SALGADO NIVARDO

BIBLIOGRAFÍA.

HOJA 106

POR LÓPEZ SALGADO NIVARDO

+ ECG Semiconductor Master Replacement Guide - ECG212Q

O Copyright April 1991

By Philips ECG.

+ Pulse Digital and Switching Waveforms

Jacob Millman, Ph.D. & Herbert Taub, Ph.D.

Copyright O 1965 by McGraw-Hill, Inc.

+ Ingeniería de Control Moderna

Katsuhiko Ogata

Copyright 1970, by Prentice-Hall Inc.

+ Métodos experimentales para Ingenieros

Jack P. Holman

Copyright O 1984, by McGraw-Hill, Inc., U.S.A.

HOJA 107

POR L ~ E Z SALGADO NIVARDO

+ Lógica digital y Diseño de Computadores

M. Morris Mano

Copyright O 1979, by McGraw-Hill, Inc.

+ Instrumentación Electrónica y Mediciones

William David Cooper

Copyright O MCMLMVIII, by McGraw-Hill, Inc.

+ Fast and LS TTL Data

By Motorola

O Motorola Inc., 1989

HOXl 108