📄 lcd_main.lst
字号:
235 4 //Set_Bright_Contrast();
236 4 if(((ucMode_Curr == MODE_NOSUPPORT)||(ucMode_Curr == MODE_NOSIGNAL)))
C51 COMPILER V7.06 LCD_MAIN 11/21/2005 13:47:28 PAGE 5
237 4 RTDSetBit(VDIS_CTRL_20, 0x5f, 0x20 | DHS_MASK); // Normal display
238 4 else
239 4 RTDSetBit(VDIS_CTRL_20, 0x5f, DHS_MASK); // Normal display
240 4
241 4 /*
242 4 #if(BURNIN_MODE)
243 4 if(((ucMode_Curr == MODE_NOSUPPORT)||(ucMode_Curr == MODE_NOSIGNAL)))
244 4 RTDSetBit(VDIS_CTRL_20, 0x5f, 0x20 | DHS_MASK); // Normal display
245 4 else
246 4 RTDSetBit(VDIS_CTRL_20, 0x5f, DHS_MASK); // Normal display
247 4 #else
248 4 RTDSetBit(VDIS_CTRL_20, 0x5f, DHS_MASK); // Normal display
249 4 #endif
250 4 */
251 4
252 4 #if(MCU_TYPE == MCU_WINBOND)
253 4 bLIGHT_PWR = LIGHT_ON;
254 4 #else
MCU_WriteBacklightPower(LIGHT_ON);
#endif
257 4
258 4 //New Mode Auto
259 4 New_Mode_Auto(); //anson 05_0314
260 4
261 4 #if(FIX_LAST_DHT)
if(bFrameSync)
{
// RTDSetBit(FX_LST_LEN_H_5A,0xff,0x10); //Enable the Fixed DVTOTAL & Last Line Lenghth Fucntion
// RTDSetByte(FX_LST_LEN_H_5A,0x1b); //Enable the Fixed DVTOTAL & Last Line Lenghth Fucntion
}
#endif
269 4
270 4
271 4 #if(AS_DV_TOTAL)
272 4 if(bFrameSync)
273 4 {
274 5 RTDSetByte(DV_TOTAL_STATUS_3D,0x00); //Write once to clear status
275 5 RTDSetBit(DV_BKGD_STA_31,0x7f,0x80);
276 5 }
277 4 #endif
278 4 }
279 3 else if ((1 == usTaskCnt && MODE_NOSIGNAL == ucMode_Curr)||
280 3 (1 == usTaskCnt && MODE_NOSUPPORT == ucMode_Curr)) //anson
281 3 // else if (1 == usTaskCnt && MODE_NOSIGNAL == ucMode_Curr)
282 3 {
283 4 //if (PANEL_ON == MCU_ReadPanelPower())
284 4 if ( _ON == bPanel_Status)
285 4 {
286 5 Set_Panel(0); // Turn off panel
287 5 SetMute(0);
288 5 // Set RTD3001 to power-saving mode, and ADC to power-down mode.
289 5 // Do not power down TMDS or it can't detect input signal.
290 5 // DO NOT put VDC and TMDS into power-down mode.
291 5 // and VDC can not detect input when powered down.
292 5 PowerDown_ADC();
293 5 //Device_Power(ADC_POWER,OFF);
294 5
295 5 RTDSetByte(HOSTCTRL_02, 0x42);
296 5
297 5 Delay_Xms(250);
298 5 Delay_Xms(250);
C51 COMPILER V7.06 LCD_MAIN 11/21/2005 13:47:28 PAGE 6
299 5 Delay_Xms(250);
300 5 Delay_Xms(250);
301 5 Delay_Xms(250);
302 5 }
303 4 }
304 3 }
305 2 }
306 1 }
307 //////////////////////////////////////////////////////////////////////////////////////////////////////////
-////////////
308 // Main Program
309 //////////////////////////////////////////////////////////////////////////////////////////////////////////
-////////////
310
311 extern void UART_Initialize(void);
312
313 void main(void)
314 {
315 1 unsigned char idata ucNotify;
316 1 bRED_LED = 1; //anson MTV512 1 = off 0 = on
317 1 bGREEN_LED = 1; // Tp2804 1 = on 0 = off
318 1 #if(USE_MCU_DDC)
MCU_DDC_Process();
#else
321 1 Firmware_Init();
322 1 #endif
323 1
324 1 #if(RS232_DEBUG)
UART_Initialize();
#endif
327 1
328 1
329 1 Power_Status_Init();
330 1 ISP_Check_Sum();
331 1
332 1 #if(RS232_DEBUG)
PutStringToScr("\nMain Loop..");
#endif
335 1
336 1
337 1 Delay_Xms(250);
338 1 Delay_Xms(250);
339 1 // Init_GUD();
340 1 /*
341 1 Delay_Xms(250);
342 1 Delay_Xms(250);
343 1 Delay_Xms(250);
344 1 */
345 1 // SetMute(1);//val = 1 open sound , val =0 close sound //anson
346 1 RTDCodeW(OSD_Enable);
347 1
348 1 // Program Main Loop
349 1 while (1)
350 1 {
351 2 rgb_LED_LIGHT_CONTROL();
352 2 RTD_Test();
353 2
354 2 #if (GETREGISTER)
RTD_Get_Set();
#endif
357 2
358 2 if(Frame_Sync_Detector())
C51 COMPILER V7.06 LCD_MAIN 11/21/2005 13:47:28 PAGE 7
359 2 continue;
360 2
361 2 // The code below will be executed every 20ms (bNotify_Timer0_Int is set to 1)
362 2 // bNotify_Timer0_Int must and can only be cleared in the end of the iteration.
363 2 if (bNotify_Timer0_Int)
364 2 {
365 3 #if(RS232_DEBUG)
if(fTest==1)
{
fTest=0;
DebugModeLoop();
}
#endif
372 3
373 3 // Key Translator
374 3 ucNotify = Key_Trans();
375 3
376 3 // Power Controller
377 3 if(Power_Control(ucNotify))
378 3 continue;
379 3
380 3
381 3 //Source Controller
382 3 if(Source_Control())
383 3 continue;
384 3
385 3
386 3 // Input Mode Detector
387 3 Input_Mode_Detector();
388 3
389 3
390 3 #if(BURNIN_MODE)
391 3 if(((ucMode_Curr == MODE_NOSUPPORT)||(ucMode_Curr == MODE_NOSIGNAL)) && bStable && ((stGUD3.TV_SETTING &
- 0x20) == 0x20)) //anson
392 3 BurnIn();
393 3 else if((MODE_NOSIGNAL != ucMode_Curr) && ((stGUD3.TV_SETTING & 0x20)==0x20 )) //anson
394 3 {
395 4 stGUD3.TV_SETTING &= 0xDF ;
396 4 Save_GUD3();
397 4 return;
398 4 }
399 3 else
400 3 #endif
401 3 Run_Task();
402 3
403 3 Signal_Stable(ucNotify);
404 3
405 3 bNotify_Timer0_Int = 0;
406 3 }
407 2 // End of main loop
408 2 }
409 1 }
410
C51 COMPILER V7.06 LCD_MAIN 11/21/2005 13:47:28 PAGE 8
ASSEMBLY LISTING OF GENERATED OBJECT CODE
; FUNCTION Com003A (BEGIN)
0000 L?0059:
0000 E4 CLR A
0001 7800 E MOV R0,#LOW ucOSD_Page_Index
0003 F6 MOV @R0,A
0004 7800 E MOV R0,#LOW ucOSD_Item_Index0
0006 F6 MOV @R0,A
0007 7800 E MOV R0,#LOW ucOSD_Item_Index1
0009 F6 MOV @R0,A
000A 7800 E MOV R0,#LOW ucOSD_Item_Index2
000C F6 MOV @R0,A
000D C200 E CLR b_rgb_VOLUME_STATUS
000F 22 RET
; FUNCTION Com003A (END)
; FUNCTION BurnIn (BEGIN)
; SOURCE LINE # 34
; SOURCE LINE # 35
; SOURCE LINE # 43
0000 E500 R MOV A,ColorCounter
0002 6003 JZ ?C0001
; SOURCE LINE # 44
0004 1500 R DEC ColorCounter
0006 22 RET
0007 ?C0001:
; SOURCE LINE # 46
; SOURCE LINE # 48
0007 0500 R INC Color
; SOURCE LINE # 49
0009 E500 R MOV A,Color
000B B41103 CJNE A,#011H,?C0003
; SOURCE LINE # 50
000E 750001 R MOV Color,#01H
0011 ?C0003:
; SOURCE LINE # 53
0011 E500 R MOV A,Color
0013 C4 SWAP A
0014 54F0 ANL A,#0F0H
0016 440D ORL A,#0DH
0018 F500 R MOV ucTemp,A
; SOURCE LINE # 56
001A 30003C E JNB bPanel_Status,?C0004
; SOURCE LINE # 57
; SOURCE LINE # 58
001D 120000 E LCALL Free_Background
; SOURCE LINE # 59
0020 7F04 MOV R7,#04H
0022 120000 E LCALL _Wait_For_Event
; SOURCE LINE # 61
0025 E4 CLR A
0026 FB MOV R3,A
; SOURCE LINE # 62
0027 120000 R LCALL L?0060
002A 900000 R MOV DPTR,#BurnInColor
002D 120000 R LCALL L?0061
; SOURCE LINE # 64
0030 7B40 MOV R3,#040H
; SOURCE LINE # 65
0032 120000 R LCALL L?0060
C51 COMPILER V7.06 LCD_MAIN 11/21/2005 13:47:28 PAGE 9
0035 900000 R MOV DPTR,#BurnInColor+05H
0038 120000 R LCALL L?0061
; SOURCE LINE # 67
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -