Microcontroladores

download Microcontroladores

of 30

description

Microcontroladores

Transcript of Microcontroladores

UNIVERSIDAD PRIVADA ANTENOR ORREGO

UNIVERSIDAD PRIVADA ANTENOR ORREGOLENGUAJE ASSEMBLERINGENIERA ELECTRNICAIng. Lenin Llanos Len

Lenguaje AssemblerLenguaje de Mquina

Lenguaje AssemblerInstrucciones de Programa

REPERTORIO DE INSTRUCCIONESEst compuesto por 35 instrucciones que pueden ser agrupadas en los siguientes grupos:Instrucciones de carga.Instrucciones aritmticas.Instrucciones lgicas.Instrucciones de bit.Instrucciones de salto.Instrucciones para manejo de subrutinas.Instrucciones especiales.INSTRUCCIONES DE CARGANEMNICODESCRIPCINFLAGS AFECTADOSCLRF f00 (f)ZCLRW00 (w)ZMOVF f,d(f) (destino)d=0 : destino = wd=1 : destino = fZMOVLW kk (W)NingunoMOVWF f(w) (f)NingunoINSTRUCCIONES ARITMTICASNEMNICODESCRIPCINFLAGS AFECTADOSADDLW k(w) + k (w)C, DC, ZADDWF f,d(w) + (f) (destino)C, DC, ZDECF f,d(f) 1 (destino)ZINCF f,d(f) + 1 (destino)ZSUBLW kk (w) (w)C, DC, ZSUBWF f,d(f) (w) (destino)C, DC, ZINSTRUCCIONES LGICASNEMNICODESCRIPCINFLAGS AFECTADOSANDLW k(w) and k (w)ZANDWF f,d(w) and (f) (destino)ZCOMF f,d(/f) (destino)ZIORLW k(w) or k (w)ZIORWF f,d(w) or (f) (destino)ZINSTRUCCIONES LGICASNEMNICODESCRIPCINFLAGS AFECTADOSRLF f,dRota (f) a la izquierda a travs del carry (destino)CRRF f,dRota (f) a la derecha a travs del carry (destino)CSWAPF f,dIntercambia los niveles de (f) (destino)NingunoXORLW k(w) xor k (w)ZXORWF f,d(w) xor (f) (destino)ZINSTRUCCIONES DE BITNEMNICODESCRIPCINFLAGS AFECTADOSBCF f,bPone a cero el bit b del registro fNingunoBSF f,bPone a uno el bit b del registro fNingunoINSTRUCCIONES DE SALTONEMNICODESCRIPCINFLAGS AFECTADOSBTFSC f,bSalta si el bit b de f es ceroNingunoBTFSS f,bSalta si el bit b de f es unoNingunodecfsz f,d(f) 1 (destino)y salta si es ceroNingunoincfsz f,d(f) + 1 (destino)y salta si es ceroNingunogoto kSalta a la direccin kNingunoINSTRUCCIONES PARA MANEJO DE SUBRUTINASNEMNICODESCRIPCINFLAGS AFECTADOSCALL kLlamada a subrutinaNingunoRETFIERetorno de una InterrupcinNingunoRETLW kRetorno con un literal en wNingunoRETURN Retorno de una subrutinaNingunoINSTRUCCIONES ESPECIALESNEMNICODESCRIPCINFLAGS AFECTADOSCLRWDTBorra Timer del Watchdog/TO, /PDNOPNo operacinNingunoSLEEPEntra en modo bajo consumo/TO, /PDPRIMER PROGRAMAEncender un LED conectado en RB0 cada vez que el interruptor este cerrado.

PRIMER PROGRAMA1 Crear un fichero *asm, donde ir nuestro cdigo.

PRIMER PROGRAMA2 Guardamos nuestro fichero *asm, donde ir nuestro cdigo.

PRIMER PROGRAMA3 Crear nuestro proyecto. (Click Proyect Wizard..)

PRIMER PROGRAMA

4 Click en Siguiente.

PRIMER PROGRAMA5 Seleccionamos el Pic con el que deseamos trabajar.

PRIMER PROGRAMA6 Seleccionamos el Lenguaje de Programacin y Compilador (MPASM).

PRIMER PROGRAMA7 Seleccionamos el Nombre y la Ubicacin donde se guardar nuestro proyecto.

PRIMER PROGRAMA8 Agregamos nuestro Archivo (*asm) a nuestro proyecto y siguiente.

PRIMER PROGRAMA9 Click Finalizar.

PRIMER PROGRAMA10 Nos aparecer la siguiente ventana.

PRIMER PROGRAMA11 Doble Click en nuestro archivo *asm y abrir la ventana para escribir nuestro cdigo.

PRIMER PROGRAMADiagrama de Flujo para la solucin:

SINOINICIODefinicin de PIC y VariablesConfiguracin de PuertosLed ApagadoPulsador Presionado?Prender LedApagar LedPRIMER PROGRAMADefinicin de PIC y Variableslist p=16f88#include p16f88.inc__CONFIG _CONFIG1, _CPD_OFF & _CP_OFF & _DEBUG_OFF & _LVP_OFF & _MCLR_ON & _PWRTE_ON & _WDT_OFF &_WRT_PROTECT_OFF & _XT_OSC & _BODEN_OFFLed equ 0 Pulsador equ 0 PRIMER PROGRAMAorg 0x00goto Inicioorg 0x05Inicio bsf STATUS,RP0bsf TRISA,0bcf TRISB,0 clrf ANSELbcf STATUS,RP0Configuracin de Puertosbcf PORTB,LedLed ApagadoPRIMER PROGRAMAPulsador Presionado?Prender LedApagar Ledbtfsc PORTA,PulsadorBucleSINObsf PORTB,Ledgoto ApagarApagar bcf PORTB,Ledgoto BuclePRIMER PROGRAMA

PRIMER PROGRAMA