📄 main.lst
字号:
165 void OpenPanel(void)
166 {
167 1 if(m_bPanelClose){
168 2 m_bPanelClose = 0;
169 2 I2CWriteByte(TW101, 0xC2, I2CReadByte(TW101, 0xC2)&~(PSYNC_STR|IGNORE_VSYNC));
170 2 I2CWriteByte(TW101, PATTERN_CTRL, I2CReadByte(TW101, PATTERN_CTRL)&~0x80); //Enable Frame Background Col
-or
171 2
172 2 twdDelay(100);
173 2 }
174 1 }
175 void BKPower(void)
176 {
C51 COMPILER V7.50 MAIN 01/12/2006 13:31:12 PAGE 4
177 1 if(m_bBKPowerOn){
178 2 BKLIGHT_EN = 1; // BKLIGHT shut down
179 2 twdDelay(100);
180 2 m_bBKPowerOn = 0;
181 2 }
182 1 else{
183 2 twdDelay(100);
184 2 BKLIGHT_EN = 0; // BKLIGHT power on
185 2 m_bBKPowerOn = 1;
186 2 #ifdef LEDCONTROL
m_bLedOn=1;
#endif
189 2 }
190 1 }
191
192 void PowerManage(void)
193 {
194 1 if(m_bKyPowerOn) //Power on
195 1 {
196 2 LED_RED = 1; //Turn Off
197 2 LED_GREEN = 0; //Turn On
198 2 I2CWriteByte(TW101, 0xE0, I2CReadByte(TW101, 0xE0)|TPDB);
199 2 m_cOSDEvent=0;
200 2 m_cOSDFunc=0;
201 2 //When power on chip, force to reset chip
202 2 m_bChipPowerOn=1;
203 2 //m_cSource=0x0F;
204 2 twdDelay(100);
205 2 OpenPanel();
206 2 //AUDIO_STANBY=0; //Audio on
207 2 }
208 1 else //Forced Power Off
209 1 {
210 2 if(m_bChipPowerOn)
211 2 {
212 3 LED_RED =0; //Turn On
213 3 LED_GREEN = 1; //Turn Off
214 3 twdDelay(100);
215 3 OSDExit();
216 3 if(m_bBKPowerOn)
217 3 BKPower();
218 3 ClosePanel(0x10,0xff,0x40);
219 3 twdDelay(200);
220 3 I2CWriteByte(TW101, 0xE0, I2CReadByte(TW101, 0xE0)&~TPDB|PDMD);
221 3 m_bChipPowerOn=0;
222 3 }
223 2 }
224 1 }
225
226 void Initial(void)
227 {
228 1 extern EEPVIDEO idata EepVideo;
229 1
230 1 SysInit();
231 1 #ifdef TCON
232 1 TconInit();
233 1 #endif
234 1 //Ruby modify 2005-06-07
235 1 //ClosePanel(0x10,0xff,0x40);
236 1 OSDDisable();
237 1 LoadGammaTable(0);
238 1
C51 COMPILER V7.50 MAIN 01/12/2006 13:31:12 PAGE 5
239 1 OSDLogo();
240 1 }
241
242 void SysInit(void)
243 {
244 1 P0=0xff;
245 1 P1=0xff;
246 1 P2=0xff;
247 1 P3=0xff;
248 1 //Chip Reset
249 1 CHIP_RESET = 0;
250 1 VIDEO_RESET=0;
251 1 twdDelay(100);
252 1 CHIP_RESET = 1;
253 1 VIDEO_RESET=1;
254 1 twdDelay(50);
255 1 //8051Register Set
256 1 IE = 0; // disable all interrupt
257 1 TMOD = 0x11; // Timer1 Mode 1, Timer0 Mode 1;
258 1 //TMOD = 0x01; // Timer0 Mode 1;
259 1 EX0 = 0; // disable external interrupt 0, IE[0]
260 1 EX1 = 0;
261 1 //ET0 = 1; // enable bTimer 0
262 1 //IT0 = 1; // falling endge generate interrupt, TCON[0]
263 1 INT0 = 1;
264 1 IT1 = 1; // falling endge generate interrupt, TCON[0]
265 1 INT1 = 1;
266 1
267 1 twdDelay(10);
268 1 //ClosePanel(0x10,0xff,0x40);
269 1 #if (defined T100)|(defined T101)
LoadFilter(3);//3
#endif
272 1 #ifdef T101A
LoadFilter(2);//2
#endif
275 1 #ifdef T102
//LoadFilter(6);
#endif
278 1 InitT10x();
279 1 #ifdef NVRAM
280 1 #ifdef RESET_EEPROM
InitEEPRom();
OSDResetVideoData();
#else
284 1 EEPLoadPubData();
285 1 #endif
286 1 #endif
287 1
288 1 kyKeypadInit();
289 1 m_bPanelClose = 0;
290 1 m_bBKPowerOn=0;
291 1 m_bKyPowerOn=1;
292 1 m_bChipPowerOn=1;
293 1 LED_GREEN=0;
294 1 }
295
296 void SysInterruptEnable(void)
297 {
298 1 #ifdef TIMER1
299 1 // Timer1Reset();
300 1 ET1 = 1; // Enable Timer1 interrupt
C51 COMPILER V7.50 MAIN 01/12/2006 13:31:12 PAGE 6
301 1 TR1=0;
302 1 #endif
303 1 #ifdef TIMER0
304 1 Timer0Reset();
305 1 ET0 = 1; // Enable Timer0 interrupt
306 1 TR0 = 0;
307 1 #endif
308 1 #ifdef INTERRUPT1
309 1 EX1 = 1; // Enable INT1 (IR)
310 1 #endif
311 1 EA = 1; // Enable Interrupt
312 1 }
313
314
315
316
317
318
319
320
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 457 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 17 3
IDATA SIZE = 19 ----
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 + -