Programa Del Pic en Asm
-
Upload
carlosotiniano9811 -
Category
Documents
-
view
212 -
download
0
description
Transcript of Programa Del Pic en Asm
__config 02f01h list p=16f873a INCLUDE "P16F873A.INC"
ADRES EQU 0x1E
UNI EQU 0x20DEC EQU 0x21CEN EQU 0x22TIEMPO1 EQU 0x23TIEMPO2 EQU 0x24LETRA EQU 0x25MENOR EQU 0x26MAYOR EQU 0x27BUFFER EQU 0x28
bsf STATUS,5bcf STATUS,6movlw 8Ehmovwf ADCON1movlw 1fhmovwf TRISAclrf TRISBclrf TRISCbsf STATUS,6bcf EECON1,EEPGDbcf STATUS,5bcf STATUS,6movlw 41hmovwf ADCON0
clrf PORTAclrf PORTBclrf PORTC bsf STATUS,6clrf EEADRbsf STATUS,5bsf EECON1,RDbcf STATUS,5movf EEDATA,0movwf MENORincf EEADRbsf STATUS,5bsf EECON1,RDbcf STATUS,5movf EEDATA,0movwf MAYORbcf STATUS,6movlw 38hcall CONTROLmovlw d'2'call DEMORAmovlw 06hcall CONTROLmovlw d'2'call DEMORAmovlw 0Chcall CONTROLmovlw d'2'call DEMORAmovlw 01hcall CONTROLmovlw d'2'call DEMORA
clrf LETRA
otra movf LETRA,0 call LINEA1 call DATO incf LETRA,1 movf LETRA,0 sublw d'16' btfss STATUS,2 goto otra
movlw 0xC0 call CONTROL movlw d'1' call DEMORA clrf LETRA otra2movf LETRA,0 call LINEA2 call DATO incf LETRA,1 movf LETRA,0 sublw d'16' btfss STATUS,2 goto otra2
call VERINFcall VERSUP
ciclobsf ADCON0,2 btfsc ADCON0,2 goto $-1 bsf STATUS,5movf ADRES,0 bcf STATUS,5movwf BUFFER bcf STATUS,0 btfsc ADRES,0 bsf STATUS,0 rrf BUFFER,1 movf MENOR,0 addlw d'1' subwf BUFFER,0 btfss STATUS,0 bsf PORTC,4 movf MAYOR,0 subwf BUFFER,0 btfsc STATUS,0 bcf PORTC,4 movf BUFFER,0 call DECIMAL movlw 8Dh call CONTROL movf CEN,0 call DATO movf DEC,0 call DATO movf UNI,0 call DATObtfss PORTA,1 call SUBEMIN btfss PORTA,2 call BAJAMIN btfss PORTA,3 call SUBEMAX btfss PORTA,4 call BAJAMAX goto ciclo
LINEA1addwf PCL,1 retlw "T"retlw "E" retlw "M" retlw "P" retlw "E" retlw "R" retlw "A" retlw "T" retlw "U" retlw "R" retlw "A" retlw ":" retlw " " retlw " " retlw " " retlw " "
LINEA2addwf PCL,1 retlw " " retlw " "retlw " "retlw " "retlw " "retlw " "retlw 7Fh retlw "_" retlw "_" retlw 7Eh retlw " "retlw " "retlw " " retlw " "retlw " "retlw " "
SUBEMINincf MENOR,1 call VERINF btfss PORTA,1 goto $-1 goto SAVEMIN
BAJAMINdecf MENOR,1 call VERINF btfss PORTA,2 goto $-1 SAVEMIN bsf STATUS,6 clrf EEADRmovf MENOR,0movwf EEDATA call EESAVE bcf STATUS,6 goto TIC
SUBEMAXincf MAYOR,1 call VERSUP btfss PORTA,3 goto $-1 goto SAVEMAX
BAJAMAXdecf MAYOR,1 call VERSUP btfss PORTA,4 goto $-1 SAVEMAX bsf STATUS,6 movlw d'1'movwf EEADRmovf MAYOR,0movwf EEDATAcall EESAVE bcf STATUS,6goto TICEESAVEbsf STATUS,5bsf EEDATA,2movlw 55h movwf EEADR movlw 0AAh movwf EEADRbsf EEDATA,1 bcf EEDATA,2 btfsc EEDATA,1 goto $-1bcf STATUS,5 return
TICbsf PORTC,3movlw d'100'call DEMORAbcf PORTC,3 return
CONTROLbcf PORTC,7goto ENVIAR
DATObsf PORTC,7
ENVIARmovwf PORTBmovlw d'5' call DEMORAbsf PORTC,6movlw d'5'call DEMORAbcf PORTC,6 movlw d'5'call DEMORAreturn
DECIMALmovwf UNIclrf DECclrf CENmovlw d'100'CENTENAsubwf UNI,1btfss STATUS,0 goto CIENincf CEN,1goto CENTENA
CIENaddwf UNI,1movlw d'10'DECENAsubwf UNI,1btfss STATUS,0goto DIEZincf DEC,1goto DECENA
DIEZaddwf UNI,1movlw 30haddwf UNI,1addwf DEC,1addwf CEN,1return
DEMORAmovwf TIEMPO2
TOP2movlw d'110'movwf TIEMPO1
TOP1nopnopnopnopnopnopdecfsz TIEMPO1,1goto TOP1decfsz TIEMPO2,1goto TOP2return
VERINFmovf MENOR,0call DECIMALmovlw 0C2hcall CONTROL movlw d'1'call DEMORAmovf CEN,0call DATO movf DEC,0call DATOmovf UNI,0call DATO return
VERSUPmovf MAYOR,0call DECIMALmovlw 0CBhcall CONTROLmovlw d'1'call DEMORAmovf CEN,0call DATOmovf DEC,0call DATOmovf UNI,0call DATO return ORG 0x2100DATA 0x28DATA 0x32END