song_task.h
来自「MP3设计源代码 使用atmel的单片机」· C头文件 代码 · 共 97 行
H
97 行
/*H**************************************************************************
* NAME: song_task.h
*----------------------------------------------------------------------------
* Copyright (c) 2002 Atmel.
*----------------------------------------------------------------------------
* RELEASE: snd1c-demo-df-sd-3_0_0
* REVISION: 1.7
*----------------------------------------------------------------------------
* PURPOSE:
* This file contains the song task definition
*****************************************************************************/
#ifndef _SONG_TASK_H_
#define _SONG_TASK_H_
/*_____ I N C L U D E S ____________________________________________________*/
/*_____ M A C R O S ________________________________________________________*/
#ifndef PLAYER_PLAY_MODE
#error PLAYER_PLAY_MODE must be defined in config.h
#define PLAYER_PLAY_MODE PLAY_DIR
#endif
#ifndef PLAYER_PLAY_START
#error PLAYER_PLAY_START must be defined in config.h
#define PLAYER_PLAY_START START_STOP
#endif
#ifndef PLAYER_PLAY_LOOP
#error PLAYER_PLAY_LOOP must be defined in config.h
#define PLAYER_PLAY_LOOP PLAY_NO_LOOP
#endif
/*----- Mode Values -----*/
#define PLAY_DIR 0
#define PLAY_DISK 1
/*----- Start Values -----*/
#define START_STOP 0
#define START_PLAY 1
/*------Loop Default Values -----*/
#define PLAY_LOOP TRUE
#define PLAY_NO_LOOP FALSE
/*----- Task states -----*/
#define SONG_START 0
#define SONG_INSTALL 1
#define SONG_IDLE 2
#define SONG_INIT 3
#define SONG_PLAY 4
#define SONG_PLL 5
#define SONG_PAUSE 6
#define SONG_NEW 7
#define SONG_STOP 8
#define SONG_NO_SONG 9
#define SONG_NEXT 10
#define SONG_PLAY_A_B 11
#define SONG_PLAY_A_B_MUTE 12
#define SONG_DETECT_REPEAT_KEY_NEXT 13
#define SONG_DETECT_REPEAT_KEY_PREV 14
#define SONG_DETECT_REPEAT_KEY_END 15
#define SONG_PLAY_REPEAT_KEY 16
#define SONG_DELETE 17
#define SONG_ERROR 18
/* Time constant for repeat A/B mode */
#define SONG_A_B_MUTE_NB (250 / SCHEDULER_TICK)
/* Definition for repeat A/B mode */
#define SONG_PRE_SAMPLING (256) /* 1024 / 256 -> 1s / 4 -> 250 ms*/
/* Fast forward and fast rewind time unit (in s) */
#define SONG_REPEAT_TIME_FFW 2 /* 2 seconds fast forward */
#define SONG_REPEAT_TIME_FRW 3 /* 3 seconds fast forward */
/* Total frame size for a file seek, that is x second unit */
#define SONG_SKEEP_FRAME_FFW SONG_REPEAT_TIME_FFW * 1024
#define SONG_SKEEP_FRAME_FRW SONG_REPEAT_TIME_FRW * 1024
/* Constant for repeat key behavour in ms */
#define SONG_UNMUTE_PLAY_DURATION (300 / SCHEDULER_TICK)
#define SONG_MUTE_DURATION (30 / SCHEDULER_TICK)
#define SONG_START_TIME_VOL (10 / SCHEDULER_TICK)
/*_____ D E F I N I T I O N ________________________________________________*/
/*_____ D E C L A R A T I O N ______________________________________________*/
void song_task_init (void);
void song_task (void);
#endif /* _SONG_TASK_H_ */
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?