📄 winamp_remote_control.h
字号:
#ifndef WINAMPREMOTECONTROL_H
#define WINAMPREMOTECONTROL_H
#include "cc2511_app_ex_lib_headers.h"
typedef struct {
BYTE totalLength;
BYTE state;
BYTE refresh;
UINT8 minutes;
UINT8 seconds;
UINT16 milliseconds;
char pTitle[200];
} WINAMP_DISPLAY_DATA;
#define REMOTE_CONTROL_EP 4
#define REMOTE_DISPLAY_EP 4
#define REMOTE_CONTROL_FIFO &USBF4
#define REMOTE_DISPLAY_FIFO &USBF4
#define DONGLE_CMD_PREVIOUS_TRACK 0
#define DONGLE_CMD_PLAY 1
#define DONGLE_CMD_PAUSE 2
#define DONGLE_CMD_STOP 3
#define DONGLE_CMD_NEXT_TRACK 4
#define DONGLE_CMD_VOLUMEUP 5
#define DONGLE_CMD_VOLUMEDOWN 6
#define DONGLE_CMD_FFWD5S 7
#define DONGLE_CMD_REW5S 8
#define DONGLE_SET_REPEAT 9
#define DONGLE_SET_SHUFFLE 10
#define DONGLE_SET_VOLUME 11
#define DONGLE_CMD_NONE 255
#define WDD_STATE_PLAYING_BM 0x01
#define WDD_STATE_PAUSED_BM 0x02
#define WDD_STATE_SHUFFLE_BM 0x04
#define WDD_REFRESH_PLAY_STATE_BM 0x01
#define WDD_REFRESH_SHUFFLE_STATE_BM 0x02
#define WDD_REFRESH_TIME_BM 0x04
#define WDD_REFRESH_TITLE_BM 0x08
#define WDD_REFRESH_SEQUENCE_NR 0xF0
extern WINAMP_DISPLAY_DATA __xdata waDispData;
extern BOOL __xdata waDispDataValid;
typedef struct {
BYTE command;
BYTE value;
} WINAMP_CONTROL_DATA;
typedef struct {
BOOL gotFirstWaDispData;
BOOL refreshTime;
BOOL refreshVolume;
BOOL refreshState;
BOOL refreshTitle;
BOOL refreshShuffle;
UINT8 scrollPos;
UINT8 maxScrollPos;
UINT8 volume;
BYTE dispDataState;
BYTE ctrlDataState;
} REMOTE_CONTROL_DATA;
extern REMOTE_CONTROL_DATA __xdata rcData;
void rcInit(void);
void usbArmOutEndpoint(UINT8 index);
BOOL usbReadDisplayData(void);
BOOL usbWriteControlData(WINAMP_CONTROL_DATA __xdata *pWaCtrlData);
void rcProcessTitle(void);
void rcInit(void);
void rcScrollTitleCallback(void);
void rcPollDispDataCallback(void);
#include "ctrl_handler.h"
#include "time_handler.h"
#include "disp_handler.h"
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -