📄 mcu.lst
字号:
C51 COMPILER V7.50 MCU 03/18/2008 22:04:55 PAGE 1
C51 COMPILER V7.50, COMPILATION OF MODULE MCU
OBJECT MODULE PLACED IN .\BIN\MCU.obj
COMPILER INVOKED BY: D:\设计软件\Keil\C51\BIN\C51.EXE SRC\MCU.C BROWSE DEBUG OBJECTEXTEND PRINT(.\LST\MCU.lst) OBJECT(.\
-BIN\MCU.obj)
line level source
1 #include "stdio.h"
2 #include "8051.H"
3 #include "RAM.H"
4 #include "MCU.H"
5 #include "MyDef.H"
6 #include "IIC.H"
7 #include "F63REG.H"
8 #include "UserAdj.H"
9 #include "Scaler.H"
10 #include "AutoAdj.H"
11 #include "OSD.H"
12 #include "ModeHandle.H"
13 #include "sRGB.H"
14 #include "TUNER.H"
15
16 unsigned char IRCode,lrflag;
17 unsigned char DecodeDelay;
18 bit zw,MenuFlag;
19 unsigned char x1,DataSbuf[3];
20
21 unsigned char SelVideoMenu;
22 code unsigned char KeyTab[]={
23 0x00,0x20,0x40,0x60,0x7f
24 };
25
26 code unsigned int IR_Tab[]={
27 /* 0x20df,0x807f,0xb24d,0x8877,0xb847,0x9867,0x18e7,0xc03f,0x10ef,0xe817, //menu,+,-,CH+,CH-,POWER,PC/AV,
-SEARCH,MUTE,/
28 0xd02f,0x609f,0x708f,0x6897,0x7887,0x40bf,0x50af,0x48b7,0x58a7,0xe01f, //0,1,2,3,4,5,6,7,8,9
29 */
30 // 0x807f,0xe01f,0x20df,0x40bf,0x609f,0xf807,0x50af,0xf00f,0x38c7,0x10ef, //menu,+,-,CH+,CH-,POWER,PC/AV,
-SEARCH,MUTE,/
31 // 0x30cf,0x18e7,0x58a7,0xd827,0x28d7,0x6897,0xe817,0x08f7,0x48b7,0xc837, //0,1,2,3,4,5,6,7,8,9
32 // 0x28d7,0x38c7,0xf00f,0xf807,0xc837,0x08f7 // L/R,U/D,AUTOADJUST,SEARCH1,GAME/PC,Display
33 // 0x6897,0x48b7,0x08f7,0xb04f,0xa857,0x40bf,0x50af,0xf00f,0xA05F,0x5FA0, //menu,+,-,CH+,CH-,POWER,PC/
-AV,SEARCH,MUTE,/
34 // 0xcf30,0xe718,0xa758,0xd827,0xd728,0x9768,0x17e8,0xf708,0xb748,0x37c8, //0,1,2,3,4,5,6,7,8,9
35 0x6897,0x48b7,0x08f7,0xb04f,0xa857,0x40bf,0x50af,0xa05f,0x807f,0x5FA0, //menu,+,-,CH+,CH-,POWER,PC/AV,SE
-ARCH,MUTE,/
36 0xcf30,0xe718,0xa758,0xd827,0xd728,0x9768,0x17e8,0xf708,0xb748,0x37c8, //0,1,2,3,4,5,6,7,8,9
37 };
38
39 code unsigned char IR_KeyTab[]={
40 0x77,0x44,0x33,0x55,0x66,0x11,0x22,0x1c,0x0d,0x0b, //menu,+,-,CH+,CH-,POWER,PC/AV,SEARCH,MUTE,/
41 0x0a,0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x08,0x09, //0,1,2,3,4,5,6,7,8,9
42 // 0x2a,0x2b,0x2c,0x2d,0x2e,0x3a // L/R,U/D,AUTOADJUST,SEARCH1,GAME/PC,Display
43 };
44
45 void CheckIRKey(void)
46 {
47 1 unsigned int n;
48 1 unsigned char m;
49 1 unsigned long value;
50 1 if(!IRDATA)
C51 COMPILER V7.50 MCU 03/18/2008 22:04:55 PAGE 2
51 1 {
52 2 IR_Timer = 0;
53 2 while(!IRDATA)
54 2 {
55 3 if(lrflag==1)
56 3 {
57 4 if(IR_Timer>30 && IR_Timer<48)
58 4 IRCode=0x33;
59 4 }
60 3 else if(lrflag==2)
61 3 { if(IR_Timer>30 && IR_Timer<48)
62 4 IRCode=0x44;
63 4 }
64 3 if(IR_Timer > 48) //> 12 ms
65 3 return;
66 3 }
67 2 n = IR_Timer;
68 2 IR_Timer = 0;
69 2 if(n < 24) // < 6 ms
70 2 return;
71 2 while(IRDATA)
72 2 {
73 3 if(IR_Timer > 20) // > 5 ms
74 3 return;
75 3 }
76 2 n = IR_Timer;
77 2 IR_Timer = 0;
78 2
79 2 if((n > 16)&&(n < 20)) //4ms~5ms
80 2 {
81 3 for(m=0; m<32; m++)
82 3 {
83 4 while(!IRDATA)
84 4 {
85 5 if(IR_Timer > 4) //> 1ms
86 5 return;
87 5 }
88 4 n = IR_Timer;
89 4 IR_Timer = 0;
90 4 while(IRDATA)
91 4 {
92 5 if(IR_Timer > 8) //> 2ms
93 5 return;
94 5 }
95 4 n = IR_Timer;
96 4 IR_Timer = 0;
97 4 value = value << 1;
98 4 if(n > 4) // > 1ms
99 4 value |= 0x01;
100 4 }
101 3 // n = (unsigned int)(value >> 16);
102 3 // if(n == 0x01fe) //user code(0x7f)
103 3 // {
104 3 if((value & 0xffff) != 0) lrflag=0;
105 3 for(m=0; m<26; m++)
106 3 {
107 4 if(IR_Tab[m] == (unsigned int)(value & 0xffff))
108 4 {
109 5 IRCode = IR_KeyTab[m];
110 5 if(IRCode==0x33) {lrflag=1;}
111 5 else if(IRCode==0x44) {lrflag=2;}
112 5 else
C51 COMPILER V7.50 MCU 03/18/2008 22:04:55 PAGE 3
113 5 { lrflag=0; }
114 5 IR_Repeat = m;
115 5 RepeatTimer = KeyHoldTime;
116 5 IR_RepeatTimer = KeyHoldTime;
117 5 }
118 4 }
119 3 // }
120 3 }
121 2 else
122 2 {
123 3 if((n > 8)&&(n < 10))
124 3 {
125 4 while(!IRDATA)
126 4 {
127 5 if(IR_Timer > 4) // > 1 ms
128 5 return;
129 5 }
130 4 n = IR_Timer;
131 4 IR_Timer = 0;
132 4 if((n > 1)&&(IR_Repeat > 19)&&(IR_Repeat < 24))
133 4 {
134 5 if((IR_RepeatTimer != 0)&&((OSD_Type == 2)||(OSD_Type == 3)))
135 5 {
136 6 IR_RepeatTimer = 20;
137 6 IRCode = IR_KeyTab[IR_Repeat];
138 6 }
139 5 }
140 4 }
141 3 }
142 2 }
143 1 }
144
145 code unsigned char SystemRegTab[]={
146 0xf8, // PortA,0xf1
147 0xff, // PortB
148 #if PanelPowerActive == High
149 0x6c, // PortC
150 #else
0xee, // PortC
#endif
153 0x7e, // PortD,0x6e
154 0x55, // CLRWDT
155 0x98, // ADC_CON
156 0x00, // ADC0_REG
157 0x00, // ADC1_REG
158 0x00, // ADC2_REG
159 0x00, // ADC3_REG
160 0x00, // PWM0 Enable,ENPWM_LB
161 0x88, // PWM15 Enable,ENPWM_HB
162 0x00, // PWM0
163 0x00, // PWM1
164 0x00, // PWM2
165 0x00, // PWM3
166 0x00, // PWM4
167 0x00, // PWM5
168 0x00, // PWM6
169 0x00, // PWM7
170 0x00, // PWM8
171 0x00, // PWM9
172 0x00, // PWM10
173 0x00, // PWM11 Volume
174 0x00, // PWM12
C51 COMPILER V7.50 MCU 03/18/2008 22:04:55 PAGE 4
175 0x00, // PWM13
176 0x00, // PWM14
177 0x00, // PWM15 Brightness
178 0x8A, // DDC_CTRL
179 0x00, // DDC_REG
180 0x40, // DDC_ADDR
181 0xFF, // INTIIC0_FLG/CLR
182 0x1F, // INTIIC0_EN
183 NOVATEK_Addr, // IIC0_ADDR
184 0xFF, // IIC0_TXDAT
185 0x00, // IIC0_CON
186 0xF0, // IIC0_CLK
187 0xFF, // INTIIC1_FLG/CLR
188 0x00, // INTIIC1_EN
189 0x00, // IIC1_ADDR
190 0xFF, // IIC1_TXDAT
191 0x00, // IIC1_CON
192 0xF3, // IIC1_CLK
193 0x00, // INT_SRC
194 0x00, // INTEXT_FLG/CLR
195 0x00, // INTEXT_EN
196 0x00, // INTHV_FLG/CLR
197 0x00, // INTHV_EN
198 0x60, // SYNC_REG
199 0x08, // HVO_REG
200 0xE0, // HVI_REG
201 0x00, // HPW_REG
202 0x00, // HFLT_REG
203 0x0E, // CLMP_REG
204 0x20, // PAT_LT
205 0x20, // PAT_RT
206 0x20, // PAT_UP
207 0x20, // PAT_DN
208 0x0f, // HVCNT_CTRL
209 0x00, // HCNT_LB
210 0x00, // HCNT_HB
211 0x00, // VCNT_LB
212 0x00, // VCNT_HB
213 0xc8, // DCNT_LB
214 0x00, // DCNT_HB --> 12M/60KHz = 0x00c8
215 0x20, // LCNT_LB
216 0x03, // LCNT_HB --> 60KHz/75Hz = 0x0320
217 0x40, // MUTE_CTRL
218 0x00, // ISP_REG
219 0xFF, // FLASH_BUF
220 0x00, // RDPA_REG
221 0xff, // RDPB_REG
222 0x44, // RDPC_REG
223 0x64, // RDPD_REG
224 };
225
226 void InitMCU(void)
227 {
228 1 unsigned char *p;
229 1 unsigned char i;
230 1 p = &PortA;
231 1 for(i=0; i<0x4A; i++){
232 2 *p = SystemRegTab[i];
233 2 p++;
234 2 }
235 1 CLRWDT = 0x55;
236 1 CmdTxPtr1 = 0;
C51 COMPILER V7.50 MCU 03/18/2008 22:04:55 PAGE 5
237 1 CmdTxPtr2 = 0;
238 1 CmdRxPtr1 = 0;
239 1 CmdRxPtr2 = 0;
240 1 T0_INT_CNT = 0;
241 1 rwbuf = 0;
242 1 abuf = 0;
243 1 dbuf = 0;
244 1 if((PortC & BIT_6) == 0){
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -