📄 main.lst
字号:
C51 COMPILER V7.06 MAIN 12/11/2005 16:43:46 PAGE 1
C51 COMPILER V7.06, COMPILATION OF MODULE MAIN
OBJECT MODULE PLACED IN main.OBJ
COMPILER INVOKED BY: D:\Keil\C51\BIN\C51.EXE main.c BROWSE INCDIR(E:\下载软件\数字屏驱动\T112源代码\TW_112_New\Include\;
-E:\下载软件\数字屏驱动\T112源代码\TW_112_New\Include\Panel\;E:\下载软件\数字屏驱动\T112源代码\TW_112_NEW\Include\) DEBUG
- OBJECTEXTEND
stmt level source
1 /****************************************************************************
2 * File: MAIN.c *
3 * Description: main routine *
4 * History: 2005/08/12 *
5 * *
6 * Copyright 2005 (c) Terawins Inc. *
7 ****************************************************************************/
8
9 /****************************************************************************
10 * Include File *
11 ****************************************************************************/
12
13 #include "reg51.h"
14 #include "math.h"
15 #include "common.h"
16 #include "struct.h"
17 #include "system.h"
18 #include "twowire.h"
19 //#include "gamma.h"
20 #include "filter.h"
21 #include "keypad.h"
22 #include "Nvram.h"
23 #include "Video.h"
24 #include "T101_Util.h"
25 #include "TW10xReg.h"
26 #include "remote.h"
27 #include "osddraw.h"
28 #include "tuner.h"
29 #include "T515.h"
30 #ifdef T100A
#include "T100OSD.h" // add by Sherman
#else //T102
33 #include "T102OSD.h" // add by Sherman
34 #endif
35 /*****************************************************************************
36 * Public Function Prototypes *
37 *****************************************************************************/
38 void Initial (void);
39 void SysInit (void);
40 void SysInterruptEnable (void);
41 void ClosePanel (uCHAR uR, uCHAR uG, uCHAR uB);
42 void OpenPanel (void);
43 void BKPower (void);
44 void PowerManage (void);
45
46 #ifdef TIMER0
47 void Timer0Reset(void);
48 void Timer0Start(void);
49 void Timer0Stop(void);
50 #endif
51 /****************************************************************************
52 * Public Global Variable *
53 ****************************************************************************/
C51 COMPILER V7.06 MAIN 12/11/2005 16:43:46 PAGE 2
54 uCHAR bdata Flag1;
55 uCHAR bdata Flag2;
56 uCHAR bdata Flag3;
57 uCHAR idata m_cOSDEvent;
58 uCHAR idata m_cOSDFunc;
59 uCHAR idata m_cOSDMenu;
60 uCHAR idata m_cSource;
61 uCHAR ir_data;
62 uCHAR m_cFactryCnt;
63 //uCHAR idata m_cStandard=4;//PAL
64 uCHAR idata m_cStandard=S_NTSC;//NTSC
65 uCHAR idata m_cChroma=S_NTSC; //NTSC // add by Sherman 06'01'13
66 uCHAR idata m_cScaleratio=ScaleFULL;
67 uWORD m_wHRes;
68 uWORD m_wVRes;
69 uWORD idata m_wVTotal;
70
71 sbit m_bPanelClose = Flag1 ^ 0;
72 sbit m_bBKPowerOn = Flag1 ^ 1;
73 sbit m_bKyPowerOn = Flag1 ^ 2;
74 sbit m_bChipPowerOn = Flag1 ^ 3;
75 sbit m_bTimer0Overflow = Flag1 ^ 4;
76 sbit m_bOSDEnable = Flag1 ^ 5;
77 sbit ir_enable = Flag1 ^ 6;
78 sbit m_bKyblocked = Flag1 ^ 7;
79 sbit m_bFactryMode = Flag2 ^ 0;
80 sbit m_bFactryReady = Flag2 ^ 1;
81 sbit m_bRelease = Flag2 ^ 2;
82 sbit m_bAir_Cable = Flag2 ^ 3;
83 sbit m_bTV_Num_Bits = Flag2 ^ 4;
84 sbit m_bTV_Skip = Flag2 ^ 5;
85 uWORD idata m_wBuff[3];
86 uCHAR idata m_cBuff[5];
87 uDWORD m_dwBuff[2];
88
89 /****************************************************************************
90 * Public Function *
91 ****************************************************************************/
92 //uCHAR code iBright_E1 []={0x01,0x02,0x03,0x04,0x05};
93 void main(void)
94 {
95 1 Initial();
96 1 SysInterruptEnable();
97 1 //OSD Font Initial
98 1 OSDInit();
99 1
100 1 twdDelay(NVRDELAY);
101 1 //m_cSource = I2CReadByte(EEPVIDEOBLOCK, idVIDEO_SOURCE_INDEX)&0x0f;
102 1
103 1 m_cSource=3; //svideo
104 1 SourceSelect();
105 1
106 1 SetSignalStd();
107 1 SetOPTiming();
108 1 twdDelay1(50);
109 1 DetectSignalStd();
110 1 OSDShowSource();
111 1 OpenPanel();
112 1 //Main loop
113 1 while(1)
114 1 {
115 2 //detect key press
C51 COMPILER V7.06 MAIN 12/11/2005 16:43:46 PAGE 3
116 2 kyKeypad();
117 2 //handle ir event
118 2 if(ir_enable){
119 3 RemoteEvent();
120 3 ir_enable=0;
121 3 }
122 2 else if(!EX1){
123 3 EX1=1;
124 3 ir_data=0;
125 3 }
126 2 //OSD Timeout
127 2 if(m_bTimer0Overflow){
128 3 if(m_bOSDEnable)
129 3 OSDExit();
130 3 }
131 2 m_wBuff[2]+=1;
132 2 #ifdef AUTO_DETECT
133 2 if(m_wBuff[2]>=0x4ff){
134 3 m_wBuff[2]=0x00;
135 3 DetectSignalStd();
136 3 Detect_Sig(0);
137 3 }
138 2 #endif
139 2 }
140 1 }
141
142 void ClosePanel(uCHAR uR, uCHAR uG, uCHAR uB)
143 {
144 1 if(!m_bPanelClose){
145 2 m_bPanelClose = 1;
146 2 I2CWriteByte(TW101, 0xC2, I2CReadByte(TW101, 0xC2)|(PSYNC_STR|IGNORE_VSYNC));
147 2 I2CWriteByte(TW101, 0x9d, uR);
148 2 I2CWriteByte(TW101, 0x9e, uG);
149 2 I2CWriteByte(TW101, 0x9f, uB);
150 2 // I2CWriteByte(TW101, 0x90, 0x00);
151 2 I2CWriteByte(TW101, PATTERN_CTRL, 0x87);//I2CReadByte(TW101, PATTERN_CTRL)|0x80); //Enable Frame Backgr
-ound Color
152 2 I2CWriteByte(TW101, 0xe2, 0x11);
153 2 }
154 1 }
155
156 void OpenPanel(void)
157 {
158 1 if(m_bPanelClose){
159 2 m_bPanelClose = 0;
160 2 I2CWriteByte(TW101, 0xC2, I2CReadByte(TW101, 0xC2)&~(PSYNC_STR|IGNORE_VSYNC));
161 2 I2CWriteByte(TW101, PATTERN_CTRL, I2CReadByte(TW101, PATTERN_CTRL)&~0x80); //Enable Frame Background Col
-or
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -