📄 fx2regs.lst
字号:
C51 COMPILER V6.10 FX2REGS 06/22/2006 09:05:31 PAGE 1
C51 COMPILER V6.10, COMPILATION OF MODULE FX2REGS
OBJECT MODULE PLACED IN .\fx2regs.obj
COMPILER INVOKED BY: F:\keilc51\C51\BIN\C51.EXE C:\Cypress\USB\Target\Inc\fx2regs.h DEBUG OBJECTEXTEND PRINT(.\fx2regs.l
-st) OBJECT(.\fx2regs.obj)
stmt level source
1 //-----------------------------------------------------------------------------
2 // File: FX2regs.h
3 // Contents: EZ-USB FX2 register declarations and bit mask definitions.
4 //
5 // $Archive: /USB/Target/Inc/fx2regs.h $
6 // $Date: 4/19/02 9:53a $
7 // $Revision: 35 $
8 //
9 //
10 // Copyright (c) 2000 Cypress Semiconductor, All rights reserved
11 //-----------------------------------------------------------------------------
12
13 #ifndef FX2REGS_H /* Header Sentry */
14 #define FX2REGS_H
15
16 //-----------------------------------------------------------------------------
17 // FX2 Related Register Assignments
18 //-----------------------------------------------------------------------------
19
20 // The Ez-USB FX2 registers are defined here. We use FX2regs.h for register
21 // address allocation by using "#define ALLOCATE_EXTERN".
22 // When using "#define ALLOCATE_EXTERN", you get (for instance):
23 // xdata volatile BYTE OUT7BUF[64] _at_ 0x7B40;
24 // Such lines are created from FX2.h by using the preprocessor.
25 // Incidently, these lines will not generate any space in the resulting hex
26 // file; they just bind the symbols to the addresses for compilation.
27 // You just need to put "#define ALLOCATE_EXTERN" in your main program file;
28 // i.e. fw.c or a stand-alone C source file.
29 // Without "#define ALLOCATE_EXTERN", you just get the external reference:
30 // extern xdata volatile BYTE OUT7BUF[64] ;// 0x7B40;
31 // This uses the concatenation operator "##" to insert a comment "//"
32 // to cut off the end of the line, "_at_ 0x7B40;", which is not wanted.
33
34 #ifdef ALLOCATE_EXTERN
#define EXTERN
#define _AT_ _at_
#else
38 #define EXTERN extern
39 #define _AT_ ;/ ## /
40 #endif
41
42 EXTERN xdata volatile BYTE GPIF_WAVE_DATA _AT_ 0xE400;
*** ERROR C129 IN LINE 42 OF C:\CYPRESS\USB\TARGET\INC\FX2REGS.H: missing ';' before 'GPIF_WAVE_DATA'
43 EXTERN xdata volatile BYTE RES_WAVEDATA_END _AT_ 0xE480;
44
45 // General Configuration
46
47 EXTERN xdata volatile BYTE CPUCS _AT_ 0xE600; // Control & Status
48 EXTERN xdata volatile BYTE IFCONFIG _AT_ 0xE601; // Interface Configuration
49 EXTERN xdata volatile BYTE PINFLAGSAB _AT_ 0xE602; // FIFO FLAGA and FLAGB Assignments
50 EXTERN xdata volatile BYTE PINFLAGSCD _AT_ 0xE603; // FIFO FLAGC and FLAGD Assignments
51 EXTERN xdata volatile BYTE FIFORESET _AT_ 0xE604; // Restore FIFOS to default state
52 EXTERN xdata volatile BYTE BREAKPT _AT_ 0xE605; // Breakpoint
53 EXTERN xdata volatile BYTE BPADDRH _AT_ 0xE606; // Breakpoint Address H
C51 COMPILER V6.10 FX2REGS 06/22/2006 09:05:31 PAGE 2
54 EXTERN xdata volatile BYTE BPADDRL _AT_ 0xE607; // Breakpoint Address L
55 EXTERN xdata volatile BYTE UART230 _AT_ 0xE608; // 230 Kbaud clock for T0,T1,T2
56 EXTERN xdata volatile BYTE FIFOPINPOLAR _AT_ 0xE609; // FIFO polarities
57 EXTERN xdata volatile BYTE REVID _AT_ 0xE60A; // Chip Revision
58 EXTERN xdata volatile BYTE REVCTL _AT_ 0xE60B; // Chip Revision Control
59
60 // Endpoint Configuration
61
62 EXTERN xdata volatile BYTE EP1OUTCFG _AT_ 0xE610; // Endpoint 1-OUT Configuration
63 EXTERN xdata volatile BYTE EP1INCFG _AT_ 0xE611; // Endpoint 1-IN Configuration
64 EXTERN xdata volatile BYTE EP2CFG _AT_ 0xE612; // Endpoint 2 Configuration
65 EXTERN xdata volatile BYTE EP4CFG _AT_ 0xE613; // Endpoint 4 Configuration
66 EXTERN xdata volatile BYTE EP6CFG _AT_ 0xE614; // Endpoint 6 Configuration
67 EXTERN xdata volatile BYTE EP8CFG _AT_ 0xE615; // Endpoint 8 Configuration
68 EXTERN xdata volatile BYTE EP2FIFOCFG _AT_ 0xE618; // Endpoint 2 FIFO configuration
69 EXTERN xdata volatile BYTE EP4FIFOCFG _AT_ 0xE619; // Endpoint 4 FIFO configuration
70 EXTERN xdata volatile BYTE EP6FIFOCFG _AT_ 0xE61A; // Endpoint 6 FIFO configuration
71 EXTERN xdata volatile BYTE EP8FIFOCFG _AT_ 0xE61B; // Endpoint 8 FIFO configuration
72 EXTERN xdata volatile BYTE EP2AUTOINLENH _AT_ 0xE620; // Endpoint 2 Packet Length H (IN only)
73 EXTERN xdata volatile BYTE EP2AUTOINLENL _AT_ 0xE621; // Endpoint 2 Packet Length L (IN only)
74 EXTERN xdata volatile BYTE EP4AUTOINLENH _AT_ 0xE622; // Endpoint 4 Packet Length H (IN only)
75 EXTERN xdata volatile BYTE EP4AUTOINLENL _AT_ 0xE623; // Endpoint 4 Packet Length L (IN only)
76 EXTERN xdata volatile BYTE EP6AUTOINLENH _AT_ 0xE624; // Endpoint 6 Packet Length H (IN only)
77 EXTERN xdata volatile BYTE EP6AUTOINLENL _AT_ 0xE625; // Endpoint 6 Packet Length L (IN only)
78 EXTERN xdata volatile BYTE EP8AUTOINLENH _AT_ 0xE626; // Endpoint 8 Packet Length H (IN only)
79 EXTERN xdata volatile BYTE EP8AUTOINLENL _AT_ 0xE627; // Endpoint 8 Packet Length L (IN only)
80 EXTERN xdata volatile BYTE EP2FIFOPFH _AT_ 0xE630; // EP2 Programmable Flag trigger H
81 EXTERN xdata volatile BYTE EP2FIFOPFL _AT_ 0xE631; // EP2 Programmable Flag trigger L
82 EXTERN xdata volatile BYTE EP4FIFOPFH _AT_ 0xE632; // EP4 Programmable Flag trigger H
83 EXTERN xdata volatile BYTE EP4FIFOPFL _AT_ 0xE633; // EP4 Programmable Flag trigger L
84 EXTERN xdata volatile BYTE EP6FIFOPFH _AT_ 0xE634; // EP6 Programmable Flag trigger H
85 EXTERN xdata volatile BYTE EP6FIFOPFL _AT_ 0xE635; // EP6 Programmable Flag trigger L
86 EXTERN xdata volatile BYTE EP8FIFOPFH _AT_ 0xE636; // EP8 Programmable Flag trigger H
87 EXTERN xdata volatile BYTE EP8FIFOPFL _AT_ 0xE637; // EP8 Programmable Flag trigger L
88 EXTERN xdata volatile BYTE EP2ISOINPKTS _AT_ 0xE640; // EP2 (if ISO) IN Packets per frame (1-3)
89 EXTERN xdata volatile BYTE EP4ISOINPKTS _AT_ 0xE641; // EP4 (if ISO) IN Packets per frame (1-3)
90 EXTERN xdata volatile BYTE EP6ISOINPKTS _AT_ 0xE642; // EP6 (if ISO) IN Packets per frame (1-3)
91 EXTERN xdata volatile BYTE EP8ISOINPKTS _AT_ 0xE643; // EP8 (if ISO) IN Packets per frame (1-3)
92 EXTERN xdata volatile BYTE INPKTEND _AT_ 0xE648; // Force IN Packet End
93 EXTERN xdata volatile BYTE OUTPKTEND _AT_ 0xE649; // Force OUT Packet End
94
95 // Interrupts
96
97 EXTERN xdata volatile BYTE EP2FIFOIE _AT_ 0xE650; // Endpoint 2 Flag Interrupt Enable
98 EXTERN xdata volatile BYTE EP2FIFOIRQ _AT_ 0xE651; // Endpoint 2 Flag Interrupt Request
99 EXTERN xdata volatile BYTE EP4FIFOIE _AT_ 0xE652; // Endpoint 4 Flag Interrupt Enable
100 EXTERN xdata volatile BYTE EP4FIFOIRQ _AT_ 0xE653; // Endpoint 4 Flag Interrupt Request
101 EXTERN xdata volatile BYTE EP6FIFOIE _AT_ 0xE654; // Endpoint 6 Flag Interrupt Enable
102 EXTERN xdata volatile BYTE EP6FIFOIRQ _AT_ 0xE655; // Endpoint 6 Flag Interrupt Request
103 EXTERN xdata volatile BYTE EP8FIFOIE _AT_ 0xE656; // Endpoint 8 Flag Interrupt Enable
104 EXTERN xdata volatile BYTE EP8FIFOIRQ _AT_ 0xE657; // Endpoint 8 Flag Interrupt Request
105 EXTERN xdata volatile BYTE IBNIE _AT_ 0xE658; // IN-BULK-NAK Interrupt Enable
106 EXTERN xdata volatile BYTE IBNIRQ _AT_ 0xE659; // IN-BULK-NAK interrupt Request
107 EXTERN xdata volatile BYTE NAKIE _AT_ 0xE65A; // Endpoint Ping NAK interrupt Enable
108 EXTERN xdata volatile BYTE NAKIRQ _AT_ 0xE65B; // Endpoint Ping NAK interrupt Request
109 EXTERN xdata volatile BYTE USBIE _AT_ 0xE65C; // USB Int Enables
110 EXTERN xdata volatile BYTE USBIRQ _AT_ 0xE65D; // USB Interrupt Requests
111 EXTERN xdata volatile BYTE EPIE _AT_ 0xE65E; // Endpoint Interrupt Enables
112 EXTERN xdata volatile BYTE EPIRQ _AT_ 0xE65F; // Endpoint Interrupt Requests
113 EXTERN xdata volatile BYTE GPIFIE _AT_ 0xE660; // GPIF Interrupt Enable
114 EXTERN xdata volatile BYTE GPIFIRQ _AT_ 0xE661; // GPIF Interrupt Request
115 EXTERN xdata volatile BYTE USBERRIE _AT_ 0xE662; // USB Error Interrupt Enables
C51 COMPILER V6.10 FX2REGS 06/22/2006 09:05:31 PAGE 3
116 EXTERN xdata volatile BYTE USBERRIRQ _AT_ 0xE663; // USB Error Interrupt Requests
117 EXTERN xdata volatile BYTE ERRCNTLIM _AT_ 0xE664; // USB Error counter and limit
118 EXTERN xdata volatile BYTE CLRERRCNT _AT_ 0xE665; // Clear Error Counter EC[3..0]
119 EXTERN xdata volatile BYTE INT2IVEC _AT_ 0xE666; // Interupt 2 (USB) Autovector
120 EXTERN xdata volatile BYTE INT4IVEC _AT_ 0xE667; // Interupt 4 (FIFOS & GPIF) Autovector
121 EXTERN xdata volatile BYTE INTSETUP _AT_ 0xE668; // Interrupt 2&4 Setup
122
123 // Input/Output
124
125 EXTERN xdata volatile BYTE PORTACFG _AT_ 0xE670; // I/O PORTA Alternate Configuration
126 EXTERN xdata volatile BYTE PORTCCFG _AT_ 0xE671; // I/O PORTC Alternate Configuration
127 EXTERN xdata volatile BYTE PORTECFG _AT_ 0xE672; // I/O PORTE Alternate Configuration
128 EXTERN xdata volatile BYTE I2CS _AT_ 0xE678; // Control & Status
129 EXTERN xdata volatile BYTE I2DAT _AT_ 0xE679; // Data
130 EXTERN xdata volatile BYTE I2CTL _AT_ 0xE67A; // I2C Control
131 EXTERN xdata volatile BYTE XAUTODAT1 _AT_ 0xE67B; // Autoptr1 MOVX access
132 EXTERN xdata volatile BYTE XAUTODAT2 _AT_ 0xE67C; // Autoptr2 MOVX access
133
134 #define EXTAUTODAT1 XAUTODAT1
135 #define EXTAUTODAT2 XAUTODAT2
136
137 // USB Control
138
139 EXTERN xdata volatile BYTE USBCS _AT_ 0xE680; // USB Control & Status
140 EXTERN xdata volatile BYTE SUSPEND _AT_ 0xE681; // Put chip into suspend
141 EXTERN xdata volatile BYTE WAKEUPCS _AT_ 0xE682; // Wakeup source and polarity
142 EXTERN xdata volatile BYTE TOGCTL _AT_ 0xE683; // Toggle Control
143 EXTERN xdata volatile BYTE USBFRAMEH _AT_ 0xE684; // USB Frame count H
144 EXTERN xdata volatile BYTE USBFRAMEL _AT_ 0xE685; // USB Frame count L
145 EXTERN xdata volatile BYTE MICROFRAME _AT_ 0xE686; // Microframe count, 0-7
146 EXTERN xdata volatile BYTE FNADDR _AT_ 0xE687; // USB Function address
147
148 // Endpoints
149
150 EXTERN xdata volatile BYTE EP0BCH _AT_ 0xE68A; // Endpoint 0 Byte Count H
151 EXTERN xdata volatile BYTE EP0BCL _AT_ 0xE68B; // Endpoint 0 Byte Count L
152 EXTERN xdata volatile BYTE EP1OUTBC _AT_ 0xE68D; // Endpoint 1 OUT Byte Count
153 EXTERN xdata volatile BYTE EP1INBC _AT_ 0xE68F; // Endpoint 1 IN Byte Count
154 EXTERN xdata volatile BYTE EP2BCH _AT_ 0xE690; // Endpoint 2 Byte Count H
155 EXTERN xdata volatile BYTE EP2BCL _AT_ 0xE691; // Endpoint 2 Byte Count L
156 EXTERN xdata volatile BYTE EP4BCH _AT_ 0xE694; // Endpoint 4 Byte Count H
157 EXTERN xdata volatile BYTE EP4BCL _AT_ 0xE695; // Endpoint 4 Byte Count L
158 EXTERN xdata volatile BYTE EP6BCH _AT_ 0xE698; // Endpoint 6 Byte Count H
159 EXTERN xdata volatile BYTE EP6BCL _AT_ 0xE699; // Endpoint 6 Byte Count L
160 EXTERN xdata volatile BYTE EP8BCH _AT_ 0xE69C; // Endpoint 8 Byte Count H
161 EXTERN xdata volatile BYTE EP8BCL _AT_ 0xE69D; // Endpoint 8 Byte Count L
162 EXTERN xdata volatile BYTE EP0CS _AT_ 0xE6A0; // Endpoint Control and Status
163 EXTERN xdata volatile BYTE EP1OUTCS _AT_ 0xE6A1; // Endpoint 1 OUT Control and Status
164 EXTERN xdata volatile BYTE EP1INCS _AT_ 0xE6A2; // Endpoint 1 IN Control and Status
165 EXTERN xdata volatile BYTE EP2CS _AT_ 0xE6A3; // Endpoint 2 Control and Status
166 EXTERN xdata volatile BYTE EP4CS _AT_ 0xE6A4; // Endpoint 4 Control and Status
167 EXTERN xdata volatile BYTE EP6CS _AT_ 0xE6A5; // Endpoint 6 Control and Status
168 EXTERN xdata volatile BYTE EP8CS _AT_ 0xE6A6; // Endpoint 8 Control and Status
169 EXTERN xdata volatile BYTE EP2FIFOFLGS _AT_ 0xE6A7; // Endpoint 2 Flags
170 EXTERN xdata volatile BYTE EP4FIFOFLGS _AT_ 0xE6A8; // Endpoint 4 Flags
171 EXTERN xdata volatile BYTE EP6FIFOFLGS _AT_ 0xE6A9; // Endpoint 6 Flags
172 EXTERN xdata volatile BYTE EP8FIFOFLGS _AT_ 0xE6AA; // Endpoint 8 Flags
173 EXTERN xdata volatile BYTE EP2FIFOBCH _AT_ 0xE6AB; // EP2 FIFO total byte count H
174 EXTERN xdata volatile BYTE EP2FIFOBCL _AT_ 0xE6AC; // EP2 FIFO total byte count L
175 EXTERN xdata volatile BYTE EP4FIFOBCH _AT_ 0xE6AD; // EP4 FIFO total byte count H
176 EXTERN xdata volatile BYTE EP4FIFOBCL _AT_ 0xE6AE; // EP4 FIFO total byte count L
177 EXTERN xdata volatile BYTE EP6FIFOBCH _AT_ 0xE6AF; // EP6 FIFO total byte count H
C51 COMPILER V6.10 FX2REGS 06/22/2006 09:05:31 PAGE 4
178 EXTERN xdata volatile BYTE EP6FIFOBCL _AT_ 0xE6B0; // EP6 FIFO total byte count L
179 EXTERN xdata volatile BYTE EP8FIFOBCH _AT_ 0xE6B1; // EP8 FIFO total byte count H
180 EXTERN xdata volatile BYTE EP8FIFOBCL _AT_ 0xE6B2; // EP8 FIFO total byte count L
181 EXTERN xdata volatile BYTE SUDPTRH _AT_ 0xE6B3; // Setup Data Pointer high address byte
182 EXTERN xdata volatile BYTE SUDPTRL _AT_ 0xE6B4; // Setup Data Pointer low address byte
183 EXTERN xdata volatile BYTE SUDPTRCTL _AT_ 0xE6B5; // Setup Data Pointer Auto Mode
184 EXTERN xdata volatile BYTE SETUPDAT[8] _AT_ 0xE6B8; // 8 bytes of SETUP data
185
186 // GPIF
187
188 EXTERN xdata volatile BYTE GPIFWFSELECT _AT_ 0xE6C0; // Waveform Selector
189 EXTERN xdata volatile BYTE GPIFIDLECS _AT_ 0xE6C1; // GPIF Done, GPIF IDLE drive mode
190 EXTERN xdata volatile BYTE GPIFIDLECTL _AT_ 0xE6C2; // Inactive Bus, CTL states
191 EXTERN xdata volatile BYTE GPIFCTLCFG _AT_ 0xE6C3; // CTL OUT pin drive
192 EXTERN xdata volatile BYTE GPIFADRH _AT_ 0xE6C4; // GPIF Address H
193 EXTERN xdata volatile BYTE GPIFADRL _AT_ 0xE6C5; // GPIF Address L
194
195 EXTERN xdata volatile BYTE GPIFTCB3 _AT_ 0xE6CE; // GPIF Transaction Count Byte 3
196 EXTERN xdata volatile BYTE GPIFTCB2 _AT_ 0xE6CF; // GPIF Transaction Count Byte 2
197 EXTERN xdata volatile BYTE GPIFTCB1 _AT_ 0xE6D0; // GPIF Transaction Count Byte 1
198 EXTERN xdata volatile BYTE GPIFTCB0 _AT_ 0xE6D1; // GPIF Transaction Count Byte 0
199
200 #define EP2GPIFTCH GPIFTCB1 // these are here for backwards compatibility
201 #define EP2GPIFTCL GPIFTCB0 // before REVE silicon (ie. REVB and REVD)
202 #define EP4GPIFTCH GPIFTCB1 // these are here for backwards compatibility
203 #define EP4GPIFTCL GPIFTCB0 // before REVE silicon (ie. REVB and REVD)
204 #define EP6GPIFTCH GPIFTCB1 // these are here for backwards compatibility
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -