亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? ata_if.h

?? 使用AVR單片機控制MP3播放芯片的源代碼
?? H
字號:

//*****************************************************************
//
// File Name	: 'ata_if.h'
// Title			: IDE-ATA interface driver
// Author		: Pascal Stang
// Date			: 11/22/2000
// Version		: 0.1
// Target MCU	: ATmega103
// Editor Tabs	: 3
//
//*****************************************************************


// constants
#define CTRL     0
#define CMD      1
#define DRIVE0   0

#define STANDBY	0
#define SLEEP	1
#define IDLE	2

// ATA status register bits
#define ATA_SR_BSY			0x80
#define ATA_SR_DRDY		0x40
#define ATA_SR_DF			0x20
#define ATA_SR_DSC			0x10
#define ATA_SR_DRQ			0x08
#define ATA_SR_CORR		0x04
#define ATA_SR_IDX			0x02
#define ATA_SR_ERR			0x01

// ATA error register bits
#define ATA_ER_UNC			0x40
#define ATA_ER_MC			0x20
#define ATA_ER_IDNF		0x10
#define ATA_ER_MCR			0x08
#define ATA_ER_ABRT		0x04
#define ATA_ER_TK0NF		0x02
#define ATA_ER_AMNF		0x01

// ATA registers
#define ATA_REG_BASE			0x8000
#define ATA_REG_DATAL		0x00
#define ATA_REG_ERROR		0x01
#define ATA_REG_SECCOUNT	0x02
#define ATA_REG_STARTSEC	0x03
#define ATA_REG_CYLLO		0x04
#define ATA_REG_CYLHI		0x05
#define ATA_REG_HDDEVSEL	0x06
#define ATA_REG_CMDSTATUS1	0x07
#define ATA_REG_CMDSTATUS2	0x08
#define ATA_REG_ACTSTATUS	0x09

#define ATA_REG_DATAH		0x10

// ATA commands
#define ATA_CMD_READ				0x20
#define ATA_CMD_READNR			0x21
#define ATA_CMD_WRITE			0x30
#define ATA_CMD_WRITENR			0x31
#define ATA_CMD_IDENTIFY		0xEC
#define ATA_CMD_RECALIBRATE	0x10
#define ATA_CMD_SPINDOWN		0xE0
#define ATA_CMD_SPINUP			0xE1

// ATA CHS disk parameters
//#define ATA_DISKPARM_CLYS		1011
//#define ATA_DISKPARM_HEADS		15
//#define ATA_DISKPARM_SECTORS	22
#define ATA_DISKPARM_CLYS		0x03A6
#define ATA_DISKPARM_HEADS		0x10
#define ATA_DISKPARM_SECTORS	0x11


//----------------------------------------------------------------------------
// Typedefs
//----------------------------------------------------------------------------

/*
typedef struct 
{
  unsigned char Heads; 
  unsigned int Tracks;
  unsigned int SectorsPerTrack;
  char Model[41];
} tdefDriveInfo;
*/


// Prototypes

void ataInit(void);
u08  ataReadByte(u08 reg);
void ataWriteByte(u08 reg, u08 data);
void ataShowRegisters(unsigned char DriveNo);
u08  ataSWReset(void);
void ataDiskErr(void);
void ataPrintSector( u08 *Buffer);
void ataReadDataBuffer(u08 *Buffer, u16 numBytes);
void ataWriteDataBuffer(u08 *Buffer, u16 numBytes);
u08 ataStatusWait(u08 mask, u08 waitStatus);


unsigned char ataReadSectors(		unsigned char Drive, 
											unsigned char Head, 
											unsigned int Track,
											unsigned char Sector,
											unsigned int numsectors,
											unsigned char *Buffer);

unsigned char ataWriteSectors(	unsigned char Drive, 
											unsigned char Head, 
											unsigned int Track,
											unsigned char Sector,
											unsigned int numsectors,
											unsigned char *Buffer);


unsigned char ataReadSectorsLBA(	unsigned char Drive, 
											unsigned long lba,
											unsigned int numsectors,
                            		unsigned char *Buffer);

unsigned char ataWriteSectorsLBA(	unsigned char Drive, 
												unsigned long lba,
												unsigned int numsectors,
                            			unsigned char *Buffer);

unsigned char ataReadSectorsLBAforCHS(	unsigned char Drive, 
													unsigned long lba,
													unsigned int numsectors,
                            				unsigned char *Buffer);

unsigned char ataWriteSectorsLBAforCHS(	unsigned char Drive, 
														unsigned long lba,
														unsigned int numsectors,
                            					unsigned char *Buffer);


//char SetAddress(unsigned char cs, unsigned char adr);
//unsigned int ReadWORD(unsigned char cs, unsigned char adr);
//unsigned char ReadBYTE(unsigned char cs, unsigned char adr);
 
//void WriteWORD(unsigned char cs, unsigned char adr, unsigned int dat);
//void WriteBYTE(unsigned char cs, unsigned char adr, unsigned char dat);

//unsigned char IdentifyDrive(unsigned char DriveNo,  unsigned char *Buffer, tdefDriveInfo *DriveInfo);
/*
unsigned char ATA_Read_Sectors(	unsigned char Drive, 
                				unsigned char Head, 
                				unsigned int Track, 
                				unsigned char Sector,
								unsigned int numsectors,
                				unsigned char *Buffer);

unsigned char ATA_Read_Sectors_LBA(	unsigned char Drive, 
									unsigned long lba,
									unsigned int numsectors,
                            		unsigned char *Buffer);

//unsigned char SetMode(unsigned char DriveNo, unsigned char Mode, unsigned char PwrDown);
*/

//unsigned char ATA_Idle(unsigned char Drive);

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美成人a在线| 亚洲专区一二三| 亚洲女同女同女同女同女同69| 一区二区激情小说| 九九视频精品免费| 日本高清不卡在线观看| 久久免费的精品国产v∧| 亚洲欧美日韩国产中文在线| 国产尤物一区二区| 7777精品伊人久久久大香线蕉的| 国产精品成人网| 国内精品写真在线观看| 欧美日韩视频一区二区| 专区另类欧美日韩| 粉嫩一区二区三区性色av| 欧美一区二区在线视频| 亚洲影视在线观看| 91无套直看片红桃| 国产精品视频观看| 国产高清在线观看免费不卡| 精品久久一区二区| 麻豆一区二区99久久久久| 欧美日韩亚州综合| 婷婷综合另类小说色区| 欧美亚洲禁片免费| 亚洲综合免费观看高清完整版在线| 风间由美性色一区二区三区| 久久久91精品国产一区二区精品 | 国产精品区一区二区三区| 国产一区二区三区最好精华液| 日韩欧美不卡在线观看视频| 日产欧产美韩系列久久99| 欧美色视频在线| 午夜亚洲福利老司机| 欧美日韩精品欧美日韩精品一综合| 亚洲国产成人91porn| 欧美人狂配大交3d怪物一区 | 色94色欧美sute亚洲13| 亚洲色图都市小说| 色综合天天天天做夜夜夜夜做| 国产精品二三区| 日本黄色一区二区| 偷窥少妇高潮呻吟av久久免费| 6080日韩午夜伦伦午夜伦| 久久99精品一区二区三区三区| 26uuu亚洲综合色欧美 | 美女一区二区在线观看| 日韩一级高清毛片| 国产精品资源在线观看| 日本一区二区三区四区在线视频| 国产久卡久卡久卡久卡视频精品| 国产欧美日韩视频一区二区| 91丝袜美女网| 天天色图综合网| 日韩一区二区三区电影 | 欧美国产一区在线| 色综合久久综合中文综合网| 午夜av一区二区| 精品国产伦一区二区三区观看体验| 国产精品一区二区在线播放| 亚洲少妇屁股交4| 91麻豆精品国产91久久久使用方法| 麻豆国产精品官网| 国产精品乱人伦| 欧美精品久久一区二区三区| 国产精品资源在线| 亚洲国产精品久久人人爱| 日韩精品中文字幕在线不卡尤物| 粉嫩av一区二区三区| 亚洲国产精品久久一线不卡| 久久久久久97三级| 欧洲中文字幕精品| 国产白丝网站精品污在线入口| 一区二区三区91| 国产午夜精品福利| 欧美三级日韩在线| 国产成人综合亚洲网站| 亚洲成人自拍网| 中文子幕无线码一区tr| 欧美性大战久久久久久久蜜臀| 久久精品久久99精品久久| 亚洲天堂a在线| 精品对白一区国产伦| 色婷婷精品大在线视频| 国产伦精品一区二区三区免费| 一区二区在线观看视频| 国产欧美久久久精品影院| 欧美欧美欧美欧美首页| 成人av综合一区| 加勒比av一区二区| 五月天久久比比资源色| 成人免费在线播放视频| 久久精品综合网| 日韩三级中文字幕| 欧美日韩精品二区第二页| av激情成人网| 高清不卡在线观看av| 久久国产麻豆精品| 亚洲成人黄色影院| 一区二区成人在线观看| 国产精品久久久久一区| 久久综合五月天婷婷伊人| 欧美不卡在线视频| 日韩欧美视频一区| 欧美一区二区三区影视| 欧美四级电影网| 91成人免费在线| 欧美在线视频全部完| 一本大道久久a久久综合婷婷| 成人av在线网站| 成人免费视频caoporn| 国产91在线看| 成人激情电影免费在线观看| 成人深夜视频在线观看| 成人午夜激情影院| 成人免费视频播放| 91亚洲大成网污www| 91麻豆视频网站| 一本色道久久综合精品竹菊| 色婷婷av一区| 欧美日韩在线播放三区四区| 3atv一区二区三区| 精品久久人人做人人爰| 久久久亚洲国产美女国产盗摄 | 亚洲精品伦理在线| 亚洲激情自拍偷拍| 亚洲午夜在线观看视频在线| 亚洲国产一区二区在线播放| 日韩经典中文字幕一区| 麻豆精品视频在线观看免费| 国产一区欧美一区| 99精品在线观看视频| 欧美三级日韩三级国产三级| 欧美一区二区三区思思人 | 337p亚洲精品色噜噜噜| 精品sm捆绑视频| 日本一区二区三区四区| 亚洲乱码国产乱码精品精小说 | 亚洲色图在线视频| 亚洲成人福利片| 国产一区二区0| 91在线观看免费视频| 欧美日韩高清一区二区| www久久久久| 亚洲美女淫视频| 美女尤物国产一区| 成人激情综合网站| 欧美肥妇free| 国产精品理论片在线观看| 亚洲成av人在线观看| 国产精品一卡二| 欧美日韩亚洲综合| 国产欧美一区二区在线观看| 亚洲综合视频在线| 懂色av一区二区夜夜嗨| 精品视频一区二区不卡| 欧美精品一区二区精品网| 亚洲美女免费在线| 狠狠色综合日日| 欧美日韩国产经典色站一区二区三区| 精品国产伦一区二区三区免费| 亚洲精品免费电影| 国产精品一区二区久久不卡 | 欧美性受xxxx| 久久久久88色偷偷免费| 亚洲高清一区二区三区| 国产成人在线影院| 欧美一区二区精美| 一区二区三区不卡视频在线观看| 国产麻豆精品95视频| 欧美一区午夜精品| 亚洲一卡二卡三卡四卡| 国产91丝袜在线观看| 欧美一区二区二区| 亚洲一区二区三区四区的| 成人手机在线视频| 久久久久久电影| 美国三级日本三级久久99| 欧美性猛交一区二区三区精品| 欧美激情一区二区三区全黄| 美女视频黄久久| 欧美一区二区三区日韩| 亚洲一区二区三区影院| 99久久精品国产一区| 国产欧美日韩亚州综合| 国产一区二区剧情av在线| 日韩一区二区中文字幕| 天天影视涩香欲综合网 | 亚洲123区在线观看| 岛国av在线一区| 国产婷婷色一区二区三区四区 | 五月婷婷综合网| 欧美日韩一区二区三区视频| 一区二区三区日韩欧美| 色综合婷婷久久| 亚洲免费在线观看| 日本久久一区二区三区| 亚洲精品菠萝久久久久久久| 91在线免费播放| 亚洲精品高清视频在线观看|