?? utility.lst
字號(hào):
C51 COMPILER V7.07 UTILITY 05/03/2006 14:29:24 PAGE 1
C51 COMPILER V7.07, COMPILATION OF MODULE UTILITY
OBJECT MODULE PLACED IN UTILITY.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE UTILITY.C BROWSE DEBUG OBJECTEXTEND
stmt level source
1 /*******************************************************************************
2 UTILITY.C
3 Copyright (c) HIMAX Technologies, Inc. All rights reserved.
4 *******************************************************************************/
5 #include <MTV230.H>
*** WARNING C318 IN LINE 5 OF UTILITY.C: can't open file 'MTV230.H'
6 #include <DEFINE.H>
*** WARNING C318 IN LINE 6 OF UTILITY.C: can't open file 'DEFINE.H'
7 #include <MATH.H>
8 #define STABLE_TOLERANCE 50
9 #define STABLE_COUNT 240//about 20ms stable period
10 /*==============================================================================
11
12 ==============================================================================*/
13 void DelayX1ms(unsigned int n) {
14 1
15 1 unsigned int i;
16 1
17 1 while(n--!=0)
18 1 for (i=0; i<86; i++)
19 1 ;
20 1
21 1 }
22
23
24 /*==============================================================================
25
26 ==============================================================================*/
27 void DelayX10ms(unsigned int n) {
28 1
29 1 unsigned int i;
30 1
31 1 while(n--!=0)
32 1 for (i=0; i<860; i++)
33 1 ;
34 1
35 1 }
36
37
38 /*===========================================================================
39
40 ===========================================================================*/
41 code unsigned char BIT_OPOR[8]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};
42 code unsigned char BIT_OPAND[8]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};
43
44 bit Get_Bit(unsigned char bytedata, unsigned char bit_pos) {
45 1
46 1 return ((bytedata&BIT_OPOR[bit_pos])!=0);
47 1
48 1 }
49
50
51 /*===========================================================================
52
53 ===========================================================================*/
C51 COMPILER V7.07 UTILITY 05/03/2006 14:29:24 PAGE 2
54 unsigned char Set_Bit(unsigned char bytedata, unsigned char bit_pos, bit set) {
55 1
56 1 unsigned char retdata;
57 1
58 1 retdata=bytedata&BIT_OPAND[bit_pos];
59 1 if(set)
60 1 retdata=retdata|BIT_OPOR[bit_pos];
61 1
62 1 return retdata;
63 1
64 1 }
65
66
67 /*==============================================================================
68
69 ==============================================================================*/
70 unsigned int String_To_Int(unsigned char* StrPtr, unsigned char digit) {
71 1
72 1 unsigned int retvalue;
73 1 unsigned char i;
74 1
75 1 retvalue=0;
76 1 for(i=0; i<digit; i++) {
77 2 retvalue*=10;
78 2 if((*(StrPtr+digit-i)>='0')&&(*(StrPtr+digit-i)<='9'))
79 2 retvalue+=*(StrPtr+digit-i)-'0';
80 2 else
81 2 retvalue+=0;
82 2 }
83 1
84 1 return retvalue;
85 1
86 1 }
87
88
89 /*===========================================================================
90
91 ===========================================================================*/
92 void Switch_Source(unsigned char v_source) {
93 1
94 1 BL=OFF;
*** ERROR C202 IN LINE 94 OF UTILITY.C: 'BL': undefined identifier
95 1 OSD_Show(0,0,0,0,0);
96 1 Page=Item=badjust=0;
97 1
98 1 switch(v_source) {
99 2 case(AV1):
100 2 SA7114_Byte_Write(0x02, 0xc4);
101 2 SA7114_Byte_Write(0x09, 0x40);
102 2 SA7114_Byte_Write(0x0a, 0x72);
103 2 SA7114_Byte_Write(0x0b, 0x30);
104 2 SA7114_Byte_Write(0x14, SA7114_Byte_Read(0x14)&0xfc|0x02);
105 2 ParaAddress=EE_AV1_PARA;
106 2 SEL_A=LOW;
107 2 SEL_B=HIGH;
108 2 MSP_Source_Select(SCART1_DA, SCART, STEREO);
109 2 MSP_Source_Select(LOUDSPEAKER, SCART, STEREO);
110 2 MSP_SCART1_Source_Select(SC1_IN);
111 2 break;
112 2 case(AV2):
113 2 SA7114_Byte_Write(0x02, 0xc6);
114 2 SA7114_Byte_Write(0x09, 0xc0);
C51 COMPILER V7.07 UTILITY 05/03/2006 14:29:24 PAGE 3
115 2 SA7114_Byte_Write(0x0a, 0x72);
116 2 SA7114_Byte_Write(0x0b, 0x35);
117 2 SA7114_Byte_Write(0x14, SA7114_Byte_Read(0x14)&0xfc|0x01);
118 2 ParaAddress=EE_AV2_PARA;
119 2 SEL_A=HIGH;
120 2 SEL_B=LOW;
121 2 MSP_Source_Select(SCART1_DA, SCART, STEREO);
122 2 MSP_Source_Select(LOUDSPEAKER, SCART, STEREO);
123 2 MSP_SCART1_Source_Select(SC1_IN);
124 2 break;
125 2 case(AV3):
126 2 SA7114_Byte_Write(0x02, 0xc9);
127 2 SA7114_Byte_Write(0x09, 0xc0);
128 2 SA7114_Byte_Write(0x0a, 0x72);
129 2 SA7114_Byte_Write(0x0b, 0x35);
130 2 SA7114_Byte_Write(0x14, SA7114_Byte_Read(0x14)&0xfc|0x01);
131 2 ParaAddress=EE_AV3_PARA;
132 2 SEL_A=LOW;
133 2 SEL_B=LOW;
134 2 MSP_Source_Select(SCART1_DA, SCART, STEREO);
135 2 MSP_Source_Select(LOUDSPEAKER, SCART, STEREO);
136 2 MSP_SCART1_Source_Select(SC2_IN);
137 2 break;
138 2 case(TV):
139 2 SA7114_Byte_Write(0x02, 0xc5);
140 2 SA7114_Byte_Write(0x09, 0x40);
141 2 SA7114_Byte_Write(0x0a, 0x72);
142 2 SA7114_Byte_Write(0x0b, 0x35);
143 2 SA7114_Byte_Write(0x14, SA7114_Byte_Read(0x14)&0xfc|0x02);
144 2 ParaAddress=EE_TV_PARA;
145 2 SEL_A=HIGH;
146 2 SEL_B=HIGH;
147 2 MSP_Source_Select(SCART1_DA, STEREOORAB, MONO);
148 2 MSP_Source_Select(LOUDSPEAKER, STEREOORA, STEREO);
149 2 Set_Channel(Channel);
150 2 break;
151 2 }
152 1
153 1 Contrast=EE_MCU_Byte_Read(ParaAddress+EE_CONTRAST);
154 1 Brightness=EE_MCU_Byte_Read(ParaAddress+EE_BRIGHTNESS);
155 1 Saturation=EE_MCU_Byte_Read(ParaAddress+EE_SATURATION);
156 1 Hue=EE_MCU_Byte_Read(ParaAddress+EE_HUE);
157 1 Sharpness=EE_MCU_Byte_Read(ParaAddress+EE_SHARPNESS);
158 1
159 1 Set_7114_Contrast(EE_MCU_Byte_Read(ParaAddress+EE_7114_CONTRAST));
160 1 Set_7114_Luminance(EE_MCU_Byte_Read(ParaAddress+EE_7114_LUMINANCE));
161 1 BL_VOLT=EE_MCU_Byte_Read(ParaAddress+EE_BACK_LIGHT);
162 1 Set_Color_Temp(Color_Temp);
163 1 Set_Contrast(Contrast);
164 1 Set_Brightness(Brightness);
165 1 Set_Saturation(Saturation);
166 1 Set_Hue(Hue);
167 1
168 1 }
169
170
171 /*===========================================================================
172
173 ===========================================================================*/
174 void Power_Sequence(bit yes) {
175 1
176 1 if(yes) {
C51 COMPILER V7.07 UTILITY 05/03/2006 14:29:24 PAGE 4
177 2 PSC1=LOW;
178 2 DelayX10ms(1);
179 2 LVDS_EN=HIGH;
180 2 // STV_Byte_Write(0x0f, 0x02);//remove first line
181 2 // STV_Byte_Write(0x11, 0x02);
182 2 DelayX10ms(10);
183 2 // STV_Byte_Write(0x0f, 0x00);//remove first line
184 2 // STV_Byte_Write(0x11, 0x00);
185 2 DelayX10ms(40);
186 2 BL=LOW;
187 2 DelayX10ms(10);
188 2 AV_PD=LOW;
189 2 DelayX10ms(50);
190 2 MUTE=LOW;
191 2 }
192 1 else {
193 2 MUTE=HIGH;
194 2 AV_PD=HIGH;
195 2 BL=HIGH;
196 2 LVDS_EN=LOW;
197 2 PSC1=HIGH;
198 2 }
199 1
200 1 }
201
202
203 /*===========================================================================
204
205 ===========================================================================*/
206 unsigned int Channel_EEPROM_Address(void) {
207 1
208 1 return EE_CHANNEL_AIR+TV_Mode;
209 1
210 1 }
211
212
213 /*===========================================================================
214
215 ===========================================================================*/
216 unsigned int ChannelTable_EEPROM_Address(void) {
217 1
218 1 return EE_TV_AIR_CHANNEL_TABLE+TV_Mode*0x20;
219 1
220 1 }
221
222
223 /*===========================================================================
224
225 ===========================================================================*/
226 unsigned int ChannelLockTable_EEPROM_Address(void) {
227 1
228 1 return EE_AIR_CHANNEL_LOCK_TABLE+TV_Mode*0x20;
229 1
230 1 }
C51 COMPILATION COMPLETE. 2 WARNING(S), 1 ERROR(S)
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -