Documentos de Académico
Documentos de Profesional
Documentos de Cultura
2. INSTRUCCIONES ARITMETICAS
3. INSTRUCCIONES LOGICAS
UNIVERSIDAD NACIONAL DEL CALLAO FIEE MICROCONTROLADORES DSPIC30F
6. INSTRUCCIONES DE COMPARACION
7. INSTRUCCIONES DE SALTO
UNIVERSIDAD NACIONAL DEL CALLAO FIEE MICROCONTROLADORES DSPIC30F
8. INSTRUCCION DE STACK
9. INSTRUCCION DE CONTROL
MOV W0,W1
Mueve el contenido del registro W0 al registro W1.
Como se sabe un dspics est compuesto de 16 registros de trabajo desde W0, W1, W2... W15
de 16 bits de extensin de cada registro, por este esta instruccin se puede realizar entre
UNIVERSIDAD NACIONAL DEL CALLAO FIEE MICROCONTROLADORES DSPIC30F
registros de trabajo (registros W) y registros que disponga el dspic, tambin son vlidas las
siguientes instrucciones:
MOV 0x0102, W6
Mueve la palabra (16 bits) de la localizacin 0x0102 al registro W6.
MOV #0x0003,W0
Mueve un literal (un numero) al registro WEG=W0
ADD W0,[W4],W5
Sumo el contenido de W0 mas el contenido de la direccin de memoria especificado por W4 y
el resultado lo coloco en el registro de W5 , la suma es en forma de palabra ( 16 bits)
ADD 0x0106,WREG
Suma W0 al contenido de la direccin de memoria especificado por 0x0106 y lo coloco el
resultado en W0
ADD RAM100
Sumo el contenido de la direccin de memoria (variable) especificad por RAM100 al registro
W0 y el resultado lo deposito en la variable RAM100 mismo
PUSH.S
Guarda en la pila de datos el valor de W0, W1, W3, y del registro Status
PUSH W0
Guarda en la pila el valor de W0, esta instruccin es equivalente en lenguaje ensamblador con
mov a MOV W0,[W15++]
PUSH W8
Guarda en la pila de datos el valor de W8
POP.S
Retorna de la pila de datos el valor de W0, W1, W3, y del registro Status
POP W0
Retorna de la pila de datos el valor de W0, esta instruccin aqu descrita con mov es
equivalente a MOV [--W15],W0
BTSC SR,#Z
El BIT Z (zero) del registro estatus es cero? Si es salta una instruccin, sino continua con la
siguiente instruccin.
BSET PORTB,#3
Si el BIT 3 de la prtico PORTB del Dspic30Fxxxx es 1? Si es salta una instruccin , sino continua
con la siguiente instruccin.
UNIVERSIDAD NACIONAL DEL CALLAO FIEE MICROCONTROLADORES DSPIC30F
MOV 0xFF00, W0
MOV WO, TRISB
Configuro los pines 15:8 del port B como entradas y los pines 7:0 del port B del dspic como
salida
LAC W1,A
Muevo el contenido de W1 al registro acumulador del DSPIC
MPY W4*W5,A
Multiplique W4*W5 y el resultado coloquelo en acumulador, esta instruccin se ejecuta en
dos ciclos de reloj , he aqu en donde entra en operacin las ventajas y caractersticas del dspic
SAC.R A,W0
Guarda Acumulador al registro W0
COMANDOS EN MPLAB
.bss
Ensambla las variables a usarse
.bss
B1: .space4 ; cuatro bytes reservado para B1
B2: .space1 ; 1 byte reservado par B1
Count: .space 2 ; 2 bytes reservado para Count
Sistema oscilador
Osciladores primarios
El reloj del sistema viene dado por la seleccin de una fuente de oscilacin y una
configuracin de la seal dada por ste.
Tipos de osciladores:
Interno: Disponible en el propio PIC.
Externo: Generalmente instalado en la placa en donde se inserta el
PIC.
Tratamientos posibles a la seal dada por el oscilador:
Phase Locked Loop (PLL): Multiplica una seal de reloj (aumenta la
frecuencia).
Programmable Clock Divider: Divide una seal de reloj (disminuye la
frecuencia).
La seleccin del reloj y sus propiedades se guardan en los registros de
configuracin del sistema (memoria de cdigo).
Ejemplo de configuracin
Problema propuesto
1. Programar el dsPIC para que al tener pulsado un boton X se mantenga encendido el
LED correspondiente X. Al soltar el boton se debe apagar el LED. Pueden tenerse
pulsados varios botones a la vez.