⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 user_main.lst

📁 智原mp3 SDK 开发包 与巨力 有mp3 wma ogg decoder
💻 LST
📖 第 1 页 / 共 2 页
字号:
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 + -