Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Cada modelo de AVR tiene su tabla de vectores; es necesario revisar el manual del
dispositivo empleado, para conocer sus diferentes tipos de interrupciones y sus
vectores correspondientes.
La instalacin del entorno no representa ninguna dificultad, slo hay que dar doble
clic en el archivo AVRStudio4v410.exe y seguir las instrucciones del asistente de
instalacin. Al ejecutar el entorno, veremos la siguiente pantalla inicial:
Presionamos el cuadro
para crear un proyecto nuevo; en el cuadro de
Proyect Name: escribimos el nombre de nuestro proyecto, para este ejemplo lo
nombraremos cont_int; presionamos el cuadro de Next >>. Ahora seleccionamos la
plataforma depuradora y el dispositivo; en el cuadro izquierdo damos un clic sobre
AVR Simulator; en el lado derecho damos clic sobre el dispositivo que vamos a
programar, para nuestro ejemplo utilizaremos el AT90S2313. Presionamos el cuadro
Finish.
La ventana superior derecha es el editor de texto (el encabezado de la ventana es la
ruta donde se guardarn todos los archivos que se generen en nuestro proyecto),
sobre la cual escribiremos el cdigo en lenguaje ensamblador de nuestro programa.
Una vez que tenemos una compilacin exitosa, podemos cargar el programa en la
memoria del AVR, pero lo ms recomendable es simularlo primero. Para iniciar una
simulacin debemos presionar el icono Start Debugging, ubicado en la barra de
tareas.
La ventana Workspace ubicada a la
izquierda contiene todos los registros del
AVR, organizados en cuanto a su tipo.
Vamos a desplegar los registros de trabajo
1631 dando un clic sobre el smbolo +.
Para introducir un dato inmediato, damos
doble clic sobre el registro de nuestro
inters, aparecer una pequea ventana en
la cual escribimos el valor del dato y
presionamos OK.
Tambin vamos a desplegar PORTB y el
PORTD. En cada puerto se pueden
observar los tres registros a los que est
asociado,
esto
es,
registro
de
configuracin (DDRx), registro de datos
(PORTx) y su registro de pines (PINx).
Para introducir valores slo basta dar un
clic sobre la casilla del bit que deseamos
modificar.
Podemos comenzar a simular presionando el icono
Run, empero, la velocidad de
ejecucin es tan elevada que no permite observar la ejecucin de instrucciones; para
remediar esto, podemos colocar el cursor en las instrucciones donde queramos hacer
Toggle Breakpoint. Para quitar un punto de
una pausa y presionamos el icono
pausa, situamos el cursor en el punto y presionamos nuevamente Toggle
Breakpoint.
Otra forma es presionando
Auto Step, ahora si es posible ver que instruccin se
est ejecutando, lo cual se indica con una fecha amarilla en la ventana de edicin.
Para pausar la ejecucin del simulador presionamos Break.
Con el icono
Step Into se ejecuta slo una instruccin, siendo posible observar
con detalle que sucede tras una ejecucin. Para reiniciar la simulacin presionamos
Reset.
Para el ejemplo, vamos a poner un punto de pausa en la lnea donde se encuentra la
etiqueta de ciclo, presionamos Run; cada vez que presionemos Run la cuenta en el
registro PINB se incrementa. Ahora damos un clic sobre la casilla correspondiente al
Pin_2 del registro PIND y presionamos Step Into; se ha generado una interrupcin y
la ejecucin del programa se direcciona hacia la rutina de servicio de interrupcin, la
cual limpia a r16, entonces la cuenta que sale por el registro PINB se reinicia. Como
las interrupciones estn configuradas para activarse slo con el flanco de subida del
Pin_2 del Puerto_D, slo hasta que hagamos dicha transicin volver a generarse
una interrupcin.