; Utilizacion de interrupciones
; Desarrollar un programa que permita generar una de las
; señales de reloj 1, 10, 100, 1000 Hz, al mismo teimpo
; que se observa en los displays el valor de la frecuencia que se
; esta generando: Eliminar tambien el uso de los interruptores que
;escogen la frecuencia y reeplazarlos por el uso del teclado
;
;Por: Pablo Vallejo
; Diego Barragán
; con la tecla 1 se escoge la frecuencia de 1hz.
; con la tecla 2 se escoge la frecuencia de 10hz.
; con la tecla 3 se escoge la frecuencia de 100hz.
; con la tecla 4 se escoge la frecuencia de 1hz.
DPORT EQU 0A0H ;DIRECCION PUERTO DE DATOS P1
INITD EQU 38H ; INICIALIZA DISPLAY
LIMP EQU 01H ;BORRA PANTALLA
INICIO EQU 02H ;POSICION INICIAL
VISUA EQU 0CH ;ENCIENDE Y CURSOR ESTATICO
CPORT EQU 0B0H ;DIRECCION PUERTO P3
STROBE EQU 0B4H ;P3.4 PIN 14-ENABLED
CTRL EQU 0B5H ;P3.5 PIN 11-RS
PROGP EQU 0010H
;*****************************
;AREA DE VECTORIZACION
;*****************************
ORG 0000H
LJMP PROGP
ORG 000BH
LJMP CHE
;**************************
;AREA PARA EL PROGRAMA PRINCIPAL
;************************** ;PROGP:
ORG 0010H
MOV SP,#2FH
MOV TCON,#01H
MOV IE,#83H
SETB P0.1
JNB P1.0,DDD
JNB P1.1,CCC
JNB P1.2,BBB
JNB P1.3,AAA
SJMP PROGP
CHE: JNB P1.0,DDD
JNB P1.1,CCC
JNB P1.2,BBB
JNB P1.3,AAA
RET;***********************
;F= 1kHz
;***********************
AAA: LCALL LCDA
MOV TMOD,#01
ALTO1: CLR TF0
MOV TH0,#254
MOV TL0,#51
SETB TR0
MOV A,PSW
PUSH ACC
JNB TF0,$
POP ACC
MOV PSW,A
CPL P0.1
LCALL CHE
SJMP ALTO1
;***********************
;F= 100Hz
;***********************
BBB: LCALL LCDB
MOV R0,#10
MOV TMOD,#01
ALTO2: CLR TF0
MOV TH0,#254
MOV TL0,#51
SETB TR0
JNB TF0,$
DJNZ R0,ALTO2
MOV R0,#10
CPL P0.1
LCALL CHE
SJMP ALTO2
;***********************
;F= 10Hz
;***********************
CCC: LCALL LCDC
MOV TMOD,#01
ALTO3: CLR TF0
MOV TH0,#76
MOV TL0,#01
SETB TR0
JNB TF0,$
CPL P0.1
LCALL CHE
SJMP ALTO3
;***********************
;F= 1Hz
;***********************
DDD: LCALL LCDD
MOV R0,#10
MOV TMOD,#01
ALTO4: CLR TF0
MOV TH0,#76
MOV TL0,#01
SETB TR0
JNB TF0,$
DJNZ R0,ALTO4
MOV R0,#10
CPL P0.1
LCALL CHE
SJMP ALTO4
;****************
;AL L C D
;****************LCDA: MOV P3,#00000000B
mov P2,#00000100B
RETLCDB: MOV P3,#00000000B
mov P2,#01000000B
RETLCDC: MOV P3,#00001000B
mov P2,#00000000B
RETLCDD: MOV P3,#10000000B
mov P2,#00000000B
RETEND
No response to “GENERADOR DE FRECUENCIAS CON EL 8051”
Publicar un comentario