LIST ;========================================================================== ; MPASM PIC16F505 processor include ; ; (c) Copyright 1999-2013 Microchip Technology, All rights reserved ;========================================================================== NOLIST ;========================================================================== ; This header file defines configurations, registers, and other useful ; bits of information for the PIC16F505 microcontroller. These names ; are taken to match the data sheets as closely as possible. ; ; Note that the processor must be selected before this file is included. ; The processor may be selected the following ways: ; ; 1. Command line switch: ; C:\MPASM MYFILE.ASM /PIC16F505 ; 2. LIST directive in the source file ; LIST P=PIC16F505 ; 3. Processor Type entry in the MPASM full-screen interface ; 4. Setting the processor in the MPLAB Project Dialog ;========================================================================== ;========================================================================== ; ; Verify Processor ; ;========================================================================== IFNDEF __16F505 MESSG "Processor-header file mismatch. Verify selected processor." ENDIF ;========================================================================== ; ; Register Definitions ; ;========================================================================== W EQU H'0000' F EQU H'0001' ;----- Register Files ----------------------------------------------------- ;-----Bank0------------------ INDF EQU H'0000' TMR0 EQU H'0001' PCL EQU H'0002' STATUS EQU H'0003' FSR EQU H'0004' OSCCAL EQU H'0005' PORTB EQU H'0006' PORTC EQU H'0007' ;----- STATUS Bits ----------------------------------------------------- C EQU H'0000' DC EQU H'0001' Z EQU H'0002' NOT_PD EQU H'0003' NOT_TO EQU H'0004' PA0 EQU H'0005' RBWUF EQU H'0007' ;----- OSCCAL Bits ----------------------------------------------------- CAL0 EQU H'0001' CAL1 EQU H'0002' CAL2 EQU H'0003' CAL3 EQU H'0004' CAL4 EQU H'0005' CAL5 EQU H'0006' CAL6 EQU H'0007' ;----- PORTB Bits ----------------------------------------------------- RB0 EQU H'0000' RB1 EQU H'0001' RB2 EQU H'0002' RB3 EQU H'0003' RB4 EQU H'0004' RB5 EQU H'0005' ;----- PORTC Bits ----------------------------------------------------- RC0 EQU H'0000' RC1 EQU H'0001' RC2 EQU H'0002' RC3 EQU H'0003' RC4 EQU H'0004' RC5 EQU H'0005' ;----- OPTION_REG Bits ----------------------------------------------------- PSA EQU H'0003' T0SE EQU H'0004' T0CS EQU H'0005' NOT_RBPU EQU H'0006' NOT_RBWU EQU H'0007' PS0 EQU H'0000' PS1 EQU H'0001' PS2 EQU H'0002' NOT_GPPU EQU H'0006' NOT_GPWU EQU H'0007' ;----- TRISC Bits ----------------------------------------------------- TRISC0 EQU H'0000' TRISC1 EQU H'0001' TRISC2 EQU H'0002' TRISC3 EQU H'0003' TRISC4 EQU H'0004' TRISC5 EQU H'0005' ;----- TRISB Bits ----------------------------------------------------- TRISB0 EQU H'0000' TRISB1 EQU H'0001' TRISB2 EQU H'0002' TRISB3 EQU H'0003' TRISB4 EQU H'0004' TRISB5 EQU H'0005' ;========================================================================== ; ; RAM Definitions ; ;========================================================================== __MAXRAM H'007F' ;========================================================================== ; ; Configuration Bits ; ; NAME Address ; CONFIG FFFh ; ;========================================================================== ; The following is an assignment of address values for all of the ; configuration registers for the purpose of table reads _CONFIG EQU H'FFF' ;----- CONFIG Options -------------------------------------------------- _OSC_LP EQU H'0FF8' ; LP oscillator _LP_OSC EQU H'0FF8' ; LP oscillator _OSC_XT EQU H'0FF9' ; XT oscillator _XT_OSC EQU H'0FF9' ; XT oscillator _OSC_HS EQU H'0FFA' ; HS oscillator _HS_OSC EQU H'0FFA' ; HS oscillator _OSC_EC EQU H'0FFB' ; EC oscillator/RB4 function on RB4/OSC2/CLKOUT pin _EC_RB4EN EQU H'0FFB' ; EC oscillator/RB4 function on RB4/OSC2/CLKOUT pin _OSC_IntRC_RB4EN EQU H'0FFC' ; Internal RC oscillator/RB4 function on RB4/OSC2/CLKOUT pin _IntRC_OSC_RB4EN EQU H'0FFC' ; Internal RC oscillator/RB4 function on RB4/OSC2/CLKOUT pin _OSC_IntRC_CLKOUTEN EQU H'0FFD' ; Internal RC oscillator/CLKOUT function on RB4/OSC2/CLKOUT pin _IntRC_OSC_CLKOUTEN EQU H'0FFD' ; Internal RC oscillator/CLKOUT function on RB4/OSC2/CLKOUT pin _OSC_ExtRC_RB4EN EQU H'0FFE' ; External RC oscillator/RB4 function on RB4/OSC2/CLKOUT pin _ExtRC_OSC_RB4EN EQU H'0FFE' ; External RC oscillator/RB4 function on RB4/OSC2/CLKOUT pin _OSC_ExtRC_CLKOUTEN EQU H'0FFF' ; External RC oscillator/CLKOUT function on RB4/OSC2/CLKOUT pin _ExtRC_OSC_CLKOUTEN EQU H'0FFF' ; External RC oscillator/CLKOUT function on RB4/OSC2/CLKOUT pin _WDT_OFF EQU H'0FF7' ; WDT disabled _WDT_ON EQU H'0FFF' ; WDT enabled _CP_ON EQU H'0FEF' ; Code protection on _CP_OFF EQU H'0FFF' ; Code protection off _MCLRE_OFF EQU H'0FDF' ; GP3/MCLR pin function is digital input, MCLR internally tied to VDD _MCLRE_ON EQU H'0FFF' ; RB3/MCLR pin function is MCLR ;----- IDLOC Equates -------------------------------------------------- _IDLOC0 EQU H'400' _IDLOC1 EQU H'401' _IDLOC2 EQU H'402' _IDLOC3 EQU H'403' LIST