第1章ZLG/CF 驱动使用 - Read
第1章ZLG/CF 驱动使用 - Read
第1章ZLG/CF 驱动使用 - Read
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
}<br />
}<br />
else<br />
{<br />
}<br />
return RelaStaSect;<br />
RelaStaSect = buffer[454]+ (4)<br />
buffer[455]*0x100 +<br />
buffer[456]*0x10000 +<br />
buffer[457]*0x1000000;<br />
(1) 读设备的 0 号扇区。<br />
(2) 如果该扇区为有效的分区表,该扇区的最后两个字节数据必为 0x55 和 0xAA。<br />
(3) 如果该扇区为 DOS 引导扇区,该扇区的首字节必为 0xEB 或 0xE9,如果首字节为<br />
0xEB 则第 2 个字节必为 0x90;如果设备的 0 号扇区为 DOS 引导扇区,则逻辑盘前没有隐<br />
含扇区,即逻辑盘起始扇区号为 0 号扇区。<br />
(4) 如果该扇区为有效的分区表,则该扇区的 454—457 节字保存的值为第一个卷(逻<br />
辑盘)的起始扇区号。<br />
2.创建 ADS 工程<br />
使用工程模板创建基于 uC/OS-II 的工程,将 ZLG/FS 文件管理系统的相关文件和<br />
ZLG/<strong>CF</strong> 驱动添加到工程;将 uC/OS-II 源码程序及 ARM 的移值代码拷贝到适当的文件夹。<br />
ZLG/FS 文件管理系统的配置使用默认值即可;由于 ZLG/FS 文件管理系统至少使用<br />
uC/OS-II 操作系统 2 个事件,而 ZLG/<strong>CF</strong> <strong>驱动使用</strong> 1 个信号量事件,所示配置 uC/OS-II 操<br />
作系统的事件数不能少于 3 个。<br />
添加相关的头文件到“config.h”文件中,如程序清单 1.11 所示。<br />
/* ZLG/FS需包含的头文件 */<br />
程序清单 1.11 添加头文件及配置<br />
#include "fat.h" (1)<br />
#include "OSFile.h" (2)<br />
extern char *strupr(char *Str); (3)<br />
extern uint16 <strong>CF</strong>Cammand(uint8 Cammand, void *Parameter); (4)<br />
/*系统与 ZLG/<strong>CF</strong> 驱动接口函数的头文件*/<br />
#include "SysATA.H" (5)<br />
/* <strong>CF</strong> 存储卡需配置及包含的头文件 */<br />
#define UCOSII (6)<br />
#include "IDE.H" (7)<br />
(1) ZLG/FS 文件管理系统所包含的头文件。<br />
(2) ZLG/FS 文件管理系统基于 uC/OS-II 所需的头文件。<br />
(3) strupr()函数的外部声明。strupr()是标准库的函数,但是由于 ADS 编译器库没有包含