正在加载图片...
广州周立功单片机发展有限公司Tel:(020)38730916387309173873097638730977Fax:38730925 表5 ATA FindIDEDevice函数 函数名称 AtA FindIDEDevic 所属文件|DEC 函数原型 uint& ATA FindIdEDevice( void) 功能描述对ATA接口设备进行进硬件复位,查找ATA接口上的设备 编译开 函数参数无 函数返回值无 调用模块 SYS IdehardReset OATA设备硬件复位 SetDeviceHeado写设备磁头寄存器 GetDeviceHeado读设备磁头寄存器 ATA Set Feature(功能设置函数 ATA IssuelDEldentify oata设备识别 特殊说明 发现在新的设接入ATA接口时,调用该函数查找设备。 和注意要点 范例见表4范仅 表6 ATA ReadSector函数 函数名称 Ata Readsectol 所属文件IDEC uint8 ATA ReadSector(uint8 Device, uint16*Buffer, uint32 Sector, uint8 count) 功能描述从硬盘读取一或多个扇区,放入到形参指定的内存中 编译开关无 函数参数 Buffer,读出数据存放缓冲区地址 Sector,读扇区号 Count,连续读出的扇区数 函数返回值TRUE:成功 SE:失败 调用模块 SSemPendo,等待信号量 ATA SelectDevice O,选择设备 ATA WaitOn Busy NDrqo等待数据请求 ATA ReadData512BO读512字节数据 ATA WaitOn Busy NDrdy o,等待数据空闲 OSSemPosto,发送信号量 特殊说明每读出一个扇区值为52节字,读出的扇区数为1~256个,扇区数为0即为256 和注意要点个扇区 范例〃在从设备0号扇区开始连续读出2个扇区的数据 if(ATA ReadSector(Oxo1, Buffer, 0x00, 0x0 /*错误处理程序 表7 ATA Write Sector函数 函数名称 ATA Write Sector 所属文件IDEC 函数原型 nts ATA_WriteSector(uints Device uint Buffer, uin 2 Sector, uint8 count) 1 功能描述向CF卡或硬盘写入一或多个扇区数据 编译开关 函数参数 Device选择操作的设备,0为主设备,1为从设备广州周立功单片机发展有限公司 Tel: (020) 38730916 38730917 38730976 38730977 Fax: 38730925 表 5 ATA_FindIDEDevice 函数 函数名称 ATA_FindIDEDevice 所属文件 IDE.C 函数原型 uint8 ATA_FindIDEDevice(void) 功能描述 对 ATA 接口设备进行进硬件复位,查找 ATA 接口上的设备。 编译开关 无 函数参数 无 函数返回值 无 调用模块 SYS_IdeHardReset () ATA 设备硬件复位 SetDeviceHead() 写设备磁头寄存器 GetDeviceHead() 读设备磁头寄存器 ATA_SetFeature () 功能设置函数 ATA_IssueIDEIdentify () ATA 设备识别 特殊说明 和注意要点 发现在新的设接入 ATA 接口时,调用该函数查找设备。 范 例 见表 4 范例。 表 6 ATA_ReadSector 函数 函数名称 ATA_ReadSector 所属文件 IDE.C 函数原型 uint8 ATA_ReadSector(uint8 Device,uint16 *Buffer,uint32 Sector,uint8 count) 功能描述 从硬盘读取一或多个扇区,放入到形参指定的内存中 编译开关 无 函数参数 Buffer,读出数据存放缓冲区地址 Sector,读扇区号 Count,连续读出的扇区数 函数返回值 TRUE:成功 FALSE:失败 调用模块 OSSemPend(),等待信号量 ATA_SelectDevice (),选择设备 ATA_WaitOnBusyNDrq(),等待数据请求 ATA_ReadData512B(),读 512 字节数据 ATA_WaitOnBusyNDrdy (),等待数据空闲 OSSemPost(),发送信号量 特殊说明 和注意要点 每读出一个扇区值为 512 节字,读出的扇区数为 1~256 个,扇区数为 0 即为 256 个扇区。 范 例 // 在从设备 0 号扇区开始连续读出 2 个扇区的数据。 if(ATA_ReadSector(0x01,Buffer,0x00,0x02)==0) { /* 错误处理程序 */ } 表 7 ATA_WriteSector 函数 函数名称 ATA_WriteSector 所属文件 IDE.C 函数原型 uint8 ATA_WriteSector(uint8 Device,uint16 * Buffer, uint32 Sector ,uint8 count) 功能描述 向 CF 卡或硬盘写入一或多个扇区数据 编译开关 无 函数参数 Device,选择操作的设备,0 为主设备,1 为从设备 - 5 -
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有