亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? song_task.lst

?? 該源碼是基于atmel公司的89C51SND1C的mp3解決方案
?? LST
?? 第 1 頁 / 共 3 頁
字號:
C51 COMPILER V7.00  SONG_TASK                                                              04/28/2004 09:31:56 PAGE 1   


C51 COMPILER V7.00, COMPILATION OF MODULE SONG_TASK
OBJECT MODULE PLACED IN C:\Documents and Settings\lvxc\桌面\AA\song_task.obj
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE modules\song\song_task.c OPTIMIZE(7,SPEED) BROWSE INCDIR(.\modules\system;.
                    -\;.\;.\lib_refd) DEFINE(KEIL) DEBUG OBJECTEXTEND PRINT(.\song_task.lst) OBJECT(C:\Documents and Settings\lvxc\桌面\AA\so
                    -ng_task.obj)

stmt level    source

   1          /*C**************************************************************************
   2          * NAME:         song_task.c
   3          *----------------------------------------------------------------------------
   4          * Copyright (c) 2003 Atmel.
   5          *----------------------------------------------------------------------------
   6          * RELEASE:      snd1c-refd-nf-4_0_3      
   7          * REVISION:     1.16     
   8          *----------------------------------------------------------------------------
   9          * PURPOSE:          
  10          * This file contains the song task and attached routines
  11          *
  12          * CONFIGURATION
  13          * Three #define must be set in config.h:
  14          *   - PLAYER_PLAY_MODE
  15          *       PLAY_DIR      play selected dir
  16          *       PLAY_DISK     play whole disk including sub-directory
  17          *   - PLAYER_PLAY_START
  18          *       START_PLAY    start playing after power-up
  19          *       START_STOP    do not play after power-up
  20          *   - PLAYER_PLAY_LOOP
  21          *       PLAY_LOOP     loop after last file of dir or disk has been played
  22          *       PLAY_NO_LOOP  no loop after last file of dir or disk has been played
  23          * NOTES:
  24          * Global Variables:
  25          *   - gl_key_press:   bit in bdata space
  26          *   - gl_key:         byte in idata space
  27          *   - gl_mem_failure: bit in bdata space
  28          *****************************************************************************/
  29          
  30          /*_____ I N C L U D E S ____________________________________________________*/
  31          
  32          #include "config.h"                         /* system configuration */
  33          #include "board.h"                          /* board definition */
  34          #include "modules\display\disp.h"           /* display definition */
  35          #include "modules\file\file.h"              /* file definition */
  36          #include "modules\mode\mode_task.h"         /* mode task definition */
  37          #include "modules\display\disp_task.h"      /* display definition */
  38          #include "modules\mem\mem_task.h"           /* memory task definition */
  39          #include "lib_mcu\clock\clock.h"            /* clock definition */
  40          #include "lib_mcu\aud\aud_drv.h"            /* audio driver definition */
  41          #include "lib_mcu\mp3\mp3_drv.h"            /* mp3 driver definition */
  42          #include "song_drv.h"                       /* song driver definition */
  43          #include "song_task.h"                      /* song task definition */
  44          
  45          
  46          /*_____ M A C R O S ________________________________________________________*/
  47          
  48          
  49          /*_____ D E F I N I T I O N ________________________________________________*/
  50          
  51          extern  bdata   bit     gl_key_press;       /* TRUE when a key is decoded */
  52          extern  idata   Byte    gl_key;             /* value of the key pressed */
  53          extern  bdata   bit     gl_mem_failure;     /* memory hardware failure */
C51 COMPILER V7.00  SONG_TASK                                                              04/28/2004 09:31:56 PAGE 2   

  54          
  55          #ifndef REFD                                /* add compatibility with refd/demo */
              #error
              #define disp_end_of_play()
              #endif
  59          
  60          Byte    song_state;                         /* task state */
  61          static  bit     song_loop;                  /* auto replay */
  62          
  63          
  64          /*_____ D E C L A R A T I O N ______________________________________________*/
  65          
  66          
  67          /*F**************************************************************************
  68          * NAME: song_task_init
  69          *----------------------------------------------------------------------------
  70          * PARAMS:
  71          *
  72          * return:
  73          *----------------------------------------------------------------------------
  74          * PURPOSE: 
  75          *   Song playing task initialization
  76          *----------------------------------------------------------------------------
  77          * EXAMPLE:
  78          *----------------------------------------------------------------------------
  79          * NOTE:
  80          *----------------------------------------------------------------------------
  81          * REQUIREMENTS:
  82          *****************************************************************************/
  83          void song_task_init (void)
  84          {
  85   1        song_loop = PLAYER_PLAY_LOOP;             /* default loop playing */
  86   1        song_snd_init();                          /* init sound control */
  87   1        song_state = SONG_START;
  88   1      }
  89          
  90          
  91          /*F**************************************************************************
  92          * NAME: song_task
  93          *----------------------------------------------------------------------------
  94          * PARAMS:
  95          *
  96          * return:
  97          *----------------------------------------------------------------------------
  98          * PURPOSE: 
  99          *   Song playing task
 100          *----------------------------------------------------------------------------
 101          * EXAMPLE:
 102          *----------------------------------------------------------------------------
 103          * NOTE:
 104          *----------------------------------------------------------------------------
 105          * REQUIREMENTS:
 106          *****************************************************************************/
 107          void song_task (void)
 108          {
 109   1      Byte  cpt_data;
 110   1      bit     loop;
 111   1      
 112   1        if (Mp3_frame_request())
 113   1        {
 114   2          cpt_data = 0;
 115   2          do
C51 COMPILER V7.00  SONG_TASK                                                              04/28/2004 09:31:56 PAGE 3   

 116   2          {
 117   3            Mp3_load(Fgetc());                    /* send data while requested */
 118   3            cpt_data++;
 119   3            /* workaround for 320Kbs frame support */
 120   3            if ((cpt_data & 0x40) == 0x40)
 121   3            {
 122   4              Mp3_set_full();
 123   4              Mp3_reset_full();                   /* ack 64 Bytes write */
 124   4              break;
 125   4            }
 126   3            if (gl_mem_failure)
 127   3            { /* hardware failure */
 128   4              song_state = SONG_ERROR;            /* in case of read error */
 129   4              break;
 130   4            }
 131   3          }
 132   2          while (Mp3_frame_request());            /* until frame request */
 133   2      
 134   2          while (Mp3_frame_request())             /* frame request ? */
 135   2          {
 136   3            Mp3_load(Fgetc());                    /* send data while requested */
 137   3            if (gl_mem_failure)
 138   3            { /* hardware failure */
 139   4              song_state = SONG_ERROR;            /* in case of read error */
 140   4              break;
 141   4            }
 142   3          }
 143   2        }
 144   1      
 145   1        switch (song_state)
 146   1        {
 147   2          case SONG_START:
 148   2          {
 149   3            print_mode_song();                    /* select song icon */
 150   3            print_state_blank();                  /* select blank icon */
 151   3            print_screen(SONG_SCREEN);            /* display song screen */
 152   3            print_sound_level();                  /* display volume level */
 153   3            song_state = SONG_INSTALL;
 154   3            break;
 155   3          }
 156   2      
 157   2      
 158   2          case SONG_INSTALL:
 159   2          {
 160   3            if (mem_status() != MEM_BUSY)         /* wait end of memory install */
 161   3            {
 162   4              if (mem_status() == MEM_READY)
 163   4              { /* disk formated */
 164   5                /* this may be changed to retrieve last saved position */
 165   5                if (File_entry_root(FILE_MP3 | FILE_DIR) == OK) /* goto root directory */
 166   5                {
 167   6                  print_file_name();              /* display file name */
 168   6                  #if PLAYER_PLAY_START == START_STOP
 169   6                    song_state = SONG_IDLE;
 170   6                  #else
                            if (File_type() == FILE_DIR)
                            { /* file_type is dir */
                            #if PLAYER_PLAY_MODE == PLAY_DISK
                              song_state = SONG_NEW;      /* enter dir and play */
                            #else
                              song_state = SONG_NEXT;     /* stay in root dir */
                            #endif
C51 COMPILER V7.00  SONG_TASK                                                              04/28/2004 09:31:56 PAGE 4   

                            }
                            else
                            { /* file_type is MP3 */
                              song_state = SONG_INIT;
                            }
                          #endif
 184   6                }
 185   5                else
 186   5                { /* root is empty of song & diretory */
 187   6                  song_state = SONG_NO_SONG;
 188   6                }
 189   5              }
 190   4              else
 191   4              { /* disk not formated */
 192   5                print_state_error();              /* error icon when not formated */
 193   5                if (gl_key_press)                 /* a key is pressed? */
 194   5                {
 195   6                  switch (gl_key)
 196   6                  {
 197   7                    case KEY_MEM:
 198   7                      mem_select_next();          /* select next memory */
 199   7                      song_state = SONG_START;
 200   7                      break;
 201   7      
 202   7                    case KEY_MODE:
 203   7                      mode_set_init();            /* exit from song task */
 204   7                      song_state = SONG_START;
 205   7                      break;
 206   7                  }
 207   6                  gl_key_press = FALSE;           /* ack key usage */
 208   6                }
 209   5                else
 210   5                { /* check card presence */
 211   6                  if (mem_check_card() == KO)
 212   6                  {
 213   7                    mem_select_next();
 214   7                    song_state = SONG_START;      /* card has been unplugged */
 215   7                  }
 216   6                }
 217   5              }
 218   4            }
 219   3            else
 220   3            {
 221   4              if (gl_key_press)                   /* stop key is pressed? */
 222   4              {
 223   5                if (gl_key == KEY_MODE)
 224   5                {
 225   6                  mode_set_init();                /* exit from song task */
 226   6                  song_state = SONG_START;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
在线观看视频一区| 26uuu国产日韩综合| 日韩欧美区一区二| 亚洲日本在线天堂| 麻豆精品国产传媒mv男同 | 极品销魂美女一区二区三区| 粉嫩在线一区二区三区视频| 在线播放欧美女士性生活| 亚洲国产成人一区二区三区| 六月婷婷色综合| 一本久道中文字幕精品亚洲嫩 | 欧美色电影在线| 国产三级久久久| 久88久久88久久久| 欧美日本一道本在线视频| 亚洲日本在线观看| 成人精品视频.| 国产日韩影视精品| 激情综合网av| 欧美一级黄色大片| 婷婷久久综合九色综合绿巨人| 91香蕉视频在线| 国产精品国产三级国产aⅴ中文| 狠狠狠色丁香婷婷综合久久五月| 678五月天丁香亚洲综合网| 伊人开心综合网| 欧美性淫爽ww久久久久无| 亚洲欧洲日产国产综合网| 福利一区在线观看| 日本一区二区三区视频视频| 国产aⅴ综合色| 国产日韩三级在线| 菠萝蜜视频在线观看一区| 国产精品丝袜久久久久久app| 美女一区二区三区| 精品国产百合女同互慰| 久久99国产精品麻豆| 精品理论电影在线观看| 国产原创一区二区| 久久久精品影视| 国产精品 欧美精品| 亚洲国产成人一区二区三区| 99免费精品视频| 一区二区三区中文在线观看| 色婷婷亚洲综合| 亚洲成av人片在线观看| 91精品国产综合久久精品app| 午夜在线成人av| 欧美tickling网站挠脚心| 国产资源在线一区| 国产精品你懂的在线欣赏| 91一区二区在线观看| 亚洲成人一区二区| 精品国内二区三区| 成人午夜免费视频| 亚洲一卡二卡三卡四卡| 日韩午夜在线观看视频| 午夜不卡av在线| 欧美三电影在线| 久久超级碰视频| 日韩美女视频19| 欧美一区二区在线视频| 国产成人免费视频精品含羞草妖精 | 91国产免费观看| 蜜桃一区二区三区在线观看| 国产日韩精品一区二区三区 | 日韩精品一区二区三区老鸭窝| 久久se这里有精品| 中文字幕视频一区二区三区久| 在线欧美日韩精品| 国产激情视频一区二区三区欧美| 亚洲精品你懂的| 337p粉嫩大胆色噜噜噜噜亚洲| 91免费观看在线| 久久国产精品第一页| 亚洲精品中文在线观看| 精品久久久久久久久久久久久久久 | 亚洲成a人片在线观看中文| 日韩精品一区二区三区三区免费| av一二三不卡影片| 日韩成人精品视频| 国产精品白丝在线| 精品免费日韩av| 欧美精选一区二区| 99久久国产综合精品色伊| 毛片不卡一区二区| 亚洲国产欧美另类丝袜| 国产亚洲欧美一级| 91精品国产麻豆国产自产在线 | 婷婷国产v国产偷v亚洲高清| 中文字幕精品综合| 久久看人人爽人人| 欧美一区二区三区免费大片 | 91在线免费看| 国产一区二区三区免费播放| 视频在线观看一区二区三区| 亚洲特黄一级片| 亚洲国产精品t66y| 亚洲精品一区二区三区99| 欧美精品九九99久久| 色悠久久久久综合欧美99| 国产不卡一区视频| 韩国精品在线观看| 精品一区二区三区蜜桃| 青青草视频一区| 水野朝阳av一区二区三区| 亚洲免费电影在线| 亚洲免费看黄网站| 亚洲图片激情小说| 国产精品高潮久久久久无| 国产日韩欧美一区二区三区乱码 | 一区二区三区不卡视频在线观看| 中文一区二区完整视频在线观看| 国产欧美综合在线观看第十页| 欧美精品一区二区三区久久久| 欧美tickling网站挠脚心| 精品国产百合女同互慰| 久久综合网色—综合色88| 26uuu亚洲| 欧美经典三级视频一区二区三区| 国产欧美一区二区三区在线看蜜臀 | 欧美一区二区播放| 7777精品伊人久久久大香线蕉的 | 国产亚洲成aⅴ人片在线观看| 精品国产1区二区| 久久久www成人免费无遮挡大片| 国产欧美日韩激情| 亚洲丝袜美腿综合| 亚洲v日本v欧美v久久精品| 五月婷婷欧美视频| 蜜桃视频第一区免费观看| 国产精品影视天天线| 成人精品亚洲人成在线| 91在线精品秘密一区二区| 一本到一区二区三区| 欧洲中文字幕精品| 日韩午夜小视频| 久久久久99精品一区| 亚洲视频免费在线观看| 图片区小说区区亚洲影院| 久久精品久久综合| 国产东北露脸精品视频| 在线观看日韩国产| 日韩一区二区三区精品视频 | www激情久久| 久久精品亚洲麻豆av一区二区 | 欧美绝品在线观看成人午夜影视| 欧美一区二区三区免费视频| 国产清纯白嫩初高生在线观看91 | 国产精品一区2区| 色悠悠亚洲一区二区| 欧美成人三级电影在线| 中文字幕在线不卡一区| 亚洲成人一二三| 风间由美性色一区二区三区| 欧美日韩一区二区三区视频| 精品奇米国产一区二区三区| 中文字幕一区视频| 美女一区二区视频| 色婷婷久久久亚洲一区二区三区| 日韩一区二区三区视频| 亚洲人成小说网站色在线| 蜜臀久久99精品久久久久宅男| 成人一级视频在线观看| 91精品国产一区二区人妖| 亚洲少妇最新在线视频| 久久99国产精品免费网站| 欧美亚洲另类激情小说| 国产拍揄自揄精品视频麻豆| 日韩综合在线视频| 一本大道久久a久久综合| 日韩女优毛片在线| 亚洲午夜av在线| 99久久婷婷国产综合精品电影| 日韩精品一区二区三区视频播放 | 91视频一区二区三区| 日韩精品资源二区在线| 亚洲免费色视频| 成人一区二区三区中文字幕| 欧美成人性战久久| 视频一区免费在线观看| 91蜜桃网址入口| 国产精品色哟哟| 国产精品一区二区在线看| 91精品国产一区二区| 亚州成人在线电影| 色欧美乱欧美15图片| 国产精品久久久久久久久快鸭 | 亚洲人成人一区二区在线观看| 激情五月婷婷综合| 日韩精品专区在线影院重磅| 日本vs亚洲vs韩国一区三区二区| 欧美三区在线视频| 亚洲成a人片综合在线| 在线区一区二视频| 亚洲高清免费视频| 欧美丝袜丝交足nylons| 亚洲国产视频一区二区| 欧美日韩一区成人| 肉丝袜脚交视频一区二区|