fx.lst
来自「68013的USB通讯测试程序」· LST 代码 · 共 255 行
LST
255 行
C51 COMPILER V6.10 FX 02/28/2008 16:41:03 PAGE 1
C51 COMPILER V6.10, COMPILATION OF MODULE FX
OBJECT MODULE PLACED IN .\Fx.OBJ
COMPILER INVOKED BY: D:\Program Files\Keil\C51\BIN\C51.EXE .\Fx.h OPTIMIZE(6,SPEED) DEBUG OBJECTEXTEND
stmt level source
1 //-----------------------------------------------------------------------------
2 // File: Fx.h
3 // Contents: EZ-USB register declarations and bit mask definitions.
4 //
5 // Copyright (c) 1999 Cypress Semiconductor, All rights reserved
6 //-----------------------------------------------------------------------------
7 //-----------------------------------------------------------------------------
8 // Fx Related Register Assignments
9 //-----------------------------------------------------------------------------
10
11 #ifdef ALLOCATE_EXTERN
#define EXTERN
#define _AT_ _at_
#else
15 #define EXTERN extern
16 #define _AT_ ;/ ## /
17 #endif
18
19 EXTERN xdata volatile BYTE AINDATA _AT_ 0x7800; // FIFO A Read Data
*** ERROR C129 IN LINE 19 OF .\FX.H: missing ';' before 'AINDATA'
20 EXTERN xdata volatile BYTE AINBC _AT_ 0x7801; // FIFO A In Byte Count
21 EXTERN xdata volatile BYTE AINPF _AT_ 0x7802; // FIFO A In Programmable Flag
22 EXTERN xdata volatile BYTE AINPFPIN _AT_ 0x7803; // FIFO A In Pin Progr Flag
23 EXTERN xdata volatile BYTE BINDATA _AT_ 0x7805; // FIFO B Read Data
24 EXTERN xdata volatile BYTE BINBC _AT_ 0x7806; // FIFO B In Byte Count
25 EXTERN xdata volatile BYTE BINPF _AT_ 0x7807; // FIFO B In Programmable Flag
26 EXTERN xdata volatile BYTE BINPFPIN _AT_ 0x7808; // FIFO B In Pin Progr Flag
27
28 EXTERN xdata volatile BYTE ABINTF _AT_ 0x780A; // Input FIFO A/B Flags & Toggle
29 EXTERN xdata volatile BYTE ABINIE _AT_ 0x780B; // Input FIFO A/B Int Enables
30 #define bmAINPF 0x20
31 #define bmAINEF 0x10
32 #define bmAINFF 0x08
33 #define bmBINPF 0x04
34 #define bmBINEF 0x02
35 #define bmBINFF 0x01
36
37 EXTERN xdata volatile BYTE ABINIRQ _AT_ 0x780C; // Input FIFO A/B Int Requests
38
39 EXTERN xdata volatile BYTE AOUTDATA _AT_ 0x780E; // FIFO A Out Write Data
40 EXTERN xdata volatile BYTE AOUTBC _AT_ 0x780F; // FIFO A Out Byte Count
41 EXTERN xdata volatile BYTE AOUTPF _AT_ 0x7810; // FIFO A Out Programmable Flag
42 EXTERN xdata volatile BYTE AOUTPFPIN _AT_ 0x7811; // FIFO A Out Pin Progr Flag
43 EXTERN xdata volatile BYTE BOUTDATA _AT_ 0x7813; // FIFO B Out Write Data
44 EXTERN xdata volatile BYTE BOUTBC _AT_ 0x7814; // FIFO B Out Byte Count
45 EXTERN xdata volatile BYTE BOUTPF _AT_ 0x7815; // FIFO B Out Programmable Flag
46 EXTERN xdata volatile BYTE BOUTPFPIN _AT_ 0x7816; // FIFO B Out Pin Progr Flag
47
48 EXTERN xdata volatile BYTE ABOUTCS _AT_ 0x7818; // Output FIFO A/B Flags & Toggle
49 EXTERN xdata volatile BYTE ABOUTIE _AT_ 0x7819; // Output FIFO A/B Int Enables
50 EXTERN xdata volatile BYTE ABOUTIRQ _AT_ 0x781A; // Output FIFO A/B Int Requests
51 #define bmAOUTPF 0x20
52 #define bmAOUTEF 0x10
53 #define bmAOUTFF 0x08
54 #define bmBOUTPF 0x04
C51 COMPILER V6.10 FX 02/28/2008 16:41:03 PAGE 2
55 #define bmBOUTEF 0x02
56 #define bmBOUTFF 0x01
57
58
59 EXTERN xdata volatile BYTE ABSETUP _AT_ 0x781C; // FIFO A/B Setup
60 EXTERN xdata volatile BYTE ABPOLAR _AT_ 0x781D; // FIFO signal polarities
61 EXTERN xdata volatile BYTE ABFLUSH _AT_ 0x781E; // Reset all FIFO Flags
62
63
64 EXTERN xdata volatile BYTE WFSELECT _AT_ 0x7824;
65 EXTERN xdata volatile BYTE IDLE_CS _AT_ 0x7825;
66 EXTERN xdata volatile BYTE IDLE_CTLOUT _AT_ 0x7826;
67 EXTERN xdata volatile BYTE CTLOUTCFG _AT_ 0x7827;
68 EXTERN xdata volatile BYTE GPIFADRL _AT_ 0x782A;
69 EXTERN xdata volatile BYTE GPIFADRH _AT_ 0x782B;
70 EXTERN xdata volatile BYTE AINTC _AT_ 0x782C;
71 EXTERN xdata volatile BYTE AOUTTC _AT_ 0x782D;
72 EXTERN xdata volatile BYTE ATRIG _AT_ 0x782E;
73 EXTERN xdata volatile BYTE BINTC _AT_ 0x7830;
74 EXTERN xdata volatile BYTE BOUTTC _AT_ 0x7831;
75 EXTERN xdata volatile BYTE BTRIG _AT_ 0x7832;
76 EXTERN xdata volatile BYTE SGLDATH _AT_ 0x7834;
77 EXTERN xdata volatile BYTE SGLDATLTRIG _AT_ 0x7835;
78 EXTERN xdata volatile BYTE SGLDATLNTRIG _AT_ 0x7836;
79 EXTERN xdata volatile BYTE READY _AT_ 0x7838;
80 EXTERN xdata volatile BYTE ABORT _AT_ 0x7839;
81 EXTERN xdata volatile BYTE GENIE _AT_ 0x783B;
82 // for both GENIE and GENIRQ
83 #define bmDMADONE bmBIT2
84 #define bmGPIFWF bmBIT1
85 #define bmGPIFDONE bmBIT0
86
87 EXTERN xdata volatile BYTE GENIRQ _AT_ 0x783C;
88 EXTERN xdata volatile BYTE OUTD _AT_ 0x7841;
89 EXTERN xdata volatile BYTE PINSD _AT_ 0x7842;
90 EXTERN xdata volatile BYTE OED _AT_ 0x7843;
91 EXTERN xdata volatile BYTE OUTE _AT_ 0x7845;
92 EXTERN xdata volatile BYTE PINSE _AT_ 0x7846;
93 EXTERN xdata volatile BYTE OEE _AT_ 0x7847;
94 EXTERN xdata volatile BYTE PORTSETUP _AT_ 0x7849;
95
96 EXTERN xdata volatile BYTE IFCONFIG _AT_ 0x784A; // Interface Configuration
97 // bmBIT0 IF0
98 // bmBIT1 IF1
99 // bmBIT2 BUS16
100 // bmBIT3 GSTATE
101 // bmBIT7 52One
102 EXTERN xdata volatile BYTE PORTACF2 _AT_ 0x784B; // PORTA Alternate Config #2
103 // bmBIT4 SLWR
104 // bmBIT5 SLRD
105 EXTERN xdata volatile BYTE PORTCCF2 _AT_ 0x784C; // PORTC Alternate Config #2
106 // bmBIT0 RDY0
107 // bmBIT1 RDY1
108 // bmBIT3 RDY3
109 // bmBIT4 CTRL1
110 // bmBIT5 CTRL3
111 // bmBIT6 CTRL4
112 // bmBIT7 CTRL5
113
114 EXTERN xdata volatile WORD DMASRC _AT_ 0x784F;
115 //EXTERN xdata volatile BYTE DMASRCH _AT_ 0x784F; // DMA Source Address (H)
116 //EXTERN xdata volatile BYTE DMASRCL _AT_ 0x7850; // DMA Source Address (L)
C51 COMPILER V6.10 FX 02/28/2008 16:41:03 PAGE 3
117 EXTERN xdata volatile WORD DMADEST _AT_ 0x7851;
118 //EXTERN xdata volatile BYTE DMADESTH _AT_ 0x7851; // DMA Destination Address (H)
119 //EXTERN xdata volatile BYTE DMADESTL _AT_ 0x7852; // DMA Destination Address (L)
120 EXTERN xdata volatile BYTE DMALEN _AT_ 0x7854; // DMA Transfer Length
121 EXTERN xdata volatile BYTE DMAGO _AT_ 0x7855; // DMA Start and Status
122
123 EXTERN xdata volatile BYTE DMABURST _AT_ 0x7857; // DMA Burst Mode; for ext DMA transfers
124 // bmBIT0 BW
125 // bmBIT1 BR
126 // bmBIT2 DSTR0
127 // bmBIT3 DSTR1
128 // bmBIT4 DSTR2
129 EXTERN xdata volatile BYTE DMAEXTFIFO _AT_ 0x7858;
130 EXTERN xdata volatile BYTE INT4IVEC _AT_ 0x785D; // Interrupt 4 AutoVector
131 EXTERN xdata volatile BYTE INT4SETUP _AT_ 0x785E; // Interrupt 4 Setup
132 #define INT4SFC bmBIT2
133 #define INT4_INTERNAL bmBIT1
134 #define INT4_AV4EN bmBIT0
135
136 // New bits in USBBAV
137 #define INT2SFC bmBIT4
138 EXTERN xdata volatile BYTE WFDESC[0x80] _AT_ 0x7900;
139
140 EXTERN xdata volatile BYTE I2CMODE _AT_ 0x7FA7; // STOPIE and 400KHZ bits
141 EXTERN xdata volatile BYTE IBNIRQ _AT_ 0x7FB0; // IN-bulk-NAK IRQ
142 EXTERN xdata volatile BYTE IBNIEN _AT_ 0x7FB1; // IN-bulk-NAK Int enable
143
144 //EXTERN xdata volatile BYTE FASTXFR _AT_ 0x7FE2; // Fast XFer; for external DMA transfers
145 // bmBIT0 WMOD0
146 // bmBIT1 WMOD1
147 // bmBIT2 WPOL
148 // bmBIT3 RMOD0
149 // bmBIT4 RMOD1
150 // bmBIT5 RPOL
151 // bmBIT6 FBLK
152 // bmBIT7 FISO
153
154 // The TUFT provides 8 memory mapped control registers to configure the FIFO tests
155 //EXTERN xdata volatile BYTE TUFT_SEL _AT_ 0x7900; // TUFT Register Addr Select
156 //EXTERN xdata volatile BYTE TUFT_SEL _AT_ 0x8000; // TUFT Register Addr Select
157 //EXTERN xdata volatile BYTE TUFT_CONF_A _AT_ 0x8001; // Configure FIFO A test
158 // // bmBIT0 FA_ENA_COUNT
159 // // bmBIT1 FA_CONTINUOUS
160 // // bmBIT2 FA_ENA_RELOAD
161 // // bmBIT3 FA_DIR
162 // // bmBIT4 FA_HANDSHAKE
163 // // bmBIT5 FA_EAGER
164 //EXTERN xdata volatile BYTE TUFT_CONF_B _AT_ 0x8002; // Configure FIFO B test
165 // // bmBIT0 FA_ENA_COUNT
166 // // bmBIT1 FA_CONTINUOUS
167 // // bmBIT2 FA_ENA_RELOAD
168 // // bmBIT3 FA_DIR
169 // // bmBIT4 FA_HANDSHAKE
170 // // bmBIT5 FA_EAGER
171 //EXTERN xdata volatile BYTE TUFT_MODE _AT_ 0x8003; // Strobe, FIFO test Modes
172 // // bmBIT 1:0 STROBE_ACTIVE
173 // // bmBIT 2:3 STROBE_INACTIVE
174 // // bmBIT4 16_BIT_FIFO_MODE
175 // // bmBIT5 16_BIT_BUS_MODE
176 //EXTERN xdata volatile BYTE COUNT_DOWN_A _AT_ 0x8004; // PreLoad Count Down Value
177 //EXTERN xdata volatile BYTE COUNT_DOWN_B _AT_ 0x8005; // PreLoad Count Down Value
178 //EXTERN xdata volatile BYTE COUNT_WRAP _AT_ 0x8006; // PreLoad Wrap Count Value
C51 COMPILER V6.10 FX 02/28/2008 16:41:03 PAGE 4
179
180 //EXTERN xdata volatile BYTE CPUCS _AT_ 0x7F92; // TBD: I2C Mode
181 #define CPUCS_48MHZ bmBIT3
182 #define CPUCS_CLKINV bmBIT2
183 //EXTERN xdata volatile BYTE CONFIG0 _AT_ 0x7FA6; // TBD: Config0
184 // bmBIT0 400KHZ
185 //EXTERN xdata volatile BYTE I2CMODE _AT_ 0x7FA7; // TBD: I2C Mode
186 // bmBIT0 400KHZ
187 // bmBIT1 STOPIE
188
189
190 // Note: These registers will not work until
191 // bit 0 in PORTSETUP is set.
192 sfr IOA = 0x80;
193 sfr IOB = 0x90;
194 sfr IOC = 0xA0;
195 sfr IOD = 0xB0;
196 sfr IOE = 0xB1;
197
198 sfr SOEA = 0xB2;
199 sfr SOEB = 0xB3;
200 sfr SOEC = 0xB4;
201 sfr SOED = 0xB5;
202 sfr SOEE = 0xB6;
203
204 // Note -- Requires bit 4 in USBBAV to be set!
205 sfr INT2CLR = 0xA1;
206
207 // Note -- Requires bit 2 in INT4SETUP to be set!
208 sfr INT4CLR = 0xA2;
209
210 #ifdef AGGRESSIVELY_USE_TNG_FEATURES
// Note these features will not work unless they are enabled via the
// USBBAV, INT4SETUP and PORTSETUP are initialized to enable them.
#define OUTA IOA
#define OUTB IOB
#define OUTC IOC
#define OUTD IOD
#define OUTE IOE
#define PINSA IOA
#define PINSB IOB
#define PINSC IOC
#define PINSD IOD
#define PINSE IOE
#define OEA SOEA
#define OEB SOEB
#define OEC SOEC
#define OED SOED
#define OEE SOEE
// Globally change USBIRQ clearing to INT2CLR clearing
#undef USBIRQ
#define USBIRQ INT2CLR
#endif
234
235 #undef EXTERN
236 #undef _AT_
C51 COMPILATION COMPLETE. 0 WARNING(S), 1 ERROR(S)
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?