Sei sulla pagina 1di 4

Manual de uso del dispositivo virtual para el Visual Simulator del IDE68K.

El archivo TM683&PlacaPerifericos.dll es un dispositivo virtual para el VisualSimulator del


entorno de desarrollo IDE68K para los microprocesadores MC68000 de Motorola.

El perifrico virtual emula el comportamiento del microinstructor TM683 de Promax conectado


al conjunto de displays de 7 segmentos y al teclado matricial de la placa desarrollada por el
DTE.

La conexin fsica con el microinstructor emulada es la siguiente:

Puerto A de la VIA1 conectado al teclado matricial de 16 teclas.


Puerto B de la VIA1 conectado a los leds del microinstructor TM683
Puerto A de la VIA2 conectado a los Datos del conjunto de 4 display's de 7 segmentos
Puerto B de la VIA2 conectado a las seales de control del conjunto de display's de 7 segmentos.

Esta descripcin est detallada en la gua del trabajo de SD en:


http://www.dte.us.es/tec_ind/electron/sd/0708/0708SD.GuiaTrabajo.pdf

Instalacin de la dll:
El emulador se instala en el simulador desde el men Peripherals -> Configure Peripherals
Mediante el botn Browse del panel que se abre, se selecciona como custom device file la librera
TM683&PlacaPerifericosBeta2.dll

Una vez seleccionado, en el mismo men Peripherals, marcar Custom device y aparecer la
interfaz de la librera junto al Simulador Visual.

Parmetros configurables:

En la figura adjunta se observa el panel de configuracin de la dll.

Display 7 segmentos: En este cuadro se puede configurar si el conjunto de 4 displays de 7


segmentos emular el comportamiento de un display fsico de nodo comn (enciende barra con
un 0) o de ctodo comn (enciende barra con un 1). Los displays de la placa de perifricos son
de tipo nodo comn.

Cdigo del dato: En este cuadro se puede configurar si el bit ms significativo del dato
corresponde al punto decimal (dp) o a la barra superior (a) del dgito. La codificacin de la placa
es tal que el msb del dato corresponde a la barra a.

Clk del sistema: Indica el reloj del microprocesador. En el caso del TM683, el reloj es de 8 Mhz.

Leyenda de teclas: La leyenda que aparecer sobre las teclas del teclado se puede modificar
escribiendo en los cuadros correspondientes.

Aviso de errores activo: La dll detecta una serie de errores (como por ejemplo escribir en modo
palabra en la VIA) y detiene el funcionamiento del simulador haciendo aparecer una ventana de
mensaje comunicando el error. Si el desarrollador ya conoce el error pero quiere seguir probando
otros aspectos del programa antes de depurarlo, puede desmarcar la casilla y no se producir el
aviso continuando la ejecucin como si el error no hubiera sucedido.

Activar Persistencia de los Displays: El refresco de los displays del simulador no puede
hacerse a la misma velocidad que el sistema real debido a la presencia del sistema operativo
Windows que gestiona los mensajes de las aplicaciones. Por ello, los displays se vern
encendidos de forma secuencial aparentando parpadeos que en la aplicacin real no apareceran.
Para emular la persistencia de la visin que se produce en el sistema real, cuando est mercada
la casilla, cada display permanece encendido cuando se activa y en las tres activaciones
sucesivas. El refresco del display debe estar hecho de tal forma que se active una de cada cuatro
veces que se cambie de display para que exista una rotacin.

Aplicar correccin de los ciclos de Clk: La vigilancia de los temporizadores T1 y T2 de las


VIAs se realiza peridicamente mediante un timer del sistema con periodicidad de 1 ms. No
obstante, en 1 ms el simulador ejecuta ms ciclos de reloj de los necesarios para que el Tx
correspondiente de la VIA pase por 0 por lo que est generando interrupciones contnuamente.
Cuando lo que se pretende es comprobar el funcionamiento global del programa esto hace que
se vea un funcionamiento ms cercano a la realidad pero cuando lo que se desea es depurar qu
ocurre entre una interrupcin y la siguiente es necesario marcar la casilla para que entre una
interrupcin y la siguiente siempre haya el mismo periodo (Run => casilla desmarcada; Step =>
casilla marcada).

Interrupcin de Teclado: En la ventana principal de la dll hay una casilla que relacionada con
el jumper de la placa de perifricos encargado de generar un pulso cada vez que se pulsa una
tecla del teclado. En la placa, este pulso se conecta fsicamente al pin CA1 mediante el jumper
anterior. La casilla acta como el jumper emulando su presencia cuando est marcada.

Algunas capacidades de la dll:


Puertos A y B de las VIA`s del TM683:
Los puertos son configurables pin a pin de manera que una escritura en un pin configurado como
entrada no altera su valor anterior. Para que la escritura se produzca, el pin tiene que estar
configurado en el registro DDRx correspondiente.
El puerto A de la VIA1 puede generar una interrupcin por flanco en el pin CA1 cuando se pulsa
cualquiera de las teclas del teclado. Para ello hay que programar los registros de la VIA
adecuadamente y marcar el checkbox del perifrico virtual segn se ve en la figura.

Temporizador T1 de cada VIA:


Pueden funcionar en modo aestable o monoestable.
La salida hardware no est simulada y no se detecta su configuracin.
El simulador generar una interrupcin si la VIA est configurada para ello. La interrupcin no
se generar antes de los ciclos de reloj programados. No obstante, en el caso de que se est
depurando con el simulador en modo run, la vigilancia del nmero de ciclos transcurrido no se
puede realizar con la necesaria velocidad y la interrupcin ser generada al transcurrir un nmero
de ciclos mucho mayor que los que corresponderan. La forma de actuacin se puede modificar
en el panel de configuracin de la aplicacin segn se ha detallado antes.

Temporizador T2 de cada VIA:


Slo est implementada la funcin de temporizador. La configuracin como contador no afecta
al funcionamiento de la dll.

Registro de desplazamiento de cada VIA:


El registro de desplazamiento no est emulado en esta versin.

Interrupciones:
Los registros IER e IFR emulan el funcionamiento de la VIA para lo referente a los
temporizadores T1 y T2 y a la interrupcin debida a flanco positivo en CA1.

Nota: Para que las interrupciones funcionen adecuadamente, es necesario instalar el vector de
interrupcin en el Autovector correspondiente, no basta con el Pseudovector. Esto es, para la
interrupcin autovectorizada de nivel2, hay que instalar la rutina de atencin en la direccin 26*4
(Autovector de Nivel2), y para la interrupcin autovectorizada de Nivel3 en la direccin 27*4
(Autovector de Nivel3).

Potrebbero piacerti anche