📄 user_main.lst
字号:
C51 COMPILER V7.50 USER_MAIN 08/18/2008 13:43:43 PAGE 1
C51 COMPILER V7.50, COMPILATION OF MODULE USER_MAIN
OBJECT MODULE PLACED IN ..\output\output_bin\output_mp3\user_main.obj
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE ..\..\code\ap_mp3\src\user_main.c LARGE OPTIMIZE(9,SIZE) BROWSE INCDIR(..\.
-.\..\bsp\include;..\..\code\ap_mp3\src\include;..\..\code\global;..\..\code\include) DEFINE(CONFIG_ASIC,dynamic_load) DE
-BUG OBJECTEXTEND PRINT(..\output\output_bin\output_mp3\user_main.lst) OBJECT(..\output\output_bin\output_mp3\user_main.o
-bj)
line level source
1 /*
2 * user_main.c
3 *
4 * User Code Entry Function
5 *
6 * Copyright (c) FARADAY, All Right Reserved 2006
7 *
8 * Created by: K.J. Lin <kjlin@faraday-tech.com>
9 *
10 */
11 #include <stdio.h>
12 #include "api.h"
13 #include "event.h"
14 #include "lcd.h"
15 #include "key.h"
16 #include "common.h"
17 #include "ap_common.h"
18 #include "display.h"
19 #include "res_show.h"
20 #include "res.h"
21 #include "lrc_parse.h"
22 #include "prefer.h"
23 #include "usb_main.h"
24 #include "mp3_display.h"
25 #include "mp3_main.h"
26 #include "mp3_sub_menu.h"
27 #include "lrc_parser.h"
28 #include "ui_main.h"
29 #include "batt.h"
30 #include "global_user.h"
31 #include "ui_scroll.h"
32
33 static void show_scroll();
34 extern BOOLEAN bDisplayLongFileName;
35 UINT8 cartoon_count=0;
36 INT8U low_batt_count = 0;
37 INT8U batt_count = 0;
38 UINT8 loop_count1 = -1;
39 extern INT8U u8LCDData[];
40 UINT8 show_pos = 0;
41 INT8U u8timee2;
42 INT8U show_time_update = 0;
43
44 #define CONFIG_EVB
45 #define CONFIG_NAND_LARGEPAGE
46
47 #define KEY(name) KEY_##name
48
49 #ifdef CONFIG_EVB // EVB Board
50 code UINT8 key_map[] =
51 {
52 KEY(UNUSED) , KEY(UNUSED) , KEY(PLAY) , KEY(PLAY) ,
C51 COMPILER V7.50 USER_MAIN 08/18/2008 13:43:43 PAGE 2
53 KEY(PLAY) , KEY(PLAY) , KEY(PLAY) , KEY(PLAY) ,
54 KEY(PLAY) , KEY(PREV) , KEY(PREV) , KEY(PREV) ,
55 KEY(PREV) , KEY(PREV) , KEY(PREV) , KEY(NEXT) ,
56 KEY(NEXT) , KEY(NEXT) , KEY(NEXT) , KEY(NEXT) ,
57 KEY(AB_REPEAT), KEY(AB_REPEAT), KEY(AB_REPEAT), KEY(AB_REPEAT),
58 KEY(AB_REPEAT), KEY(MENU) , KEY(MENU) , KEY(MENU) ,
59 KEY(MENU) , KEY(MENU) , KEY(MENU) , KEY(MENU) ,
60 };
61 #else // FPGA Board
code UINT8 key_map[] =
{
KEY(UNUSED) , KEY(UNUSED) , KEY(UNUSED) , KEY(UNUSED) ,
KEY(UNUSED) , KEY(UNUSED) , KEY(UNUSED) , KEY(UNUSED) ,
KEY(UNUSED) , KEY(UNUSED) , KEY(UNUSED) , KEY(MENU) ,
KEY(MENU) , KEY(MENU) , KEY(VOL_DN) , KEY(VOL_DN) ,
KEY(VOL_UP) , KEY(VOL_UP) , KEY(VOL_UP) , KEY(AB_REPEAT),
KEY(AB_REPEAT), KEY(PLAY) , KEY(PLAY) , KEY(PLAY) ,
KEY(STOP) , KEY(STOP) , KEY(STOP) , KEY(NEXT) ,
KEY(NEXT) , KEY(NEXT) , KEY(PREV) , KEY(PREV) ,
};
#endif
74
75 code UINT8 battery_map[] =
76 {
77 BATTERY_LEVEL_1, BATTERY_LEVEL_2, BATTERY_LEVEL_3, BATTERY_LEVEL_4 ,
78 BATTERY_LEVEL_5, BATTERY_LEVEL_6, BATTERY_LEVEL_7, BATTERY_LEVEL_8 ,
79 BATTERY_LEVEL_9, BATTERY_LEVEL_10, BATTERY_LEVEL_11, BATTERY_LEVEL_12,
80 BATTERY_LEVEL_13, BATTERY_LEVEL_14, BATTERY_LEVEL_15, BATTERY_LEVEL_16,
81 BATTERY_LEVEL_17, BATTERY_LEVEL_18, BATTERY_LEVEL_19, BATTERY_LEVEL_20,
82 BATTERY_LEVEL_21, BATTERY_LEVEL_22, BATTERY_LEVEL_23, BATTERY_LEVEL_24,
83 BATTERY_LEVEL_25, BATTERY_LEVEL_26, BATTERY_LEVEL_27, BATTERY_LEVEL_28,
84 BATTERY_LEVEL_29, BATTERY_LEVEL_30, BATTERY_LEVEL_31, BATTERY_LEVEL_32,
85 };
86
87 UINT8 event_argv;
88 UINT8 _flash=0;
89
90 #ifndef CONFIG_NAND_LARGEPAGE
INT16U free_mem_ptr;
INT16U free_mem_end_ptr;
INT32U *file_entry;
void xdata *my_malloc(UINT16 size)
{
void xdata *p;
if(size <= 0 || (free_mem_ptr + size > free_mem_end_ptr))
return 0;
p = (void *)free_mem_ptr;
free_mem_ptr += size;
return p;
}
#endif
108
109
110 void event_short_button(void)
111 {
112 1 key_process(event_argv);
113 1 }
114
C51 COMPILER V7.50 USER_MAIN 08/18/2008 13:43:43 PAGE 3
115 void event_long_button(void)
116 {
117 1 switch(event_argv) {
118 2 case KEY(NEXT):
119 2 case KEY(PREV):
120 2 if(curr_screen->id == SCREEN_MP3)
121 2 event_argv += (KEY_FORWARD - KEY_NEXT);
122 2 break;
123 2 case KEY(VOL_DN):
124 2 case KEY(VOL_UP):
125 2 case KEY(PLAY):
126 2 event_argv += (KEY_LONG_PLAY - KEY_PLAY);
127 2 break;
128 2 case KEY(MENU):
129 2 event_argv += (KEY_LONG_MENU - KEY_MENU);
130 2 break;
131 2 case KEY(AB_REPEAT ):
132 2 event_argv += (KEY_LONG_AB_REPEAT - KEY_AB_REPEAT);
133 2 break;
134 2 default:
135 2 return;
136 2 }
137 1
138 1 key_process(event_argv);
139 1 }
140
141 void event_button_release(void)
142 {
143 1 //Print("Button lease\n");
144 1 key_process(KEY_RELEASE);
145 1 }
146 void event_card_change()
147 {
148 1 if(event_argv==CARD_STATUS_REMOVED) {
149 2 have_sd = 0;
150 2 if(curr_screen->id == SCREEN_MENU)
151 2 mp3_sub_menu();
152 2 if(my_disk == DISK_SD)
153 2 {
154 3 api_bStop();
155 3 if(api_bChangeDisk(DISK_NAND))
156 3 my_disk = DISK_NAND;
157 3 screen_level = SCREEN_LEVEL_MUSIC_STOP;
158 3 eSysState = STATE_IDLE;
159 3 if(curr_screen->id != SCREEN_MENU)
160 3 screen_map(SCREEN_MP3);
161 3 }
162 2 }
163 1 else if(event_argv==CARD_STATUS_INSERTED)
164 1 {
165 2 have_sd = 1;
166 2 if(curr_screen->id == SCREEN_MENU)
167 2 mp3_sub_menu();
168 2 }
169 1 }
170
171
172 void event_usb_status_change(void)
173 {
174 1
175 1 }
176
C51 COMPILER V7.50 USER_MAIN 08/18/2008 13:43:43 PAGE 4
177 void event_init_startup(void);
178
179
180 void event_usb_cable_out(void)
181 {
182 1 }
183
184 void event_usb_cable_in(void)
185 {
186 1 api_vLoad(Code_USER13,1);
187 1 }
188
189 void event_quarter_sec(void)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -