;************************************************************************* ; MENES629.INC du 24/09/2003 ;************************************************************************* ; ;************ CONFIG et IDENTIFICATION ********************************** __IDLOCS h'1949' ;Identification en h'2000'=valeur 1 9 4 9 __CONFIG h'31A4' ;mot de config en h'2007':osc int GP4 et GP5 en I/O ; MCLR sur GP3 donc pin non utilisable (à cause de ICPROG) ;************ REGISTRES ************************************************** ERRORLEVEL -302 ERRORLEVEL -305 INDF EQU H'0000' TMR0 EQU H'0001' PCL EQU H'0002' STATUS EQU H'0003' FSR EQU H'0004' GPIO EQU H'0005' PCLATH EQU H'000A' INTCON EQU H'000B' PIR1 EQU H'000C' TMR1L EQU H'000E' TMR1H EQU H'000F' T1CON EQU H'0010' CMCON EQU H'0019' ADRESH EQU H'001E' ADCON0 EQU H'001F' OPTIONS EQU H'0081' TRISIO EQU H'0085' PIE1 EQU H'008C' PCON EQU H'008E' OSCCAL EQU H'0090' WPU EQU H'0095' IOC EQU H'0096' VRCON EQU H'0099' EEDATA EQU H'009A' EEADR EQU H'009B' EECON1 EQU H'009C' EECON2 EQU H'009D' ADRESL EQU H'009E' ANSEL EQU H'009F' ;********* Bits de STATUS ****************************************** #DEFINE RP0 STATUS,5 #DEFINE TO STATUS,4 #DEFINE PD STATUS,3 #DEFINE Z STATUS,2 #DEFINE DC STATUS,1 #DEFINE C STATUS,0 ;********* Bits de INTCON ****************************************** #DEFINE GIE INTCON,7 #DEFINE PEIE INTCON,6 #DEFINE TOIE INTCON,5 #DEFINE INTE INTCON,4 #DEFINE GPIE INTCON,3 #DEFINE TOIF INTCON,2 #DEFINE INTF INTCON,1 #DEFINE GPIF INTCON,0 ;******** Bits de OPTIONS (attention accés par PAGE 1) ************ #DEFINE GPPU OPTIONS,7 #DEFINE INTEDG OPTIONS,6 #DEFINE TOCS OPTIONS,5 #DEFINE TOSE OPTIONS,4 #DEFINE PSA OPTIONS,3 #DEFINE PS2 OPTIONS,2 #DEFINE PS1 OPTIONS,1 #DEFINE PS0 OPTIONS,0 ;******** Bits de EECON1 (attention accés par PAGE 1) ************** #DEFINE RD EECON1,0 #DEFINE WR EECON1,1 #DEFINE WREN EECON1,2 #DEFINE WRERR EECON1,3 ;**********Bits de PIE1 ( accés PAGE 1)****************************** #DEFINE TMR1IE PIE1,0 #DEFINE CMIE PIE1,3 #DEFINE ADIE PIE1,6 #DEFINE EEIE PIE1,7 ;**********Bits de PIR1 ********************************************* #DEFINE TMR1IF PIR1,0 #DEFINE CMFE PIR1,3 #DEFINE ADIF PIR1,6 #DEFINE EEIF PIR1,7 ;******************************************************************** #DEFINE PAGE0 BCF RP0 #DEFINE PAGE1 BSF RP0 ;****************************************** ;** SP DELAI de 1 ms ** ;** utilise 2 cases RAM en 5B et 5C ** ;****************************************** DEL MOVLW d'10' MOVWF h'5B' DECFSZ h'5B' GOTO $ + 2 GOTO $ + 6 MOVLW d'36' MOVWF h'5C' DECFSZ h'5C' GOTO $ - 1 GOTO $-7 RETURN ;******************************************** ;** SP DELAI de W fois 1 ms ** ;** utilise 1 case RAM en h'5D' ** ;******************************************** DELAI MOVWF h'5D' INCF h'5D' DECFSZ h'5D' GOTO $ + 2 GOTO $ + 3 CALL DEL GOTO $ - 4 RETURN ;******** MACRO ***************************** ;***** utilise 2 cases RAM en 5E et 5F **** PUSH MACRO MOVWF h'5F' ; W sauvé en RAM adresse 5F MOVFW STATUS MOVWF h'5E' ; STATUS sauvé en RAM adresse 5E PAGE0 ENDM POP MACRO MOVFW h'5E' MOVWF STATUS ; restaure STATUS SWAPF h'5F',F ; restaure W SWAPF h'5F',W ENDM