添加收藏夹  设为首页  深圳服务热线:13751165337  13692101218
51电子网联系电话:13751165337
位置:首页 > IC型号导航 > 首字符U型号页 > 首字符U的型号第183页 > UPD703108GC-8EU > UPD703108GC-8EU PDF资料 > UPD703108GC-8EU PDF资料2第88页
第5章应用实例
INT状态;
ATA_COMMAND交流;
ac.features
ac.sector_count
ac.cylinder_low
ac.device_head
ac.command
= 0x00;
= sector_count ;
= ( lba>>8
&为0xFF ) ;
//注册功能
// SectorCount注册
// SectorNumber注册
// CylinderLow注册
// CylinderHigh注册
//命令寄存器
ac.sector_number = ( LBA &为0xFF ) ;
ac.cylinder_high = ( lba>>16 &为0xFF ) ;
= 0x30;
= 0X40 | ( dev_num<<4 ) | ( lba>>24 &为0x0F ) ; //设备/磁头寄存器
状态= ATA_PIO_dataout ( &ac , sec_cnt ,浅黄色) ;
返回状态;
}
/////////////////////////////////////////////////////////////////////////
//函数名称: ATA_Read_DMA
//功能:执行READ DMA命令(协议: DM ,命令: C8H ) 。
//参数: dev_num :设备选择( 0 :主/ 1 :从站)
//
//
//
//
//
//
//
//
//
//
INT ATA_Read_DMA ( INT dev_num , UWORD LBA , UHWORD sec_cnt )
{
INT状态;
ATA_COMMAND交流;
ac.features
ac.sector_count
ac.cylinder_low
ac.device_head
ac.command
= 0x00;
= sector_count ;
= ( lba>>8
&为0xFF ) ;
//注册功能
// SectorCount注册
// SectorNumber注册
// CylinderLow注册
// CylinderHigh注册
//命令寄存器
LBA : LBA
sec_cnt :扇区数
STATUS_SUCCESS :正常结束
STATUS_TIMEOUT_DEVICE_SELECTION :设备选择错误结束
STATUS_TIMEOUT_BSY0_DRQ0 : BSY = 0 , DRQ = 0超时错误结束
STATUS_TIMEOUT_DRDY1 : DRDY = 1超时错误结束
STATUS_TIMEOUT_INTRQ : INTRQ超时错误结束
STATUS_TIMEOUT_BMEND : BM超时错误结束
STATUS_IDE_ERROR :命令执行后出现错误结束
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//返回值:
/////////////////////////////////////////////////////////////////////////
ac.sector_number = ( LBA &为0xFF ) ;
ac.cylinder_high = ( lba>>16 &为0xFF ) ;
= 0xC8 ;
= 0X40 | ( dev_num<<4 ) | ( lba>>24 &为0x0F ) ; //设备/磁头寄存器
状态= ATA_DMA ( &ac ) ;
返回状态;
}
88
应用笔记U17121EJ1V1AN

深圳市碧威特网络技术有限公司