📄 gmenu.lst
字号:
223 #ifdef FONT_SC
224 {
225 //"12345678901234567"
226 "1: ", // 0 MENU_BRIGHTNESS
227 "2: ", // 1 MENU_CONTRAST
228 "3: ", // 2 MENU_SATURATION
229 "4: ",
230
231 };
232 #else
{
//"12345678901234567"
"Brightness ", // 0 MENU_BRIGHTNESS
"Contrast ", // 1 MENU_CONTRAST
"Saturation ", // 2 MENU_SATURATION
"Color Temperature",
};
C51 COMPILER V7.50 GMENU 12/14/2005 10:05:21 PAGE 5
#endif
242 #endif
243
244 //void test001(u8* hex)
245 //{
246 // osd_printf(XCCORD+ 4,osdgv_menu_base+7,2," ");
247 // osd_printf(XCCORD+ 4,osdgv_menu_base+7,2,hex);
248 //}
249
250 //================================================================
251 //
252 //================================================================
253 #define BLINK_X_CORD_CNTR 44
254 #define BLINK_Y_CORD_Y 11
255
256 void blinking_message(u8 length1, char* str1, u8 length2, char* str2)
257 {
258 1 xdata u8 i;
259 1
260 1 for(i=0;i<3;i++)
261 1 {
262 2 osd_printf(BLINK_X_CORD_CNTR-length1, BLINK_Y_CORD_Y, length1, str1);
263 2 if(length2)
264 2 osd_printf(BLINK_X_CORD_CNTR-length2, BLINK_Y_CORD_Y+1, length2, str2);
265 2 delay_time(50000,3);
266 2
267 2 osd_erase(BLINK_X_CORD_CNTR-length1, BLINK_Y_CORD_Y,length1);
268 2 if(length2)
269 2 osd_erase(BLINK_X_CORD_CNTR-length2, BLINK_Y_CORD_Y+1,length2);
270 2 delay_time(50000,2);
271 2 }
272 1 }
273 #ifdef FONT_SC
274 void blinking_message_sc(u8 length1, char* str1)
275 {
276 1 xdata u8 i;
277 1
278 1 for(i=0;i<3;i++)
279 1 {
280 2 osd_printf(BLINK_X_CORD_CNTR-length1, BLINK_Y_CORD_Y, length1, str1);
281 2 osd_putch((BLINK_X_CORD_CNTR-length1)/2+length1-2, BLINK_Y_CORD_Y,2);
282 2 delay_time(50000,3);
283 2 osd_erase(BLINK_X_CORD_CNTR-length1, BLINK_Y_CORD_Y,length1+1);
284 2 delay_time(50000,2);
285 2 }
286 1 }
287 #endif
288 //===============================================================================
289 //
290 //===============================================================================
291 u8 cal_cood_ary[12]={36,34,30,28,24,22,18,16,12,10,6,4};
292 u8 cal_cood(u8 movx)
293 {
294 1 u8 dataa;
295 1
296 1 dataa = 4;
297 1 if(gv_cursor_position<12)
298 1 dataa = cal_cood_ary[gv_cursor_position]+movx;
299 1 return dataa;
300 1 }
301
302 //===============================================================================
C51 COMPILER V7.50 GMENU 12/14/2005 10:05:21 PAGE 6
303 //
304 //===============================================================================
305 u8 bcd2bin(u8 bcdval)
306 {
307 1 u8 binval;
308 1 if(bcdval >= 0x10)
309 1 binval = (bcdval&0x0f) + 10*(bcdval>>4);
310 1 else
311 1 binval = bcdval;
312 1 return binval;
313 1 }
314
315 //===============================================================================
316 //
317 //===============================================================================
318 u8 bin2bcd(u8 binval)
319 {
320 1 u8 bcdval;
321 1 if(binval >= 10)
322 1 bcdval = ((binval/10) << 4) | (binval % 10);
323 1 else
324 1 bcdval = binval;
325 1 return bcdval;
326 1 }
327
328 //===============================================================================
329 //
330 //===============================================================================
331 void ds1307_time_set(void)
332 {
333 1 u8 i;
334 1 for(i=0;i<6;i++)
335 1 i2c_pkt_write(0xd0, (i>2)?i+1:i, bin2bcd(gv_time_data[i]));
336 1 }
337
338 //===============================================================================
339 //
340 //===============================================================================
341 void ds1307_time_read(void)
342 {
343 1 xdata u8 time_err=0;
344 1
345 1 u8 i;
346 1 for(i=0;i<6;i++)
347 1 gv_time_data[i] = bcd2bin(i2c_pkt_read(0xd0,(i>2)?i+1:i));
348 1 if(gv_time_data[0] > 59) time_err = 1; // sec
349 1 if(gv_time_data[1] > 59) time_err = 1; // min
350 1 if(gv_time_data[2] > 24) time_err = 1; // hour
351 1 if(gv_time_data[3] > 31 || gv_time_data[3] == 0) time_err = 1; // day
352 1 if(gv_time_data[4] > 12 || gv_time_data[4] == 0) time_err = 1; //month
353 1 if(gv_time_data[5] > 99) time_err = 1; //year
354 1
355 1 if(time_err == 1)
356 1 {
357 2 #ifdef DEBUG_ERR_TIME
printf("\n\rds1307_time_read err: ");
{int i; for(i=5;i>=0;i--) printf("%02d:", (int) gv_time_data[i]); }
#endif
361 2 gv_time_data[0] = 1;
362 2 gv_time_data[1] = 1;
363 2 gv_time_data[2] = 1;
364 2 gv_time_data[3] = 1;
C51 COMPILER V7.50 GMENU 12/14/2005 10:05:21 PAGE 7
365 2 gv_time_data[4] = 1;
366 2 gv_time_data[5] = 5; // 2005 is default value
367 2 time_err = 0;
368 2
369 2 ds1307_time_set();
370 2 }
371 1 }
372
373 //===============================================================================
374 //
375 //===============================================================================
376 void real_time_read(u8 option)
377 {
378 1 u8 i;
379 1 if(option)
380 1 {
381 2 for(i=0;i<6;i++)
382 2 gv_time_data[i] = bcd2bin(i2c_pkt_read(0xd0,(i>2)?i+1:i));
383 2 }
384 1 else
385 1 {
386 2 gv_time_data[0] = bcd2bin(i2c_pkt_read(0xd0,0x00));
387 2 if(gv_time_data[0] == 0)
388 2 {
389 3 gv_time_data[1] = bcd2bin(i2c_pkt_read(0xd0,0x01));
390 3 if(gv_time_data[1] == 0)
391 3 {
392 4 gv_time_data[2] = bcd2bin(i2c_pkt_read(0xd0,0x02));
393 4 if(gv_time_data[2] == 0)
394 4 {
395 5 gv_time_data[3] = bcd2bin(i2c_pkt_read(0xd0,0x04));
396 5 gv_time_data[4] = bcd2bin(i2c_pkt_read(0xd0,0x05));
397 5 gv_time_data[5] = bcd2bin(i2c_pkt_read(0xd0,0x06));
398 5 }
399 4 }
400 3 }
401 2 }
402 1 }
403
404 //===============================================================================
405 //
406 //===============================================================================
407 void LBA_read(u8 hddIndex)
408 {
409 1 xdata u8 ch0,ch1,ch2,ch3;
410 1 xdata u8 offset = (hddIndex)?0x21:0x25;// Current Writting LBA updated every one second
411 1
412 1 gv_WCurrent_LBA[hddIndex] = 0;
413 1 ch0 = i2c_pkt_read(0xd0,offset+0);
414 1 ch1 = i2c_pkt_read(0xd0,offset+1);
415 1 ch2 = i2c_pkt_read(0xd0,offset+2);
416 1 ch3 = i2c_pkt_read(0xd0,offset+3);
417 1 gv_WCurrent_LBA[hddIndex] =
418 1 ((((u32)ch3)&0x000000ff)<<24)|
419 1 ((((u32)ch2)&0x000000ff)<<16)|
420 1 ((((u32)ch1)&0x000000ff)<<8)|
421 1 (((u32)ch0)&0x000000ff);
422 1 }
423
424 //===============================================================================
425 //
426 //===============================================================================
C51 COMPILER V7.50 GMENU 12/14/2005 10:05:21 PAGE 8
427 void LBA_write(u8 hddIndex)
428 {
429 1 xdata u32 long_data;
430 1 xdata u8 offset = (hddIndex)?0x21:0x25; // Current Writting LBA updated every one second
431 1
432 1 long_data = gv_WCurrent_LBA[hddIndex];
433 1 i2c_pkt_write(0xd0,offset+0, long_data&0x000000ff); long_data = long_data >> 8;
434 1 i2c_pkt_write(0xd0,offset+1, long_data&0x000000ff); long_data = long_data >> 8;
435 1 i2c_pkt_write(0xd0,offset+2, long_data&0x000000ff); long_data = long_data >> 8;
436 1 i2c_pkt_write(0xd0,offset+3, long_data&0x000000ff);
437 1 }
438
439 //===============================================================================
440 //
441 //===============================================================================
442
443 void HELP_MENUDISP(u8 option)
444 {
445 1 #ifndef NFS_1
446 1 switch(option)
447 1 {
448 2 #ifdef FONT_SC
449 2
450 2 case 0: //1234567890123456789012345678
451 2 osd_printf(19,osdgv_menu_base+12,28,"N (< >), N (ght) BC ");//
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -