📄 fx2sdly.lst
字号:
C51 COMPILER V6.10 FX2SDLY 06/22/2006 09:05:31 PAGE 1
C51 COMPILER V6.10, COMPILATION OF MODULE FX2SDLY
OBJECT MODULE PLACED IN .\fx2sdly.obj
COMPILER INVOKED BY: F:\keilc51\C51\BIN\C51.EXE C:\Cypress\USB\Target\Inc\fx2sdly.h DEBUG OBJECTEXTEND PRINT(.\fx2sdly.l
-st) OBJECT(.\fx2sdly.obj)
stmt level source
1 //-----------------------------------------------------------------------------
2 // File: fx2sdly.h
3 // Contents: EZ-USB FX2 Synchronization Delay (SYNCDELAY) Macro
4 //
5 // Enter with _IFREQ = IFCLK in kHz
6 // Enter with _CFREQ = CLKOUT in kHz
7 //
8 // Copyright (c) 2001 Cypress Semiconductor, All rights reserved
9 //-----------------------------------------------------------------------------
10 #include "intrins.h"
11
12 // Registers which require a synchronization delay, see section 15.14
13 // FIFORESET FIFOPINPOLAR
14 // INPKTEND OUTPKTEND
15 // EPxBCH:L REVCTL
16 // GPIFTCB3 GPIFTCB2
17 // GPIFTCB1 GPIFTCB0
18 // EPxFIFOPFH:L EPxAUTOINLENH:L
19 // EPxFIFOCFG EPxGPIFFLGSEL
20 // PINFLAGSxx EPxFIFOIRQ
21 // EPxFIFOIE GPIFIRQ
22 // GPIFIE GPIFADRH:L
23 // UDMACRCH:L EPxGPIFTRIG
24 // GPIFTRIG
25
26 // Note: The pre-REVE EPxGPIFTCH/L register are affected, as well...
27 // ...these have been replaced by GPIFTC[B3:B0] registers
28
29 // _IFREQ can be in the range of: 5000 to 48000
30 #ifndef _IFREQ
31 #define _IFREQ 48000 // IFCLK frequency in kHz
32 #endif
33
34 // CFREQ can be any one of: 48000, 24000, or 12000
35 #ifndef _CFREQ
36 #define _CFREQ 48000 // CLKOUT frequency in kHz
37 #endif
38
39 #if( _IFREQ < 5000 )
#error "_IFREQ too small! Valid Range: 5000 to 48000..."
#endif
42
43 #if( _IFREQ > 48000 )
#error "_IFREQ too large! Valid Range: 5000 to 48000..."
#endif
46
47 #if( _CFREQ != 48000 )
#if( _CFREQ != 24000 )
#if( _CFREQ != 12000 )
#error "_CFREQ invalid! Valid values: 48000, 24000, 12000..."
#endif
#endif
#endif
54
C51 COMPILER V6.10 FX2SDLY 06/22/2006 09:05:31 PAGE 2
55 // Synchronization Delay formula: see TRM section 15-14
56 #define _SCYCL ( 3*(_CFREQ) + 5*(_IFREQ) - 1 ) / ( 2*(_IFREQ) )
57
58 #if( _SCYCL == 1 )
#define SYNCDELAY _nop_( )
#endif
61
62 #if( _SCYCL == 2 )
#define SYNCDELAY _nop_( ); \
_nop_( )
#endif
66
67 #if( _SCYCL == 3 )
68 #define SYNCDELAY _nop_( ); \
69 _nop_( ); \
70 _nop_( )
71 #endif
72
73 #if( _SCYCL == 4 )
#define SYNCDELAY _nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( )
#endif
79
80 #if( _SCYCL == 5 )
#define SYNCDELAY _nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( )
#endif
87
88 #if( _SCYCL == 6 )
#define SYNCDELAY _nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( )
#endif
96
97 #if( _SCYCL == 7 )
#define SYNCDELAY _nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( )
#endif
106
107 #if( _SCYCL == 8 )
#define SYNCDELAY _nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( )
#endif
C51 COMPILER V6.10 FX2SDLY 06/22/2006 09:05:31 PAGE 3
117
118 #if( _SCYCL == 9 )
#define SYNCDELAY _nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( )
#endif
129
130 #if( _SCYCL == 10 )
#define SYNCDELAY _nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( )
#endif
142
143 #if( _SCYCL == 11 )
#define SYNCDELAY _nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( )
#endif
156
157 #if( _SCYCL == 12 )
#define SYNCDELAY _nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( )
#endif
171
172 #if( _SCYCL == 13 )
#define SYNCDELAY _nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
C51 COMPILER V6.10 FX2SDLY 06/22/2006 09:05:31 PAGE 4
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( )
#endif
187
188 #if( _SCYCL == 14 )
#define SYNCDELAY _nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( )
#endif
204
205 #if( _SCYCL == 15 )
#define SYNCDELAY _nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( )
#endif
222
223 #if( _SCYCL == 16 )
#define SYNCDELAY _nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( ); \
_nop_( )
#endif
C51 COMPILER V6.10 FX2SDLY 06/22/2006 09:05:31 PAGE 5
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = ---- ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- ----
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -