Blame | Last modification | View Log | Download | RSS feed
ifndef stddef18inc ; avoid multiple inclusionstddef18inc equ 1savelisting off ; no listing over this file;****************************************************************************;* *;* AS 1.42 - File STDDEF18.INC *;* *;* Contains SFR Definitions for the PIC 16C8x Family *;* Macro Definitions, if needed, may be taken from STDDEF16.INC *;* *;****************************************************************************if (MOMCPU<93316)&&(MOMCPU<>93284)fatal "wrong target selected: only 16C84 or 16C64 allowed"endifif MOMPASS=1message "PIC16C8x Definitions (C) 1993 Alfred Arnold"message "including \{MOMCPU} registers"endif;----------------------------------------------------------------------------; Special Purpose RegistersINDF SFR 0 ; Indirekte AddressingPCL SFR 2 ; Program Couter LSBPCLATH SFR 10 ; Program Couter MSBStatus SFR 3 ; Status RegisterFSR SFR 4 ; File Select RegisterOPTION SFR $81 ; Chip Configurationif MOMCPU=$16C64PCON SFR $8eendif;----------------------------------------------------------------------------; PortsPortA SFR 5 ; Port A Data RegisterTrisA SFR $85 ; Port A Data Direction RegisterPortB SFR 6 ; Port B Data RegisterTrisB SFR $86 ; Port B Data Direction Registerif MOMCPU=$16C64PortC SFR 7 ; Port C Data RegisterTrisC SFR $87 ; Port C Data Direction RegisterPortD SFR 8 ; Port D Data RegisterTrisD SFR $88 ; Port D Data Direction RegisterPortE SFR 9 ; Port E Data RegisterTrisE SFR $89 ; Port E Data Direction Registerendif;----------------------------------------------------------------------------; Timerif MOMCPU=$16C64TMR0 SFR 1 ; Timer 0TMR1L SFR 14 ; Timer 1TMR1H SFR 15TMR2 SFR 17 ; Timer 2CCPR1L SFR $15 ; Compare / Pulse Width RegisterCCPR1H SFR $16T1CON SFR 16 ; Timer 1 ControlT2CON SFR 18 ; Timer 2 ControlPR2 SFR $92 ; Timer 2 PeriodCCP1CON SFR $17 ; Compare ModeelseifRTCC SFR 1 ; Timerendif;----------------------------------------------------------------------------; Serial Interfaceif MOMCPU=$16C64SSPBuf SFR $13 ; Serial Data RegisterSSPCon SFR $14 ; ConfigurationSSPAD0 SFR $93 ; I2C Address RegisterSSPSTAT SFR $94 ; Interface Statusendif;----------------------------------------------------------------------------; EEPROMif MOMCPU=$16C84EEData SFR 8 ; EEPROM Data RegisterEEAdr SFR 9 ; EEPROM Address RegisterEECON1 SFR $88 ; EEPROM ConfigurationEECON2 SFR $89endif;----------------------------------------------------------------------------; InterruptsINTCON SFR 11 ; Interrupt Controlif MOMCPU=$16C64PIR SFR 12 ; Interrupt FlagsPIE SFR $8c ; Interrupt Enableendif;============================================================================; Status Register BitsFlag_C EQU 0 ; CarryFlag_DC EQU 1 ; Digit-CarryFlag_Z EQU 2 ; ZeroFlag_PD EQU 3 ; Wake-Up from SLEEP InstructionFlag_TO EQU 4 ; Watchdog Reset OccuredFlag_RP0 EQU 5 ; Register Bank Bit 8if MOMCPU=$16C84Flag_RP1 EQU 6 ; Register Bank Bit 9Flag_IRP EQU 7 ; Register Bank Bit 9 (indirect)endif;----------------------------------------------------------------------------; Bits in TrisEif MOMCPU=$16C64TRISE0 EQU 0 ; RE0 Data DirectionTRISE1 EQU 1 ; RE1 Data DirectionTRISE2 EQU 2 ; RE2 Data DirectionPSPMODE EQU 4 ; Port D&E ModeIBOV EQU 5 ; Input Buffer OverflowOBF EQU 6 ; Output Buffer FullIBF EQU 7 ; Input Buffer Fullendif;----------------------------------------------------------------------------; Bits in T1CONif MOMCPU=$16C64TMR1ON EQU 0 ; Timer 1 StartTMR1CS EQU 1 ; Timer 1 Internal/External Clock SelectT1INSYNC EQU 2 ; Timer 1 External SynchronisationT1OSCEN EQU 3 ; Timer 1 Oscillator EnableT1CKPS0 EQU 4 ; Timer 1 Prescaler SelectionT1CKPS1 EQU 5endif; Bits in T2CONif MOMCPU=$16C64T2CKPS0 EQU 0 ; Timer 2 Prescaler SelectionT2CKPS1 EQU 1TMR2ON EQU 2 ; Timer 2 Start/StopTOUTPS0 EQU 3 ; Timer 2 Post-Scaler SelectionTOUTPS1 EQU 4TOUTPS2 EQU 5TOUTPS3 EQU 7endif; Bits in CCP1CONif MOMCPU=$16C64CCP1M0 EQU 0 ; CCP1 ModeCCP1M1 EQU 1CCP1M2 EQU 2CCP1M3 EQU 3CCP1Y EQU 4 ; PWM Bits 0,1CCP1X EQU 5endif;----------------------------------------------------------------------------; Bits in SSPSTATif MOMCPU=$16C64BF EQU 0 ; Buffer FullUA EQU 1 ; New Address must be written to SSPADDRW EQU 2 ; I2C Read/Write SelectS EQU 3 ; Start Bit DetectedP EQU 4 ; Stop Bit DetectedDA EQU 5 ; I2C Datum/Adresse Receivedendif; Bits in SSPCONif MOMCPU=$16C64SSPM0 EQU 0 ; Interface ModeSSPM1 EQU 1SSPM2 EQU 2SSPM3 EQU 3CKP EQU 4 ; Clock PolaritySSPEN EQU 5 ; Port EnableSSPOV EQU 6 ; Receiver OverflowWCOL EQU 7 ; Transmitter Collisionendif;----------------------------------------------------------------------------; Bits in INTCONRBIF EQU 0 ; PB4..7 Level Change IndicationINTF EQU 1 ; Interrupt FlagRTIF EQU 2 ; RTCC InterruptRBIE EQU 3 ; Bit 0 Interrupt EnableINTE EQU 4 ; Bit 1 Interrupt EnableRTIE EQU 5 ; Bit 2 Interrupt Enableif MOMCPU=$16C84EEIE EQU 6 ; EEPROM Interrupt EnableelseifPEIE EQU 6 ; Peripheral Interrupt EnableendifGIE EQU 7 ; Global Interrupt Enable; Bits in PIE1if MOMCPU=$16C64TMR1IE EQU 0 ; Timer 1 Interrupt EnableTMR2IE EQU 1 ; Timer 2 Interrupt EnableCCP1IE EQU 2 ; CCP1 Interrupt EnableSSPIE EQU 3 ; Serial Interface Interrupt EnablePSPIE EQU 7 ; Parallel Port Interrupt Enableendif; Bits in PIR1if MOMCPU=$16C64TMR1IF EQU 0 ; Timer 1 Interrupt FlagTMR2IF EQU 1 ; Timer 2 Interrupt FlagCCP1IF EQU 2 ; CCP1 Interrupt CCP1 FlagSSPIF EQU 3 ; Serial Interface Interrupt FlagPSPIF EQU 7 ; Parallel Port Interrupt Flagendif;----------------------------------------------------------------------------; Bits in OPTIONPS0 EQU 0 ; Prescaler SelectPS1 EQU 1PS2 EQU 2PSA EQU 3 ; Prescaler AssignmentRTE EQU 4 ; RTCC Trigger EdgeRTS EQU 5 ; RTCC Signal SourceINTEDG EQU 6 ; INT TriggerEdgeRBPU EQU 7 ; Port B Pull-Up Enable; Bits in PCONif MOMCPU=$16C64POR EQU 1 ; Power On Reset Flagendif;----------------------------------------------------------------------------; Bits in EECON1if MOMCPU=$16C84RD EQU 0 ; Start Read CycleWR EQU 1 ; Start Write CycleWREN EQU 2 ; Write EnableWRERR EQU 3 ; Write ErrorEEIF EQU 4 ; Write Cycle Completedendif;----------------------------------------------------------------------------restore ; re-enable listingendif ; stddef18inc