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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? ata_if.h

?? Procyon方案(手工制作的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);

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久精品国产色蜜蜜麻豆| 国产精品99久| 日韩一区欧美二区| 日本vs亚洲vs韩国一区三区 | 99re这里只有精品视频首页| 99re这里只有精品视频首页| 亚洲色图欧美偷拍| 日韩av高清在线观看| 成人黄色一级视频| 91精品欧美久久久久久动漫| 久久精品人人做人人综合 | 欧美在线综合视频| 久久―日本道色综合久久| 一区二区三区四区激情| 激情综合一区二区三区| 欧美亚洲精品一区| 亚洲女同ⅹxx女同tv| 成人深夜福利app| 26uuu欧美| 青青草精品视频| 国产视频一区在线观看| 色久优优欧美色久优优| 国产精品色在线| 麻豆成人免费电影| 欧美一二三区在线观看| 一区二区三区毛片| 精品成人a区在线观看| 五月婷婷另类国产| 欧美视频一二三区| 国产精品一区二区在线看| 一区二区三区免费| 日本一区二区免费在线| 成人午夜视频在线观看| 亚洲一区视频在线观看视频| 色综合欧美在线| 亚洲精品精品亚洲| 色猫猫国产区一区二在线视频| 日韩成人免费在线| 亚洲视频一区二区免费在线观看| 日韩视频免费观看高清完整版在线观看| www.欧美日韩| 亚洲欧美另类在线| 久久免费美女视频| 宅男噜噜噜66一区二区66| 91小宝寻花一区二区三区| 国产精品久久久久久妇女6080 | 日韩精品亚洲一区| 国产精品久久精品日日| 欧美日韩精品一区二区| 婷婷国产v国产偷v亚洲高清| 国产精品高潮呻吟久久| 精品久久国产字幕高潮| 成人国产亚洲欧美成人综合网| 日本不卡视频在线观看| 亚洲高清免费视频| 日韩精品中文字幕一区二区三区 | 欧美在线观看视频一区二区三区| 国产精品99久久久久久久vr | 国产精品女人毛片| 久久亚洲春色中文字幕久久久| 欧美一区二区视频在线观看2020 | 蜜臀av性久久久久蜜臀av麻豆| 亚洲一区自拍偷拍| 一区二区三区四区不卡在线 | 国产欧美日韩激情| 精品国产露脸精彩对白| 欧美一级理论性理论a| 欧美日韩一区二区三区在线 | 99久久er热在这里只有精品66| 麻豆国产欧美一区二区三区| 日本不卡在线视频| 日韩高清不卡一区二区| 午夜精品久久久久久不卡8050| 亚洲影视在线观看| 三级久久三级久久| 视频一区二区三区在线| 亚洲成av人在线观看| 久久久国产精品午夜一区ai换脸| 欧美变态tickling挠脚心| 日韩欧美另类在线| 亚洲精品一区二区三区蜜桃下载| 欧美一区二区精品久久911| 日韩一区二区精品在线观看| 日韩限制级电影在线观看| 欧美一区二区啪啪| 精品国产区一区| 国产欧美1区2区3区| 国产精品蜜臀av| 亚洲精品大片www| 亚洲国产sm捆绑调教视频| 香蕉成人啪国产精品视频综合网 | 中文字幕一区不卡| 日韩欧美电影一二三| www国产精品av| 国产精品蜜臀在线观看| 日韩伦理av电影| 亚洲一区av在线| 日本特黄久久久高潮| 国产精品一区二区免费不卡| www.66久久| 欧美日韩美女一区二区| 精品日韩在线观看| 国产精品乱码人人做人人爱| 一级女性全黄久久生活片免费| 婷婷久久综合九色综合伊人色| 久久草av在线| 色天天综合色天天久久| 制服丝袜中文字幕一区| 精品动漫一区二区三区在线观看| 亚洲国产精品高清| 国产亚洲一本大道中文在线| 亚洲欧洲www| 秋霞电影网一区二区| 国产精品一区二区三区网站| 欧美少妇性性性| 久久精品亚洲一区二区三区浴池| 在线不卡一区二区| 制服丝袜亚洲网站| 亚洲国产精品黑人久久久| 亚洲午夜私人影院| 国产精品综合网| 欧美专区日韩专区| 欧美国产1区2区| 图片区小说区国产精品视频| 福利视频网站一区二区三区| 国产sm精品调教视频网站| 91福利在线导航| 久久综合久色欧美综合狠狠| 亚洲午夜日本在线观看| 国产精品影音先锋| 欧美精品国产精品| 亚洲视频一区二区在线| 国产综合色视频| 懂色av一区二区在线播放| 欧美剧情电影在线观看完整版免费励志电影| 亚洲精品一区二区三区福利| 亚洲一区二区3| 91视视频在线观看入口直接观看www| 欧美白人最猛性xxxxx69交| 亚洲国产欧美在线| 色屁屁一区二区| 国产精品久久福利| 国产一本一道久久香蕉| 成人av网站大全| 久久免费精品国产久精品久久久久| 亚洲3atv精品一区二区三区| 日本韩国精品一区二区在线观看| 欧美高清在线视频| 国产成人一级电影| 欧美优质美女网站| 中文字幕在线观看一区| 国产成人鲁色资源国产91色综| 日韩视频不卡中文| 久久精品国产一区二区三| 欧美日韩视频专区在线播放| 一区二区三区影院| 欧洲在线/亚洲| 亚洲综合在线视频| 91麻豆国产香蕉久久精品| 亚洲图片另类小说| a级高清视频欧美日韩| 日本一区二区免费在线| 成熟亚洲日本毛茸茸凸凹| 久久精品视频网| 成人免费高清视频| 国产精品久久久久一区| 99久久久久免费精品国产| 亚洲视频免费看| 91久久久免费一区二区| 一区二区三区.www| 欧美喷潮久久久xxxxx| 午夜久久久久久电影| 欧美一区二区视频在线观看2020| 日本v片在线高清不卡在线观看| 日韩亚洲欧美在线| 久久精品国产亚洲5555| 国产区在线观看成人精品| 成人激情午夜影院| 亚洲男人的天堂在线aⅴ视频 | 国产成人超碰人人澡人人澡| 国产午夜精品一区二区三区视频 | 成人性视频免费网站| 成人免费在线视频| 日本韩国欧美在线| 日本午夜一区二区| 国产亚洲一本大道中文在线| 97se亚洲国产综合在线| 亚洲成人免费电影| 精品久久久久久久久久久久久久久 | 欧美天堂一区二区三区| 首页综合国产亚洲丝袜| 欧美白人最猛性xxxxx69交| 国产成人激情av| 亚洲永久免费视频| 2021中文字幕一区亚洲| 成人毛片视频在线观看| 亚洲一区二区三区三| 日韩三级视频在线看| 99久久精品国产一区二区三区| 亚洲二区视频在线|