26.02.2013 Views

第1章ZLG/CF 驱动使用 - Read

第1章ZLG/CF 驱动使用 - Read

第1章ZLG/CF 驱动使用 - Read

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

置各 GPIO 引脚为相应的状态。如程序清单 1.8 所示。<br />

程序清单 1.8 ATA 接口初始化函数<br />

/*******************************************************************************************<br />

** 函数名称: ATA_BusIni<br />

** 功能描述: ATA 总线初始化<br />

** 输 入: 无<br />

** 输 出: 出错返回 0<br />

** 全局变量:<br />

** 调用模块:<br />

*******************************************************************************************/<br />

void ATA_BusIni(void)<br />

{<br />

}<br />

PINSEL1 &= 0xffffc003; /*使用到的 P0 口 GPIO 引脚设置*/<br />

PINSEL2 = (PINSEL2 & 0x0f8cf9c0) | 0x00000014; /*使用到的 P1 及 P2 口 GPIO 引脚设置*/<br />

IO0DIR &= (~(IDE_DMAREQ + IDE_INTRQ)); /*P0 相关输入引脚初始化*/<br />

IO0DIR |= (IDE_RST + IDE_WR + IDE_RD); /*P0相关输出引脚初始化*/<br />

IO1DIR &= (~(IDE_DMACK + IDE_IOCS16 + IDE_PDIAG)); /*P1 相关输入引脚初始化*/<br />

IO1DIR|= (IDE_A0+IDE_A1+IDE_A2+IDE_CS0+IDE_CS1+IDE_CSEL);/*P1 相关输出引脚初始化*/<br />

IO2DIR &= (~ATA_DATA); /*数据总线初始化为输入*/<br />

IO0SET = IDE_RST + IDE_WR + IDE_RD; /*<strong>CF</strong> 卡复位引脚及读写信号引脚初始输出高电平*/<br />

IO1SET = IDE_CS0 + IDE_CS1; /*<strong>CF</strong> 卡片选初始化输入高电平*/<br />

IO1CLR = IDE_A0 + IDE_A1 +IDE_A2 + IDE_CSEL; /*地址初始化*/<br />

1.1.4 中间件使用演示<br />

<strong>CF</strong> 卡及 IDE 硬盘等大容量设备,通常都是以一定的文件格式存贮的。常用的文件格式<br />

为 FAT12、FAT16、FAT32,ZLG/FS 文件管理系统支持以上格式。该演示程序结合 ZLG/<strong>CF</strong><br />

驱动及 ZLG/FS 文件管理系统,实现对 <strong>CF</strong> 卡及 IDE 硬盘等大容量存贮设备文件创建及文件<br />

存取等操作。<br />

1.编写文件系统的低层函数<br />

参考 ZLG/FS 文件系统驱动程序设计指南,结合 ZLG/FC 中间件很容易编写出基于<br />

ZLG/FS 文件管理系统 <strong>CF</strong> 存储卡的低层驱动。如程序清单 1.9 所示。<br />

#include "config.h"<br />

程序清单 1.9 ZLG/FS 文件系统 <strong>CF</strong> 卡驱动<br />

/*******************************************************************************************<br />

** 函数名称: <strong>CF</strong>Cammand<br />

** 功能描述: 底层驱动程序与上层的接口程序<br />

**<br />

** 输 入: Cammand:DISK_INIT:驱动程序初始化

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!