📄 ipod.h
字号:
//DVD PLAYER B/E PROGRRAM
//ipod.h
//For Integrate the IPOD Accessory Protocol Interface.
//based on M32R CPU & MR32R V.3.50 Release0.
//Willix,08-23-07
//
#ifndef _IPOD_H_
#define _IPOD_H_
typedef enum{
SIR_DUMMY,
SIR_PLAY_PAUSE,
SIR_VOL_UP,
SIR_VOL_DOWN,
SIR_NEXT_TRACK,
SIR_PREV_TRACK,
SIR_NEXT_ALBUM,
SIR_PREV_ALBUM,
SIR_STOP,
SIR_PLAY_RESUME,
SIR_PAUSE,
SIR_MUTE_TOGGLE,
SIR_NEXT_CHAPTER,
SIR_PREV_CHAPTER,
SIR_NEXT_PLAYLIST,
SIR_PREV_PLAYLIST,
SIR_SHUFFLE,
SIR_REPEAT,
SIR_PON,
SIR_POFF,
SIR_BL30,
SIR_FF,
SIR_FB,
SIR_MENU,
SIR_SELECT,
SIR_ARROW_UP,
SIR_ARROW_DOWN,
SIR_UNKNOWN
}SIR_INDEX;
typedef enum{
AIR_DUMMY, //0X0000, Reserved
AIR_ACK, //0x0001, Acknowledge
AIR_GET_CUR_CHAPTER, //0X0002, Reserved
AIR_RET_CUR_CHAPTER, //0x0003, Acknowledge
AIR_SET_CUR_CHAPTER, //0x0004,
AIR_GET_CUR_STATUS, //0x0005,
AIR_RET_CIR_STATUS, //0x0006
AIR_GET_CUR_TNAME, //0x0007
AIR_RET_CUR_TNAME, //0x0008
AIR_GET_AB_SPEED, //0x0009
AIR_RET_AB_SPEED, //0x000A
AIR_SET_AB_SPEED, //0x000B
AIR_GET_INDEX_TRACK, //0x000C
AIR_RET_INDEX_TRACK, //0x000D
AIR_RESERVED0, //0X000E
AIR_RESERVED1,
AIR_RESERVED2,
AIR_RESERVED3, //0X0011
AIR_REQ_PRC_VER, //0X0012
AIR_RET_PRC_VER,
AIR_REQ_IPOD_NAME,
AIR_RET_IPOD_NAME,
AIR_RESET_DB,
AIR_SELECT_DB,
AIR_GET_NUM_CATE,
AIR_RET_NUM_CATE,
AIR_GET_CATE_DB,
AIR_RET_CATE_DB,
AIR_GET_PLAY_STS,
AIR_RET_PLAY_STS, //0X001D
AIR_GET_TRACK_INDEX,
AIR_RET_TRACK_INDEX,
AIR_GET_TRACK_NAME, //0X0020
AIR_RET_TRACK_NAME,
AIR_GET_TRACK_ARTIST,
AIR_RET_TRACK_ARTIST,
AIR_GET_TRACK_ALBUM,
AIR_RET_TRACK_ALBUM,
AIR_SET_CHG_NOTIFI,
AIR_GET_CHG_NOTIFI,
AIR_PLAY_CUR_SELECT,
AIR_PLAY_CONTROL,
AIR_RESERVED4,
AIR_RESERVED5,
AIR_GET_SHUFFLE,
AIR_RET_SHUFFLE,
AIR_SET_SHUFFLE,
AIR_GET_REPEAT,
AIR_RET_REPEAT,
AIR_SET_REPEAT,
AIR_SET_DISP_IMAGE,
AIR_GET_MONO_IMAGE,
AIR_RET_MONO_IMAGE,
AIR_GET_PLAY_TRACK,
AIR_RET_PLAY_TRACK,
AIR_SET_PLAY_TRACK,
AIR_SELECT_SORT_DB,
AIR_GET_COL_IMAGE,
AIR_RET_COL_IMAGE,
AIR_RESERVED6
}AIR_INDEX;
//PLAY CONTROL
#define IPOD_CON_PAUSE 0X01
#define IPOD_CON_STOP 0X02
#define IPOD_CON_NEXT 0X03
#define IPOD_CON_PREV 0X04
#define IPOD_CON_FF 0X05
#define IPOD_CON_FS 0X06
#define IPOD_CON_FO 0X07
#define IPOD_CON_NCH 0X08
#define IPOD_CON_PCH 0X09
//IPOD RANDOM
#define IPOD_RANDOM_OFF 0X00
#define IPOD_RANDOM_ONE 0x01
#define IPOD_RANDOM_ALBUM 0X02
//IPOD REPEAT
#define IPOD_REPEAT_OFF 0X00
#define IPOD_REPEAT_ONE 0x01
#define IPOD_REPEAT_ALL 0x02
//IPOD CATEGORY
typedef struct{
B file_name[32];
UB category;
}IPOD_FILE_INFO;
typedef struct{
void * up;
void * down;
UB category;
UB layer;
B *name;
}IPOD_NODE_INFO;
#define NUM_IPOD_DISP 6
#define NUM_IPOD_SAVE 600
#define IPOD_DB_ADDRESS 0X00B00000
#define IPOD_PB_ADDRESS 0X00C00000
extern IPOD_FILE_INFO ipod_pb_disp_info[NUM_IPOD_DISP];
extern IPOD_FILE_INFO ipod_db_disp_info[NUM_IPOD_DISP];
extern UB ipod_bank;
extern UB ipod_db_position;
extern UB ipod_pb_position;
#define NUM_IPOD_NODE 0x1
#define IPOD_PREFIX1 0XFF
#define IPOD_PREFIX2 0X55
#define UART_BUFF_SIZE 50
extern UB uart_tr_buff[UART_BUFF_SIZE];
extern UB uart_rc_buff[UART_BUFF_SIZE];
#define IPOD_GEN_MODE 0X00 //GENERAL MODE 0X00
#define IPOD_MIC_MODE 0X01 //Microphone 0x01
#define IPOD_SIR_MODE 0X02 //Simple Remote 0x02
#define IPOD_DIR_MODE 0X03 //Display Remote 0x03
#define IPOD_AIR_MODE 0X04 //Advanced iPod Remote(AiR) 0x04
#define IPOD_RFT_MODE 0X05 //RF Transmitter Lingo 0x05
//ipod display
#define IPOD_DISP_MODE00 0X00
#define IPOD_DISP_MODE01 0X01
#define IPOD_DISP_MODE02 0X02
#define IPOD_DISP_MODE03 0X03
#define IPOD_DISP_MODE04 0X04
#define IPOD_DISP_MODE05 0X05
//ipod layer
#define IPOD_LAYER_MAIN 0X00
#define IPOD_LAYER_MUSIC 0X01
#define IPOD_LAYER_GENRE 0X02
#define IPOD_LAYER_ARTIST 0X03
#define IPOD_LAYER_ALBUM 0X04
#define IPOD_LAYER_TRACK 0X05
//IPOD HIER
#define IPOD_HIER_1ST 0X01
#define IPOD_HIER_2ND 0X02
#define IPOD_HIER_3RD 0X03
#define IPOD_HIER_4TH 0X04
#define IPOD_HIER_5TH 0X05
#define IPOD_HIER_6TH 0X06
//CATEGORY
#define IPOD_CATE_DUMMY 0X00
#define IPOD_CATE_PLAYLIST 0X01
#define IPOD_CATE_ARTIST 0X02
#define IPOD_CATE_ALBUM 0X03
#define IPOD_CATE_GENRE 0X04
#define IPOD_CATE_TRACK 0X05
#define IPOD_CATE_COMPOSER 0X06
#define IPOD_CATE_AUDIOBOOK 0X07
#define IPOD_CATE_PODCAST 0X08
#define IPOD_CATE_RESERVED 0X09
//
#define IPOD_BANK_LEFT 0X00
#define IPOD_BANK_RIGHT 0X01
//
UB IPOD_init(void);
void IPOD_msg_key(UB key);
void IPOD_get_msg(void);
void IPOD_cyclic(void);
UB IPOD_key_enter(void);
UB IPOD_Key_return(void);
UB IPOD_key_menu(void);
UB IPOD_Key_arrow_up(void);
UB IPOD_Key_arrow_down(void);
UB IPOD_Key_arrow_left(void);
UB IPOD_Key_arrow_right(void);
UB IPOD_key_stop(void);
UB IPOD_key_play(void);
UB IPOD_key_pause(void);
UB IPOD_key_prev(void);
UB IPOD_key_next(void);
UB IPOD_key_BL(void);
UB IPOD_key_pon(void);
UB IPOD_key_poff(void);
UB IPOD_key_ff(void);
UB IPOD_key_fb(void);
UB IPOD_key_random(void);
UB IPOD_key_intro(void);
UB IPOD_key_repeat(void);
UB IPOD_key_mode(void);
UB IPOD_key_vup(void);
UB IPOD_key_vdown(void);
void IPOD_redisp(void);
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -