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

📄 user_main.lst

📁 智原mp3 SDK 开发包 与巨力 有mp3 wma ogg decoder
💻 LST
📖 第 1 页 / 共 2 页
字号:
 163          void event_init_startup(void);
 164          void event_usb_cable_out(void)
 165          {
 166   1      
 167   1      }
 168          
 169          void event_usb_cable_in(void)
 170          {
 171   1              //usb_online();
 172   1              //screen_map(SCREEN_USB);
 173   1              api_vLoad(Code_USER13,1);
 174   1      }                                       
 175          
 176          void event_quarter_sec(void)
C51 COMPILER V7.50   USER_MAIN                                                             09/05/2008 14:57:48 PAGE 4   

 177          {
 178   1              if(curr_screen->id == SCREEN_PICTURE && tUserPreference.Play_mode == 1) 
 179   1              {                       
 180   2                      if((pic_count++>=tUserPreference.Play_speed*4) && (eSysState == STATE_IDLE))
 181   2                      {
 182   3                              key_process(KEY(NEXT));
 183   3                              pic_count = 0;
 184   3                      }               
 185   2              }
 186   1              
 187   1              /*
 188   1              if(screen_level!=SCREEN_LEVEL_USB_ON)
 189   1              {
 190   1                      if(usb_plug)
 191   1                      {
 192   1                              ui_show_charge1();              
 193   1                      }                                               
 194   1              }
 195   1              else
 196   1              {
 197   1                      ui_show_charge();       
 198   1              }
 199   1              */
 200   1              
 201   1              //if(batt_count++ > 6 )
 202   1              //{
 203   1              //      batt_count = 0;
 204   1              //      if(!usb_plug)
 205   1              //              ui_show_batt(); 
 206   1              //}
 207   1      
 208   1              if(api_u8GetBatteryRemain() <= BATTERY_LEVEL_20)
 209   1              {
 210   2                      low_batt_count++;
 211   2              }       
 212   1              else 
 213   1              {
 214   2                      low_batt_count = 0;
 215   2              }       
 216   1              if(low_batt_count==6) //shut down
 217   1              {                           
 218   2                      close_volume();
 219   2                      bResShowPic(LOWPOWER,0,0);
 220   2                      delay(10000);
 221   2                      delay(10000);
 222   2                      vShutDown();            
 223   2              }
 224   1              vKeyTimeOut();
 225   1      }
 226          
 227          void event_dsp_exception(void)
 228          {
 229   1              
 230   1              if(curr_screen->id == SCREEN_PICTURE) {
 231   2                      Print("Fmt err\n");
 232   2                      lcd_set_rw_area(SCREEN_START_X, SCREEN_START_Y, SCREEN_WIDTH, SCREEN_HEIGHT);
 233   2                      key_process(KEY(NEXT));
 234   2              }
 235   1      
 236   1      }
 237          
 238          void event_loop_epilog(void)
C51 COMPILER V7.50   USER_MAIN                                                             09/05/2008 14:57:48 PAGE 5   

 239          {
 240   1              if(curr_screen->id == SCREEN_PICTURE)
 241   1                      if(eSysState == STATE_IDLE && play_statu) {                     
 242   2                                      key_process(KEY(PLAY));
 243   2                                      play_statu = 0;
 244   2                      }
 245   1      }
 246          
 247          void event_init_startup(void)
 248          {
 249   1      #ifndef CONFIG_NAND_LARGEPAGE   
                      /* Nothing, just for demo "api_vGetFreeXdataInfo()" in small page flash. */
                      INT16U free_size, free_start;
                      
                      api_vGetFreeXdataInfo(&free_size, &free_start);
                      free_mem_ptr = free_start;
                      free_mem_end_ptr = free_mem_ptr + free_size;
                      
                      file_entry = (INT32U *)my_malloc(FILE_ENTRY_MAX * sizeof(UINT32));
              #endif  
 259   1              api_vKeyMapRegister(key_map);
 260   1              api_vSetPassCount(30);   
 261   1              api_vBatteryLevelRegister(battery_map);
 262   1              api_bLoadPreferenceData((void*)(&tUserPreference),sizeof(USER_PREFERENCE_T));         
 263   1              
 264   1              if (tUserPreference.u8magic != 0xa5)
 265   1              {
 266   2                      vPreferenceDataInit();
 267   2                      tUserPreference.u8LanguageId =0;
 268   2                      api_bSavePreferenceData(&tUserPreference,sizeof(USER_PREFERENCE_T));
 269   2              }
 270   1              
 271   1              if(tUserPreference.u8LanguageId>4)  
 272   1                      api_bSetLanguage(0);
 273   1              else 
 274   1                      api_bSetLanguage(tUserPreference.u8LanguageId);
 275   1              if(api_bChangeDisk(DISK_SD))
 276   1                      have_sd = 1;
 277   1              else
 278   1                      have_sd = 0;
 279   1                      
 280   1              api_bChangeDisk(DISK_NAND);
 281   1              u16TimerCount = 0;
 282   1              pic_init = 1;    
 283   1              //lcd_init();
 284   1              gui_init();
 285   1              screen_level = SCREEN_LEVEL_MUSIC_STOP;
 286   1              
 287   1              api_vSetJpegScale(160, 128);
 288   1              screen_map(SCREEN_PICTURE);
 289   1      }
 290          
 291          
 292          typedef void event_handler(void);
 293          
 294          static code event_handler *handlers[] = {
 295                  event_init_startup,             // EVENT_INIT_STARTUP
 296                  NULL,                           // EVENT_WATCHDOG_UP
 297                  NULL,                           // EVENT_LOOP_PROLOG
 298                  event_loop_epilog,              // EVENT_LOOP_EPILOG
 299                  NULL,                           // EVENT_OCTANT_SEC
 300                  event_quarter_sec,              // EVENT_QUARTER_SEC
C51 COMPILER V7.50   USER_MAIN                                                             09/05/2008 14:57:48 PAGE 6   

 301                  event_usb_cable_in,             // EVENT_USB_CABLE_IN
 302                  event_usb_cable_out,            // EVENT_USB_CABLE_OUT
 303                  event_usb_status_change,        // EVENT_USB_STATUS_CHANGE
 304                  event_card_change,              // EVENT_CARD_CHANGE
 305                  event_long_button,              // EVENT_LONG_BUTTON
 306                  event_short_button,             // EVENT_SHORT_BUTTON
 307                  event_button_release,           // EVENT_BUTTON_RELEASE
 308                  event_dsp_exception,            // EVENT_DSP_EXCEPTION
 309          };
 310          
 311          void user_main(UINT8 event, UINT8 argv)
 312          {
 313   1              event_argv = argv;
 314   1              event -= 0x80;
 315   1      
 316   1              if(handlers[event])
 317   1                      (*handlers[event])();
 318   1      }
 319          


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    545    ----
   CONSTANT SIZE    =    101    ----
   XDATA SIZE       =      4    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =   ----    ----
   IDATA SIZE       =   ----    ----
   BIT SIZE         =   ----    ----
END OF MODULE INFORMATION.


C51 COMPILATION COMPLETE.  0 WARNING(S),  0 ERROR(S)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -