|
@@ -785,3 +785,141 @@
|
|
|
|
|
|
#endif /* LANGUAGE == C */
|
|
#endif /* LANGUAGE == C */
|
|
|
|
|
|
|
|
+
|
|
|
|
+/*
|
|
|
|
+ * General-Purpose I/O Interface
|
|
|
|
+ *
|
|
|
|
+ * Registers
|
|
|
|
+ * PADWR Port A Data Write Register
|
|
|
|
+ * PBDWR Port B Data Write Register
|
|
|
|
+ * PADRR Port A Data Read Register
|
|
|
|
+ * PBDRR Port B Data Read Register
|
|
|
|
+ * PADDR Port A Data Direction Register
|
|
|
|
+ * PBDDR Port B Data Direction Register
|
|
|
|
+ * PASSR Port A Sleep State Register
|
|
|
|
+ * PBSSR Port B Sleep State Register
|
|
|
|
+ *
|
|
|
|
+ */
|
|
|
|
+
|
|
|
|
+#define _PIO( x ) _SA1101( ( x ) + __GPIO_INTERFACE )
|
|
|
|
+
|
|
|
|
+#define _PADWR _PIO( 0x0000 )
|
|
|
|
+#define _PBDWR _PIO( 0x0400 )
|
|
|
|
+#define _PADRR _PIO( 0x0000 )
|
|
|
|
+#define _PBDRR _PIO( 0x0400 )
|
|
|
|
+#define _PADDR _PIO( 0x0800 )
|
|
|
|
+#define _PBDDR _PIO( 0x0c00 )
|
|
|
|
+#define _PASSR _PIO( 0x1000 )
|
|
|
|
+#define _PBSSR _PIO( 0x1400 )
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+#if ( LANGUAGE == C )
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+#define PADWR (*((volatile Word *) SA1101_p2v (_PADWR)))
|
|
|
|
+#define PBDWR (*((volatile Word *) SA1101_p2v (_PBDWR)))
|
|
|
|
+#define PADRR (*((volatile Word *) SA1101_p2v (_PADRR)))
|
|
|
|
+#define PBDRR (*((volatile Word *) SA1101_p2v (_PBDRR)))
|
|
|
|
+#define PADDR (*((volatile Word *) SA1101_p2v (_PADDR)))
|
|
|
|
+#define PBDDR (*((volatile Word *) SA1101_p2v (_PBDDR)))
|
|
|
|
+#define PASSR (*((volatile Word *) SA1101_p2v (_PASSR)))
|
|
|
|
+#define PBSSR (*((volatile Word *) SA1101_p2v (_PBSSR)))
|
|
|
|
+
|
|
|
|
+#endif
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+/*
|
|
|
|
+ * Keypad Interface
|
|
|
|
+ *
|
|
|
|
+ * Registers
|
|
|
|
+ * PXDWR
|
|
|
|
+ * PXDRR
|
|
|
|
+ * PYDWR
|
|
|
|
+ * PYDRR
|
|
|
|
+ *
|
|
|
|
+ */
|
|
|
|
+
|
|
|
|
+#define _KEYPAD( x ) _SA1101( ( x ) + __KEYPAD_INTERFACE )
|
|
|
|
+
|
|
|
|
+#define _PXDWR _KEYPAD( 0x0000 )
|
|
|
|
+#define _PXDRR _KEYPAD( 0x0000 )
|
|
|
|
+#define _PYDWR _KEYPAD( 0x0400 )
|
|
|
|
+#define _PYDRR _KEYPAD( 0x0400 )
|
|
|
|
+
|
|
|
|
+#if ( LANGUAGE == C )
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+#define PXDWR (*((volatile Word *) SA1101_p2v (_PXDWR)))
|
|
|
|
+#define PXDRR (*((volatile Word *) SA1101_p2v (_PXDRR)))
|
|
|
|
+#define PYDWR (*((volatile Word *) SA1101_p2v (_PYDWR)))
|
|
|
|
+#define PYDRR (*((volatile Word *) SA1101_p2v (_PYDRR)))
|
|
|
|
+
|
|
|
|
+#endif
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+/*
|
|
|
|
+ * PCMCIA Interface
|
|
|
|
+ *
|
|
|
|
+ * Registers
|
|
|
|
+ * PCSR Status Register
|
|
|
|
+ * PCCR Control Register
|
|
|
|
+ * PCSSR Sleep State Register
|
|
|
|
+ *
|
|
|
|
+ */
|
|
|
|
+
|
|
|
|
+#define _CARD( x ) _SA1101( ( x ) + __PCMCIA_INTERFACE )
|
|
|
|
+
|
|
|
|
+#define _PCSR _CARD( 0x0000 )
|
|
|
|
+#define _PCCR _CARD( 0x0400 )
|
|
|
|
+#define _PCSSR _CARD( 0x0800 )
|
|
|
|
+
|
|
|
|
+#if ( LANGUAGE == C )
|
|
|
|
+#define PCSR (*((volatile Word *) SA1101_p2v (_PCSR)))
|
|
|
|
+#define PCCR (*((volatile Word *) SA1101_p2v (_PCCR)))
|
|
|
|
+#define PCSSR (*((volatile Word *) SA1101_p2v (_PCSSR)))
|
|
|
|
+
|
|
|
|
+#define PCSR_S0_ready 0x0001
|
|
|
|
+#define PCSR_S1_ready 0x0002
|
|
|
|
+#define PCSR_S0_detected 0x0004
|
|
|
|
+#define PCSR_S1_detected 0x0008
|
|
|
|
+#define PCSR_S0_VS1 0x0010
|
|
|
|
+#define PCSR_S0_VS2 0x0020
|
|
|
|
+#define PCSR_S1_VS1 0x0040
|
|
|
|
+#define PCSR_S1_VS2 0x0080
|
|
|
|
+#define PCSR_S0_WP 0x0100
|
|
|
|
+#define PCSR_S1_WP 0x0200
|
|
|
|
+#define PCSR_S0_BVD1_nSTSCHG 0x0400
|
|
|
|
+#define PCSR_S0_BVD2_nSPKR 0x0800
|
|
|
|
+#define PCSR_S1_BVD1_nSTSCHG 0x1000
|
|
|
|
+#define PCSR_S1_BVD2_nSPKR 0x2000
|
|
|
|
+
|
|
|
|
+#define PCCR_S0_VPP0 0x0001
|
|
|
|
+#define PCCR_S0_VPP1 0x0002
|
|
|
|
+#define PCCR_S0_VCC0 0x0004
|
|
|
|
+#define PCCR_S0_VCC1 0x0008
|
|
|
|
+#define PCCR_S1_VPP0 0x0010
|
|
|
|
+#define PCCR_S1_VPP1 0x0020
|
|
|
|
+#define PCCR_S1_VCC0 0x0040
|
|
|
|
+#define PCCR_S1_VCC1 0x0080
|
|
|
|
+#define PCCR_S0_reset 0x0100
|
|
|
|
+#define PCCR_S1_reset 0x0200
|
|
|
|
+#define PCCR_S0_float 0x0400
|
|
|
|
+#define PCCR_S1_float 0x0800
|
|
|
|
+
|
|
|
|
+#define PCSSR_S0_VCC0 0x0001
|
|
|
|
+#define PCSSR_S0_VCC1 0x0002
|
|
|
|
+#define PCSSR_S0_VPP0 0x0004
|
|
|
|
+#define PCSSR_S0_VPP1 0x0008
|
|
|
|
+#define PCSSR_S0_control 0x0010
|
|
|
|
+#define PCSSR_S1_VCC0 0x0020
|
|
|
|
+#define PCSSR_S1_VCC1 0x0040
|
|
|
|
+#define PCSSR_S1_VPP0 0x0080
|
|
|
|
+#define PCSSR_S1_VPP1 0x0100
|
|
|
|
+#define PCSSR_S1_control 0x0200
|
|
|
|
+
|
|
|
|
+#endif
|
|
|
|
+
|
|
|
|
+#undef C
|
|
|
|
+#undef Assembly
|