📄 measure.lst
字号:
C51 COMPILER V7.50 MEASURE 04/01/2008 15:02:17 PAGE 1
C51 COMPILER V7.50, COMPILATION OF MODULE MEASURE
OBJECT MODULE PLACED IN .\Output\Measure.obj
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE Measure.c COMPACT OPTIMIZE(9,SIZE) BROWSE MODDP2 INCDIR(.\Include\) DEFINE(
-INTERNAL_MCU) DEBUG OBJECTEXTEND PRINT(.\Source\Measure.lst) OBJECT(.\Output\Measure.obj)
line level source
1 #include "Config.h"
2
3
4 #include "typedefs.h"
5
6 #include "main.h"
7 #include "tw88.h"
8 #include "measure.h"
9 #include "adc.h"
10 #include "i2c.h"
11 #include "dispinfo.h"
12 #include "pc_eep.h"
13 #include "etc_eep.h"
14 #include "printf.h"
15 #include "osdmenu.h"
16 #include "RegMap.h"
17 #include "panel.h"
18 #include "CPU.h"
19 #include "Audio.h"
20
21 //================== Input Measurement ====================================
22
23 // Hans
24 IDATA BYTE cSourceState = ssSourceMonitor;
25
26 WORD VPosMax, VPosCurr, HPosMax, HPosCurr;
27
28 DWORD RGBPeak, PhaseRGB;
29
30 #ifdef WIDE_SCREEN
31 extern BYTE WideScreenMode;
32 #endif
33
34 bit bPanelMute;
35 bit bBlueScreenOn = TRUE;
36 static BYTE cCounter;
37
38 CODE BYTE PcModeStr[][15] = {
39 "720x400 70Hz", // 0
40
41 "640x400 80Hz", // 1
42 "640x350 85Hz", // 2
43 "720x400 85Hz", // 3
44
45 "640x480 60Hz", // 4
46 "640x480 66Hz", // 5
47 "640x480 70Hz", // 6
48 "640x480 72Hz", // 7
49 "640x480 75Hz", // 8
50 "640x480 85Hz", // 9
51
52 "800x600 56Hz", // 10
53 "800x600 60Hz", // 11
54 "800x600 70Hz", // 12
C51 COMPILER V7.50 MEASURE 04/01/2008 15:02:17 PAGE 2
55 "800x600 72Hz", // 13
56 "800x600 75Hz", // 14
57 "800x600 85Hz", // 15
58
59 "832x624 75Hz", // 16
60
61 "1024x768 60Hz", // 17
62 "1024x768 70Hz", // 18
63 "1024x768 72Hz", // 19
64 "1024x768 75Hz", // 20
65 "1024x768 85Hz", // 21
66
67 "1152x864 60Hz", // 22
68 "1152x864 70Hz", // 23
69 "1152x864 75Hz", // 24
70
71 "1280x1024 60Hz", // 25
72 "1280x1024 70Hz", // 26
73 "1280x1024 75Hz", // 27
74
75 "RGB 480p 60Hz", // 28
76 "RGB 720p 60Hz", // 29
77 "RGB 720p 50Hz", // 30
78 "RGB 1080i 60Hz", // 31
79 "RGB 1080i 50Hz", // 32
80 "RGB 1080i 50Hz", // 33
81 "RGB 480i 60Hz", // 34
82 "RGB 576i 50Hz", // 35
83 "RGB 576p 50Hz", // 36
84
85 "YPbPr 480p", // 37
86 "YPbPr 720p", // 38
87 "YPbPr 720p50", // 39
88 "YPbPr 1080i", // 40
89 "YPbPr 1080i50", // 41
90 "YPbPr 1080i50", // 42
91 "YPbPr 480i", // 43
92 "YPbPr 576i", // 44
93 "YPbPr 576p", // 45
94
95 ""
96 };
97
98 //-------------------------------------------------------------------------
99 extern CODE struct RegisterInfo UserRange;
100
101 extern IDATA WORD IVF;
102 extern IDATA DWORD IHF;
103 extern BYTE DebugLevel;
104 extern bit Range4Coarse;
105 extern DATA WORD tm01, tm001;
106 extern DATA BYTE tic01;
107 extern DATA WORD tic_pc;
108
109 IDATA BYTE PcMode;
110
111 #if defined WVGA || defined WSVGA || defined WXGA || defined VGA_PRIMEVIEW
bit Flag4Bypass=0; // 0:non-bypass
#else
114 bit Flag4Bypass=0;//1; // 1:bypass
115 #endif
116
C51 COMPILER V7.50 MEASURE 04/01/2008 15:02:17 PAGE 3
117 //-----------------------------------------------------------------------------
118 extern CODE struct _PCMDATA PCMDATA[];
119
120 extern CODE BYTE *CheckPCCableStr[];
121 extern CODE BYTE *CheckDTVCableStr[];
122 extern CODE BYTE *OutOfRangeStr[] ;
123 #ifdef SUPPORT_COMPONENT
124 extern IDATA BYTE ComponentMode;
125 #endif
126 extern IDATA BYTE VInputStd;
127 extern bit AutoDetect;
128 extern IDATA BYTE InputSelection;
129 extern CODE BYTE COMPONENT_STR[][15] ;
130 extern bit DisplayInputHold;
131 extern CODE struct _PANELDATA PanelData; // Hans
132
133 CODE BYTE DTVMode[] = { EE_YPbPr_480I, EE_YPbPr_576I, EE_YPbPr_480P, EE_YPbPr_576P,
134 EE_YPbPr_1080I, EE_YPbPr_720P, EE_PC_UNKNOWN, EE_PC_UNKNOWN };
135 #define DetectDTVInputSource() DTVMode[ReadADC(0xC1)& 0x07]
136
137 #if defined( SUPPORT_PC ) || defined( SUPPORT_DTV )
138 //=============================================================================
139 /*BYTE Measure_VPN_IHF( WORD *p_vpn, DWORD *p_ihf)
140 {
141 DWORD ppf;
142 WORD hpn;
143
144
145 if( !MeasureAndWait(3) ) {
146
147 #ifdef DEBUG_PC
148 dPuts("\r\n ** Error at Get_VPN_IHF");
149 #endif
150 return 0;
151 }
152
153 ppf = GetPPF(); //
154 *p_vpn = GetVPN(); //
155 hpn = GetHPN(); // HPN = H Period Num
156
157 *p_ihf = (ppf + hpn/2) / hpn; // IHF = PPF / HPN
158
159 #ifdef DEBUG_PC
160 dPrintf("\r\n *** PPF=%ld HPN=%4d", ppf, hpn);
161 dPrintf(" --> VPN=%4d IHF=%ld ", *p_vpn, *p_ihf);
162 dPrintf(" IVF=%d", (WORD)((*p_ihf + *p_vpn/2) / *p_vpn) );
163
164 // dPrintf(" [%d, %ld]", LastVPN, LastIHF);
165
166 #endif
167
168 return 1;
169 }
170 */
171 void ResetPCValue(void)
172 {
173 1 SaveDefaultPCDataEE();
174 1 GetPCDataEE(PcMode);
175 1 }
176
177 void StartNewDetect(void)
178 {
C51 COMPILER V7.50 MEASURE 04/01/2008 15:02:17 PAGE 4
179 1 ClearEnDet();
180 1 MeasureAndWait(3);
181 1 SetEnDet();
182 1
183 1 WriteTW88(STATUS0, 0xff);
184 1 WriteTW88(STATUS1, 0xff);
185 1 }
186
187 WORD GetCoarseValue(void)
188 {
189 1 return GetCoarse();
190 1 }
191
192 WORD SetPCCoarseValue(BYTE val) //1:Up 2:Dn
193 {
194 1 WORD coarse;
195 1
196 1 // WriteADC(0xc1, 0x30);
197 1 WriteADC(0xc0, 0x30);
198 1
199 1 coarse = GetCoarse();
200 1 if( val==UP ) coarse++;
201 1 else coarse--;
202 1
203 1 SetCoarse(coarse);
204 1 SaveCoarseEE(PcMode); // HHY 1.33
205 1
206 1 StartNewDetect();
207 1
208 1 // WriteADC(0xc1, 0x20);
209 1 WriteADC(0xc0, 0x20);
210 1 return coarse;
211 1 }
212
213
214 BYTE SetPhaseValue(BYTE val)
215 {
216 1 BYTE phase;
217 1
218 1 phase = GetPhaseCurrent();
219 1
220 1 if( val==UP ) {
221 2 if( phase>=31 ) return phase;
222 2 else phase++;
223 2 }
224 1 else {
225 2 if( phase==0 ) return phase;
226 2 else phase--;
227 2 }
228 1
229 1 SetPhase(phase);
230 1 SavePhaseEE(PcMode); // HHY 1.33
231 1
232 1 return phase;
233 1 }
234
235 BYTE IsDTVInput(void)
236 {
237 1 if( GetInputSelection()==DTV || GetInputSelection()==PC ) {
238 2 if( PcMode>=EE_RGB_480P && PcMode<=EE_YPbPr_576P ) return 1;
239 2 }
240 1 return 0;
C51 COMPILER V7.50 MEASURE 04/01/2008 15:02:17 PAGE 5
241 1 }
242
243 //IDATA struct RegisterInfo VPositionRange={0,100, 50};
244
245 //=============================================================================
246 // PC Screen Position Move Functions
247 //=============================================================================
248 BYTE GetVPosition(void)
249 {
250 1 int newv;
251 1 struct RegisterInfo VPositionRange;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -