📄 cdrom_drv.h
字号:
//cdrom_drv.h
#ifndef _CDROM_DRV_H_
#define _CDROM_DRV_H_
#include <absacc.h>
/////////////////////////////////////////////////////////////////
#define CDROM_FILE0 XBYTE[0x7010] //硬盘数据寄存器
#define CDROM_FILE1 XBYTE[0x7011] //错误/特征寄存器
#define CDROM_FILE2 XBYTE[0x7012] //扇区数寄存器
#define CDROM_FILE3 XBYTE[0x7013] //扇区号寄存器
#define CDROM_FILE4 XBYTE[0x7014] //柱面号寄存器L
#define CDROM_FILE5 XBYTE[0x7015] //柱面号寄存器H
#define CDROM_FILE6 XBYTE[0x7016] //驱动器/磁头寄存器
#define CDROM_FILE7 XBYTE[0x7017] //状态/命令寄存器
sbit CD_RST = P5 ^ 0;
sbit CD_INTRQ = P3 ^ 2;
#define BSYMASK 0x80
#define DRDYMASK 0x40
#define DRQMASK 0x08
#define ERRMASK 0x01
#define ILTMASK 0x01
//////////////////////////////////////////////////////////////////////
#define CMD_TESTUNITREADY 0
#define CMD_READTOC 1
#define CMD_MODESENSE 2
#define CMD_MODESELECT 3
#define CMD_PAUSE 4
#define CMD_RESUME 5
#define CMD_STOP 6
#define CMD_START 7
#define CMD_OPEN 8
#define CMD_CLOSE 9
#define CMD_READSUBCH 10
//////////////////////////////////////////////////////////////////////
#define STATUS_TESTUNITREADY 0
#define STATUS_READTOC 1
#define STATUS_PLAYCD 2
#define STATUS_PAUSECD 3
#define STATUS_STOPCD 4
#define STATUS_OPENCD 5
#define STATUS_CLOSECD 6
//////////////////////////////////////////////////////////////////////
#define CDROM_VOLUP 1
#define CDROM_VOLDN 0
typedef struct
{
INT8U u8Track;
INT8U u8Min;
INT8U u8Sec;
}str_cdinfo;
void cdrom_init(void);
void cdrom_task(void);
bit cd_getdata(INT8U *pData, INT8U u8Num);
void cd_setcommand(INT8U u8Command);
void cd_command(INT8U u8Command);
#endif /* _CDROM_DRV_H_ */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -