/* 2001 Jaime Tejedor G¢mez*/ /* Proyecto de Fin de Carrera*/ /* Primera Prueba con microprocesador ADSP-2186L*/ /* Tan solo se programar  el Timer para que encienda las luces cada cierto*/ /* intervalo de tiempo*/ .section/pm interrupts; /*------Interrupt vector table------*/ __reset: JUMP start; NOP; NOP; NOP; /*reset vector*/ RTI; NOP; NOP; NOP; /*IRQ2*/ RTI; NOP; NOP; NOP; /*IRQL1*/ RTI; NOP; NOP; NOP; /*IRQL2*/ RTI; NOP; NOP; NOP; /*SPORT0 transmit*/ RTI; NOP; NOP; NOP; /*SPORT0 receive*/ RTI; NOP; NOP; NOP; /*IRQE*/ RTI; NOP; NOP; NOP; /*BDMA*/ RTI; NOP; NOP; NOP; /*SPORT1 transmit*/ RTI; NOP; NOP; NOP; /*SPORT1 receive*/ JUMP timerint; NOP; NOP; NOP; /*timer*/ RTI; NOP; NOP; NOP; /*Power down*/ .section/pm program; /*Inicio*/ start: AX0=64000; /*Timer con el valor 64000*/ DM(0x3FFD)=AX0; /*Scale con el valor 255*/ AX0=255; /* para excitar el TIMER*/ DM(0x3FFB)=AX0; /* cada 0.5 segundos*/ AX0=239; /*PF4 como entrada y el resto*/ DM(0x3FE6)=AX0; /* como salidas*/ ICNTL=0x07; /*Interrupciones activas por flanco*/ IMASK=0x01; /*Activar interrupci¢n del timer*/ AX0=0x0800; /*SPORT1 como puerto serie, sin*/ DM(0x3FFF)=AX0; /* estados de espera en la PM y*/ /* ambos puertos serie desactivados*/ AX0=0; /*Valor a 0 */ /*Para resetear todos los no usados*/ DM(0x3FFE)=AX0; /*all DM wait states 0*/ DM(0x3FFA)=AX0; /*receive multichannels*/ DM(0x3FF9)=AX0; /*disabled*/ DM(0x3FF8)=AX0; /*transmit multichannels*/ DM(0x3FF7)=AX0; /*disabled*/ DM(0x3FF6)=AX0; /*SPORT0 control not used*/ DM(0x3FF5)=AX0; /*SPORT0 timing not used*/ DM(0x3FF4)=AX0; /*SPORT0 timing not used*/ DM(0x3FF3)=AX0; /*SPORT0 autobuf disabled*/ DM(0x3FF2)=AX0; /*SPORT1 control not used*/ DM(0x3FF1)=AX0; /*SPORT1 timing not used*/ DM(0x3FF0)=AX0; /*SPORT1 timing not used*/ DM(0x3FEF)=AX0; /*SPORT1 autobuf disabled*/ SET FL0; /*Encender LED 0 */ RESET FL1; /*Apagar LED 1 */ RESET FL2; /*Apagar LED 2 */ AY0=16384; /*sumando para cambiar el LED 1*/ ENA TIMER; /*Activar el Timer*/ espera: IDLE; /*Esperar interrupcion del Timer*/ JUMP espera; timerint: TOGGLE FL2; /* cambiar LED 2 cada 0.5 segundos*/ AR=AX0+AY0; IF AC TOGGLE FL1; /* cambiar LED 1 cada 2 segundos*/ AX0=AR; RTI; e-REdING. Biblioteca de la Escuela Superior de Ingenieros de Sevilla.


TRANSMISIƓN POR PUERTO SERIE UTILIZANDO COMPRESIƓN DE DATOS.

: Tejedor Gómez, Jaime
: Ingeniería Telecomunicación
Contenido del proyecto:
Directorio raíz  >  HARDWARE  >  TEST  >  PR1.ASM