Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Unidad2 Ensamblador Último
Unidad2 Ensamblador Último
11101111;INCIAL4BITSMENOSSIGNIFICATIVOSCONFIGRADOSCOMOENTRADA 11101110;4BITSMASSIGNIFICATIVOSENTRANA4BITSMENOSSIGNIFICATIVOS
1 DECIM AL 1 2 3 4 5 6 7 8 9 A B C D F 0 E HEX EF EE ED EB DF DE DD DB BF BE BD BB F7 E7 D7 B7 77 7F 7B 7D 7E
D7 D0
1110 1110 1110 1110 1101 1101 1101 1101 1011 1011 1011 1011 1111 1110 1101 1011 1111 0111 0111 0111 0111
1111 1110 1101 1011 1111 1110 1101 1011 1111 1110 1101 1011 0111 0111 0111 0111 0111 1111 1011 1101 1110
1 1 1 1 1
1 1
1 1 1
Microprocesadores y microcontroladores
TECLADODE4X4:LATECLAQUESEOPRIMESEMUESTRAENELDISPLAYDE7SEGMENTOS
;.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.PROGRAMA PRINCIPAL.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.--.-.-.-.-..ORG 0000H ; PROGRAMA INICIA EN DIRECCION CERO MOV P1,#00H LJMP INICIO1 INICIO1: LCALL TIMEOUT ; LLAMA A SUBRUTINA DE LECTURA DE TECLA INICIO: MOV P1,A WAIT: JMP INICIO1 ;--------------------------------------------SUBRUTINAS--------------------------------------------TIMEOUT: CALL TIEMPO ;RETARDO PARA EVITAR REBOTE DE LA TECLA IMPRIME: TECLA1: MOV P2,#0EFH MOV A, P2 CJNE A,#0EEH,TECLA2 MOV A,#06H ;'1' LJMP INICIO CJNE A,#0EDH,TECLA3 MOV A,#5BH ;'2' LJMP INICIO CJNE A,#0EBH,TECLA4 MOV A,#4FH ;'3' LJMP INICIO MOV P2,#0DFH MOV A,P2 CJNE A,#0DEH,TECLA5 MOV A,#66H ;'4' LJMP INICIO CJNE A,#0DDH,TECLA6 MOV A,#6DH ;'5' LJMP INICIO CJNE A,#0DBH,TECLA7 MOV A,#7DH ;'6' LJMP INICIO MOV P2,#0BFH MOV A,P2 CJNE A,#0BEH,TECLA8 MOV A,#07H ;'7' LJMP INICIO TECLA8: TECLA9: CJNE A,#0BDH,TECLA9 MOV A,#7FH ;'8' LJMP INICIO CJNE A,#0BBH,TECLA10 MOV A,#6FH ;'9' LJMP INICIO MOV P2,#0F7H MOV A,P2 CJNE A,#0E7H,TECLA11 MOV A,#77H ;'A' LJMP INICIO CJNE A,#0D7H,TECLA12 MOV A,#7CH ;'B' LJMP INICIO CJNE A,#0B7H,TECLA13 MOV A,#39H ;'C' LJMP INICIO CJNE A,#077H,TECLA14 MOV A,#5EH ;'D' LJMP INICIO MOV P2,#07FH MOV A,P2 CJNE A,#07BH,TECLA15 MOV A,#71H ;'F' LJMP INICIO CJNE A,#07DH,TECLA16 MOV A,#3FH ;'0' LJMP INICIO CJNE A,#07EH, SIGUE MOV A,#79H ;'E' LJMP INICIO LJMP IMPRIME MOV R7,#0FFH MOV R6,#0FFH DJNZ R6,$ DJNZ R7,NEXT RET END
TECLA10:
TECLA11:
TECLA12:
TECLA2:
TECLA13:
TECLA3:
TECLA14:
TECLA4:
TECLA15:
TECLA5:
TECLA16:
TECLA6:
TECLA7:
Microprocesadores y microcontroladores
TECLADODE4X4:LATECLAQUESEOPRIMESEMUESTRAENELDISPLAYDE7SEGMENTOS
Microprocesadores y microcontroladores
Microprocesadores y microcontroladores
Caracteres
Microprocesadores y microcontroladores
Microprocesadores y microcontroladores
Microprocesadores y microcontroladores
Set de instrucciones
Microprocesadores y microcontroladores
Microprocesadores y microcontroladores
Microprocesadores y microcontroladores
ORG0000H LJMPMAIN
ORG030H RS EQUP2.0 RW EQUP2.1 EN EQUP2.2 ; CONFIGURACION ;Inicializacin MAIN: MOVA,#38H;001110008BITS;Primeravez(FUNCTIONSET) LCALLCOMANDO MOVA,#0CH;CURSORAPAGADO,DISPLAYENCENDIDO(DISPLAYON/OFFCONTROL) LCALLCOMANDO MOVA,#06H;00000110RECORRE(ENTRYMODESET) LCALLCOMANDO ; PROGRAMAPRINCIPAL INICIO: MOVDPTR,#DATO1 CALLRENG0 CALLTABLA MOVDPTR,#DATO2 CALLRENG1 ;LECTURADEDATOSENTABLA CALLTABLA TABLA: MOVR0,#00H CALLDELAY1 MOVDPTR,#DATO3 MOVR1,#16 CALLRENG0 OTRO: MOVA,R0 CALLTABLA MOVCA,@A+DPTR MOVDPTR,#DATO4 CALLRENG1 CALLESCRIBE CALLTABLA INCR0 CALLDELAY1 DJNZR1,OTRO MOVDPTR,#DATO5 RET CALLRENG0 CALLTABLA MOVDPTR,#DATO6 CALLRENG1 CALLTABLA CALLDELAY1 JMPINICIO
; SUBRUTINAPARAINDICARELRENGLON RENG0: MOVA,#80H LCALLCOMANDO RET RENG1: MOVA,#0C0H LCALLCOMANDO RET ; ENVIODECOMANDOALLCD COMANDO: MOVP1,A CLRRS CLRRW SETBEN CLREN LCALLDELAY RET ; ENVIODELTEXTOALLCD ESCRIBE:MOVP1,Ae SETBRS CLRRW SETBEN CLREN LCALLDELAY RET ;SUBRUTINADERETARDOPARAENVIODECOMANDOS DELAY: MOVR6,#50 HERE2: MOVR7,#255 HERE: DJNZR7,HERE DJNZR6,HERE2 RET ; SUBRUTINADERETARDOENTREMENSAJES DELAY1: MOVR5,#50 TARDA1: MOVR6,#255 TARDA: MOVR7,#255 DJNZR7,$ DJNZR6,TARDA DJNZR5,TARDA1 RET DATO1: DB'MATERIA:MICRO' DATO2: DB'ELECTRONICA' DATO3: DB'BIENVENIDOAL' DATO4: DB'TECNOLOGICODE' DATO5: DB'MINATITLAN,VER.' DATO6: DB'@itmina.edu.mx ' END Dr. Jos de Jess Moreno Vzquez
Microprocesadores y microcontroladores
Microprocesadores y microcontroladores
Microprocesadores y microcontroladores
Microprocesadores y microcontroladores
ORG
ORG
Microprocesadores y microcontroladores
EJEMPLO DE INTERRUPCIN EXTERNA (INTx): Programa que realiza el desplazamiento del encendido de un led de izquierda a derecha (led`s colocados en P0), cuando se pulse el push button colocado en la terminal correspondiente a la interrupcin externa INT0 (P3.2), los led s parpadearan 10 veces.
Microprocesadores y microcontroladores
;--------------------------------------;SUBRUTINA DE INTERRUPCIN ORG 100H ORG 0H INTO: PUSH ACC JMP START MOV A,PSW ;--------------------------------------PUSH ACC ;VECTOR DE INTERRUPCION DE INT0 MOV R0,#10 ORG 03H SALTO4: MOV P0,#0FFH JMP INTO CALL RETARDO ;---------------------------------------MOV P0,#00H ;PROGRAMA PRINCIPAL CALL RETARDO DJNZ R0, SALTO4 ORG 30H POP ACC START: MOV TCON,#01H ;Se programa la INT0 por transicin MOV PSW,A MOV IE,#081H ;Habilita interrupcin INT0 POP ACC MOV A,#00H ;Limpia Acumulador RETI SETB C ;----------------------------------------SALTO1: RLC A ;SUBRUTINA DE TEMPORIZADO MOV P0,A RETARDO: MOV R1,#0FFH CALL RETARDO SALTO3: MOV R2,#0FFH JNB ACC.7,SALTO1 DJNZ R2,$ SALTO2: RRC A DJNZ R1,SALTO3 MOV P0,A RET CALL RETARDO JNB ACC.0, SALTO2 END JMP SALTO1 NOP
Continua ejemplo
Microprocesadores y microcontroladores
Ejemplo: Programa que realiza diferentes secuencias de encendido de led`s cuando se pulsa el push button colocado en la terminal correspondiente a la interrupcin externa INT0 (P3.2)
Microprocesadores y microcontroladores
ORG 0H JMP INICIO ORG 3H JMP INTO ORG 100H MOV TCON,#01H ;Se programa la INT0 por transicin MOV IE,#81H ;Habilita interrupcin INT0 INICIO1: INC R5 ;-----------------------------------------------; SECUENCIA 1 SEC: CJNE R5,#01H,SEC1 MOV P0,#88H CALL RETARDO MOV P0,#44H CALL RETARDO JMP SEC ;------------------------------------------------; SECUENCIA 2 SEC1: CJNE R5,#02H,SEC2 MOV P0,#09H CALL RETARDO MOV P0,#22H CALL RETARDO JMP SEC1 ;-----------------------------------------------; SECUENCIA 3 SEC2: CJNE R5,#03H,SEC3 MOV P0,#18H CALL RETARDO MOV P0,#81H CALL RETARDO JMP SEC2 ;-----------------------------------------------; SECUENCIA 4 SEC3: CJNE R5,#04H,SEC4 SETB C SALTO1: RLC A MOV P0,A CALL RETARDO JNB ACC.7,SALTO1 SALTO2: RRC A MOV P0,A CALL RETARDO JNB ACC.0, SALTO2 JMP SALTO1 INICIO:
;----------------------------------------------; SECUENCIA 5 SEC4: CJNE R5,#05,TERMINA MOV P0,#81H CALL RETARDO MOV P0,#0C3H CALL RETARDO MOV P0,#0E7H CALL RETARDO MOV P0,#0FFH CALL RETARDO MOV P0,#0E7H CALL RETARDO MOV P0,#0C3H CALL RETARDO MOV P0,#81H CALL RETARDO JMP SEC4 TERMINA: CJNE R5,#06,ULTIMO MOV R5,#00H ULTIMO: JMP INICIO1 ;-----------------------------------------------; RUTINA DE INTERRUPCION INTO: INC R5 MOV 0AH,#07H MOV 0BH,#01H RETI MOV R3,#01H MOV R1,#0FFH MOV R2,#0FFH DJNZ R2,$ DJNZ R1,SALTO3 DJNZ R3,SALTO7 RET END
Microprocesadores y microcontroladores
CONVERTIDORES ANALOGO DIGITAL (SERIE) ADC0831/ADC0832/ADC0834/ADC0838 8-Bit Serial I/O A/D Converters with Multiplexer Options
Features NSC MICROWIRE compatibledirect interface to COPS family processors Easy interface to all microprocessors, or operates stand-alone 2-, 4- or 8-channel multiplexer options with address logic Shunt regulator allows operation with high voltage Supplies 0V to 5V input range with single 5V power supply TTL/MOS input/output compatible Key Specifications Resolution 8 Bits Total Unadjusted Error 12 LSB and 1 LSB Single Supply 5 VDC Low Power 15 Mw Conversion Time 32 s fCLK, Clock Frequency (max 400 KHz) tC, Conversion Time = 8(1/fCLK)
ADC0831
ADC0832
Microprocesadores y microcontroladores
;SUBRUTINADELCONVERTIDORADC0831 ADC: SETB DATO CLR CS SETB CLK CLR CLK MOV R3,#8 CLR A SETBCLK CLR CLK CLR C JNB DATO,CORRE CPL C RLCA DJNZ R3,OTRO SETB CLK CLR CLK SETB CLK CLR CLK SETB CS RET END Dr. Jos de Jess Moreno Vzquez
OTRO:
CORRE:
Microprocesadores y microcontroladores
CLK
DATO CS
Microprocesadores y microcontroladores
ADC0804
Microprocesadores y microcontroladores
;ENVIODECOMANDOALLCD COMANDO:MOVP1,A MOVA,#38H;8BITS(FUNCTIONSET) CLRRS LCALLCOMANDO CLRRW MOVA,#0CH;CURSORAPAGADO,DISPLAYENCENDIDO ;(DISPLAYON/OFFCONTROL) SETBEN LCALLCOMANDO CLREN MOVA,#06H;RECORRE(ENTRYMODESET) LCALLDELAY LCALLCOMANDO RET
10
;LECTURADEDATOSENTABLA TABLA: MOVR0,#00H MOVR1,#16 OTRO: MOVA,R0 MOVCA,@A+DPTR CALLESCRIBE INCR0 DJNZR1,OTRO RET
8
Dr. Jos de Jess Moreno Vzquez
Microprocesadores y microcontroladores
Microprocesadores y microcontroladores
CONVERTIDORESANALOGODIGITAL(SERIE) 3
;SUBRUTINADELCONVERTIDORADC0831 ADC: SETBDATO CLRCS; SETBCLK ORG100H CLR CLK MAIN: MOVR3,#08H CLRA CS EQUP3.4 SIGUE: SETBCLK CLK EQUP3.2 CLR CLK DATO EQUP3.3 CLRC JNBDATO,CORRE RS EQUP2.0 CPL C RW EQUP2.1 CORRE: RLC A EN EQUP2.2 CONTEO: DJNZ R3,SIGUE ; CONFIGURACION SETBCLK CLRCLK MOVA,#38H;8BITS(FUNCTIONSET) SETB CLK LCALLCOMANDO CLR CLK MOVA,#0CH;CURSORAPAGADO,DISPLAYENCENDIDO SETBCS ;(DISPLAYON/OFFCONTROL) MOVR4,A LCALLCOMANDO RET MOVA,#06H;(ENTRYMODESET) LCALLCOMANDO ; SUBRUTINADECONVERSIONHEXASCII ORGRESET LJMPMAIN
;LECTURADEDATOSENTABLA MOVR0,#00H MOVR1,#16 OTRO: MOVA,R0 MOVCA,@A+DPTR CALLESCRIBE INCR0 DJNZR1,OTRO RET ; SUBRUTINAPARAINDICARELRENGLON RENG0:MOVA,#80H LCALLCOMANDO RET RENG1:MOVA,#08DH LCALLCOMANDO RET ;ENVIODECOMANDOALLCD COMANDO:MOVP1,A CLRRS CLRRW SETBEN CLREN LCALLDELAY RET ; ENVIODELTEXTOALLCD ESCRIBE:MOVP1,A SETBRS CLRRW SETBEN CLREN LCALLDELAY RET ; SUBRUTINADERETARDOPARAENVIODECOMANDOS DELAY:MOVR6,#50 HERE2:MOVR7,#255 HERE:DJNZR7,HERE DJNZR6,HERE2 RET TABLA:
; PROGRAMAPRINCIPAL INICIO:MOVDPTR,#DATO1 CALLRENG0 CALLTABLA INICIO1:CALLADC MOVP0,A CALLRENG1 MOVA,R4 CALLASCII JMPINICIO1
ASCII:
SIGUIENTE:
Microprocesadores y microcontroladores
MOVR4,#00H MOVR2,A SWAPA ANLA,#0FH MOVR3,A CLRA CJNER3,#09H,MENOR MOVA,#30H JMPFIN JCREGRESA MOVA,#37H ADDA,R3 CALLESCRIBE MOVA,R2 INCR4 CJNER4,#02H,SIGUIENTE RET
10
Microprocesadores y microcontroladores