summaryrefslogtreecommitdiff
path: root/2004/n/mic799/p16c5x.inc
diff options
context:
space:
mode:
Diffstat (limited to '2004/n/mic799/p16c5x.inc')
-rw-r--r--2004/n/mic799/p16c5x.inc224
1 files changed, 224 insertions, 0 deletions
diff --git a/2004/n/mic799/p16c5x.inc b/2004/n/mic799/p16c5x.inc
new file mode 100644
index 0000000..e243e1f
--- /dev/null
+++ b/2004/n/mic799/p16c5x.inc
@@ -0,0 +1,224 @@
+ LIST
+; P16C5X.INC Standard Header File, Version 3.30 Microchip Technology, Inc.
+ NOLIST
+
+; This header file defines configurations, registers, and other useful bits of
+; information for the 16C5X microcontrollers. These names are taken to match
+; the data sheets as closely as possible. The microcontrollers included
+; in this file are:
+
+; 16C52
+; 16C54
+; 16CR54
+; 16C54A
+; 16CR54A
+; 16C55
+; 16C56
+; 16C57
+; 16CR57A
+; 16CR57B
+; 16C58A
+; 16CR58A
+
+; There is one group of symbols that is valid for all microcontrollers.
+; Each microcontroller in this family also has its own section of special
+; symbols. 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 /P16C54A
+; 2. LIST directive in the source file
+; LIST P=16C54A
+; 3. Processor Type entry in the MPASM full-screen interface
+
+;==========================================================================
+;
+; Revision History
+;
+;==========================================================================
+
+;Rev: Date: Reason:
+
+;3.30 07/16/96 Aligned processors with MPASM v1.40
+;3.20 04/09/96 Added 16C54B, 16CR56B, 16C58B
+;3.10 12/14/95 Added 16C52
+;3.01 11/29/95 Removed 16CR55
+;3.00 10/16/95 Added new processors for MPASM v1.30
+;2.04 07/26/95 Reformatted for readability
+;2.03 06/21/95 Removed leading spaces
+
+;==========================================================================
+;
+; Generic Definitions
+;
+;==========================================================================
+
+W EQU H'0000'
+F EQU H'0001'
+
+;----- Register Files -----------------------------------------------------
+
+INDF EQU H'0000'
+TMR0 EQU H'0001'
+PCL EQU H'0002'
+STATUS EQU H'0003'
+FSR EQU H'0004'
+PORTA EQU H'0005'
+PORTB EQU H'0006'
+
+;----- STATUS Bits --------------------------------------------------------
+
+PA2 EQU H'0007'
+PA1 EQU H'0006'
+PA0 EQU H'0005'
+NOT_TO EQU H'0004'
+NOT_PD EQU H'0003'
+Z EQU H'0002'
+DC EQU H'0001'
+C EQU H'0000'
+
+;----- OPTION Bits --------------------------------------------------------
+
+T0CS EQU H'0005'
+T0SE EQU H'0004'
+PSA EQU H'0003'
+PS2 EQU H'0002'
+PS1 EQU H'0001'
+PS0 EQU H'0000'
+
+;==========================================================================
+;
+; Processor-dependent Definitions
+;
+;==========================================================================
+
+ IFDEF __16C52
+ __MAXRAM H'01F'
+ #define __CONFIG_2
+ ENDIF
+
+;--------------------------------------------------------------------------
+
+ IFDEF __16C54
+ __MAXRAM H'01F'
+ #define __CONFIG_0
+ ENDIF
+
+;--------------------------------------------------------------------------
+
+ IFDEF __16CR54
+ __MAXRAM H'01F'
+ #define __CONFIG_0
+ ENDIF
+
+;--------------------------------------------------------------------------
+
+ IFDEF __16C54A
+ __MAXRAM H'01F'
+ #define __CONFIG_0
+ ENDIF
+
+;--------------------------------------------------------------------------
+
+ IFDEF __16CR54A
+ __MAXRAM H'01F'
+ #define __CONFIG_1
+ ENDIF
+
+;--------------------------------------------------------------------------
+
+ IFDEF __16C55
+ ; Register Files
+PORTC EQU H'0007'
+ __MAXRAM H'01F'
+ #define __CONFIG_0
+ ENDIF
+
+;--------------------------------------------------------------------------
+
+ IFDEF __16C56
+ __MAXRAM H'01F'
+ #define __CONFIG_0
+ ENDIF
+
+;--------------------------------------------------------------------------
+
+ IFDEF __16C57
+ ; Register Files
+PORTC EQU H'0007'
+ __MAXRAM H'07F'
+ #define __CONFIG_0
+ ENDIF
+
+;--------------------------------------------------------------------------
+
+ IFDEF __16CR57A
+ ; Register Files
+PORTC EQU H'0007'
+ __MAXRAM H'07F'
+ #define __CONFIG_0
+ ENDIF
+
+;--------------------------------------------------------------------------
+
+ IFDEF __16CR57B
+ ; Register Files
+PORTC EQU H'0007'
+ __MAXRAM H'07F'
+ #define __CONFIG_1
+ ENDIF
+
+;--------------------------------------------------------------------------
+
+ IFDEF __16C58A
+ __MAXRAM H'07F'
+ #define __CONFIG_0
+ ENDIF
+
+;--------------------------------------------------------------------------
+
+ IFDEF __16CR58A
+ __MAXRAM H'07F'
+ #define __CONFIG_1
+ ENDIF
+
+;==========================================================================
+;
+; Configuration Bits
+;
+;==========================================================================
+
+ IFDEF __CONFIG_0
+_CP_ON EQU H'0FF7'
+_CP_OFF EQU H'0FFF'
+_WDT_ON EQU H'0FFF'
+_WDT_OFF EQU H'0FFB'
+_LP_OSC EQU H'0FFC'
+_XT_OSC EQU H'0FFD'
+_HS_OSC EQU H'0FFE'
+_RC_OSC EQU H'0FFF'
+ #undefine __CONFIG_0
+ ENDIF
+
+
+ IFDEF __CONFIG_1
+_CP_ON EQU H'0007'
+_CP_OFF EQU H'0FFF'
+_WDT_ON EQU H'0FFF'
+_WDT_OFF EQU H'0FFB'
+_LP_OSC EQU H'0FFC'
+_XT_OSC EQU H'0FFD'
+_HS_OSC EQU H'0FFE'
+_RC_OSC EQU H'0FFF'
+ #undefine __CONFIG_1
+ ENDIF
+
+ IFDEF __CONFIG_2
+_CP_ON EQU H'0FF7'
+_CP_OFF EQU H'0FFF'
+_XT_OSC EQU H'0FFD'
+_RC_OSC EQU H'0FFF'
+ #undefine __CONFIG_2
+ ENDIF
+
+ LIST