📄 comm.h
字号:
#ifndef __COMM__H
#define __COMM__H
#define uint8 unsigned char
#define uint16 unsigned int
#define uint32 unsigned long
#define uchar unsigned char
#define uint unsigned int
#define ulong unsigned long
#define BOOL unsigned char
#define TRUE 1
#define FALSE 0
extern uchar LcdFlag;
#define bUpdate1 _BV(0) //LCD第一行更新标志
#define bUpdate2 _BV(1)
#define bUpdate3 _BV(2)
#define bUpdate4 _BV(3) //LCD第四行更新标志
extern uchar BUFFER[512];
extern uchar DispBuff[6][84];
extern uchar InverseLine; //反色显示的行(1-4)
extern uint BytesPerSector;
extern uint SectorsPerCluster;
extern uchar WorkFlag;
extern uchar vol;
#define bReadOvr _BV(0) //读文件完成
#define bPlayOvr _BV(1) //放音完成
#define bPause _BV(2) //暂停
#define bStop _BV(3) //停止放音
#define bDatRdy _BV(4) //数据准备
#define bHzk12 _BV(5) //1:存在hzk
#define bLrc _BV(6) //1:存在歌词文件
#define bUnicode _BV(7) //存在代码转换表
extern uchar KeyVal;
#define kNull 0
#define kVolUp 1
#define kVolDown 2
#define kPlay 3
#define kNext 4
#define kPrev 5
#define kStop 6
#define kVolUpHold 0x11
#define kVolDownHold 0x12
#define kPlayHold 0x13
#define kNextHold 0x14
#define kPrevHold 0x15
#define kStopHold 0x16
extern uchar TimeFlag;
#define bT1S _BV(0)
#define bT32MS _BV(3)
#define bTkey _BV(4)
#define bLcdUpdate _BV(1)
#define bRtcUpdate _BV(2)
typedef struct{
uchar *pStr; //指向显示的字符串
uchar y;
}LCD_DISP;
typedef struct{
uint year;
uchar month;
uchar day;
uchar hour;
uchar min;
uchar sec;
}TIME;
extern uchar D_x,D_y;
extern LCD_DISP lcd[4];
typedef struct{
uchar first;
uint t_sec; //暂存歌词的时间(秒)
uchar t_ms; //保存32MS计数脉冲
ulong Clust; //歌词文件的当前簇号
uchar so; //缓冲区内的偏移(0-7)
uchar sl; //簇内扇区偏移(0 -- (SectorsPerCluster-1))
uint wl; //扇内偏移(0-15)
//当前文件指针 (fatClustToSect(Clust)+sl)*512+wl*32
uint filelen; //歌词文件的余下的长度
}LYRIC_STRUCT;
typedef union{
ulong Sector; //FAT12&FAT16有效
ulong Clust; //FAT32时有效
}ROOTDIR_INF;
extern ROOTDIR_INF RootDir;
typedef struct{
unsigned char ShortName[12];
unsigned char LongName[40];
unsigned long Clust; //内容的首簇
unsigned long FileLen; //文件长度
unsigned char Type; //文件类型(0:目录.1:MP3 2: WMA 3: MID 4:WAV)
}MENU_CONECT;
extern MENU_CONECT m_c[4];
typedef struct{
unsigned long Clust; //当前目录的簇号
unsigned int Nums; //仅FAT12—FAT16中的根目录区有效
unsigned char Index; //当前的BLOCK中目录项索引
unsigned long Sector; //当前目录所在的扇区号
unsigned char NumSector;
}FIND_FILE_INFO;
extern FIND_FILE_INFO FindInfo;
extern LYRIC_STRUCT lyric;
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -