📄 display.lst
字号:
C51 COMPILER V7.50 DISPLAY 07/17/2008 14:38:50 PAGE 1
C51 COMPILER V7.50, COMPILATION OF MODULE DISPLAY
OBJECT MODULE PLACED IN ..\output\display.obj
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE ..\..\common\display.c LARGE OPTIMIZE(9,SIZE) BROWSE INCDIR(..\..\..\bsp\in
-clude;..\src\include;..\..\include) DEFINE(CONFIG_ASIC) DEBUG OBJECTEXTEND PRINT(.\display.lst) OBJECT(..\output\display
-.obj)
line level source
1 /*******************
2 * display.c
3 *******************/
4
5 #include <string.h>
6 #include "api.h"
*** WARNING C318 IN LINE 6 OF ..\..\common\display.c: can't open file 'api.h'
7 #include "lcd.h"
*** ERROR C129 IN LINE 102 OF ..\..\INCLUDE\LCD.H: missing ';' before 'lcd_max_str'
8 #include "common.h"
*** WARNING C318 IN LINE 5 OF ..\..\INCLUDE\COMMON.H: can't open file 'types.h'
9 #include "display.h"
*** WARNING C318 IN LINE 4 OF ..\..\INCLUDE\DISPLAY.H: can't open file 'types.h'
10
11 void gfx_bg(void)
12 {
13 UINT8 i;
14
15 gfx_set_bg(COLOR_WHITE);
16
17 lcd_set_rw_area(SCREEN_START_X,SCREEN_START_Y,SCREEN_WIDTH,SCREEN_HEIGHT);
18
19 for(i = 0; i < SCREEN_HEIGHT; i++)
20 lcd_put_data((UINT16)bg_pixel, sizeof(bg_pixel));
21 }
22
23 void gfx_bg_rectangle(UINT8 x, UINT8 y, UINT8 w, UINT8 h)
24 {
25 lcd_set_rw_area(x, y, w, h);
26
27 while(h--)
28 lcd_put_data((UINT16)bg_pixel, w << 1);
29 }
30
31 void gfx_set_bg(UINT16 color)
32 {
33 UINT8 i;
34 static UINT16 curr_color;
35
36 if(curr_color != color)
37 curr_color = color;
38
39 /* Init background pixel */
40 for(i = 0; i < SCREEN_WIDTH; i++)
41 bg_pixel[i] = color;
42 }
43
44
45 void gfx_filename(UINT8 x, UINT8 y)
46 {
47 if(*(UINT16 xdata *)curr_finfo.pu8LongFileName == 0) {
48 get_short_name(&curr_finfo, _buf);
49 lcd_puts(x, y, _buf, FONTSIZE_HYPER);
C51 COMPILER V7.50 DISPLAY 07/17/2008 14:38:50 PAGE 2
50 }
51 else {
52 get_long_name(&curr_finfo, _buf);
53 lcd_puts_unicode(x, y, (UINT16 *)_buf, FONTSIZE_HYPER);
54 }
55 }
56
57 #if 0
void vScollDataUpdate(INT8U *buf)
{
if(!bDisplayLongFileName)
u8ScrollLen = strlen(u8ScrollData);
else
{
INT8U i;
u8ScrollLen = u16GetUniStringLength(buf);
for(i=0; i<u8ScrollLen; i++)
u8ScrollData[i] = buf[i];
u8ScrollData[i] = 0x20; u8ScrollData[i+1] = 0x00;
u8ScrollLen += 2;
}
u8ScrollPos = 0;
bNeedScroll = TRUE;
vLcd_ScollDataUpdate();
}
//--------------------------------------------------------------------------
void vLcd_SongName()
{
if(FALSE == api_bGetCurrMusicInfo(&cMusic))
return;
bDisplayLongFileName = FALSE;
if(cMusic.pu8Title[0] != 0 || cMusic.pu8Artist[0] != 0 || cMusic.pu8Album[0] != 0)
{
my_sprintf(u8ScrollData, "%s %s %s ", cMusic.pu8Title, cMusic.pu8Artist, cMusic.pu8Album);
}
else
{
if(cMusic.pu8LongFileName[0] == 0 && cMusic.pu8LongFileName[1] == 0) {
my_sprintf(u8ScrollData, "%s.%s", cMusic.pu8FileName, cMusic.pu8FileExt);
}
else
bDisplayLongFileName = TRUE;
}
vScollDataUpdate(cMusic.pu8LongFileName);
}
//--------------------------------------------------------------------------
void vLcd_ScollDataUpdate(void)
{
INT8U i,j;
INT16U u16unicode;
if(!bNeedScroll)
return;
for(i=0, j=u8ScrollPos; i<SCREEN_WIDTH; i++)
{
if(i >= u8ScrollLen)
C51 COMPILER V7.50 DISPLAY 07/17/2008 14:38:50 PAGE 3
break;
u8LCDData[i] = u8ScrollData[j];
if(++j >= u8ScrollLen)
j = 0;
}
u8LCDData[i] = u8LCDData[i+1] = 0;
//vLcdSetPosition(LCD_ADDR_4LINE_START);
if(bDisplayLongFileName)
{
/*
for(j=0; j<SCREEN_WIDTH; )
{
u16unicode = u8LCDData[j++];
u16unicode += (u8LCDData[j++]<<8);
if(u16unicode == 0)
break;
if(api_bGetUniFont16x16BMP(u16unicode))
vLcdPut16x16Char();
}
*/
lcd_puts(0, 95, u8LCDData, FONTSIZE_HYPER);
//j = u8ScrollLen;
}
else
{
/*
vLcdOutString(u8LCDData, 16);
j = 0;
for(i=0; i<u8ScrollLen; i++)
{
if(u8ScrollData[i] >= 0x80)
i++;
j+=2;
}
*/
lcd_puts_unicode(x, y, (UINT16 *)_buf, FONTSIZE_HYPER);
}
if(SCREEN_WIDTH >= j)
bNeedScroll = FALSE;
u8ScrollPos++;
if(bDisplayLongFileName || (u8LCDData[0] >= 0x80))
u8ScrollPos++;
if(u8ScrollPos >= u8ScrollLen)
u8ScrollPos = 0;
}
#endif
C51 COMPILATION COMPLETE. 3 WARNING(S), 1 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -