• 首页 |  
  • 查询 |  
  • 供应 |  
  • 求购 |  
  • 资讯 |  
  • 产品中心 |  
  • 技术应用 |  
  • 商务中心 |  
  • IC供货商 |  
  • 下载中心 |  
  • 求职招聘 |  
  • 论坛 |  
  • 博客
  • 您所在的位置: 首页 > 产品中心 > 模拟电路 > 接口interface > 正文
    文章搜索:
    AT89S52与CF卡的接口设计

    http://www.ic36.com 2006年11月28日13:23 耿宗亮 王凤路等

    1 前言

      随着计算机应用技术的飞速发展,移动存储设备得到了广泛的应用。其中CF(Compact Flash)卡以其价格低廉、体积小、存储容量大、高速等优点在众多移动存储设备中被广泛地应用于数码相机、PDA和笔记本电脑等当前十分热门的消费类电子产品中。并且CF卡在其他领域中也得到了广泛的应用。本文所述内容就是通过8051单片机对CF卡进行读写。

    2.CF卡的操作方式

     
    清华微电子推出高频管分立器件裸片,已做到9G截止频率



      CF卡的操作方式与计算机的硬盘操作方式类似,其扇区的寻址也有两种方式:物理寻址(CHS)和逻辑寻址(LBA),物理寻址使用柱面、磁头和扇区号表示一个特定的扇区,起始扇区是0道、0头、1区,接下来是2区等等,逻辑寻址将整个CF卡统一寻址。逻辑块寻址和物理寻址的关系为:

      LBA地址=(柱面号×磁头数+磁头号)×扇区数+扇区数一1

      在实际使用过程中,用LBA地址进行寻址,可以大大简化编程的工作量,避免柱面、磁头和扇区之间的换算和切换,并且可以突破CHS对大容量的无法寻址的限制。


    3.CF卡的文件管理

      CF卡的文件管理系统和硬盘的文件管理是一样的,他将CF卡的存储空间分为五个部分:主引导记录扇区(MBR)、DOS引导区(DBR)、文件分配表(FAT)、文件目录表(FDT)和数据。

      主引导记录扇区(MBR)

      主引导记录扇区(MBR)在0柱面、0磁头、1扇区。主引导记录记录磁盘最重要的结构信息。主引导记录是硬磁盘作分区时建立的(Fdisk)。主引导记录包括一小段执行代码(主引导代码)、磁盘特征和硬盘分区表。主引导记录结束的两个字节必须是引导自举标记0x55AA。磁盘特征位于0x01B8, 指定磁盘操作系统。

      DOS引导区(DBR)

      DOS引导区(DBR)的起始扇区在0柱面、1磁头、1扇区,磁盘的逻辑0扇区都称为DOS引导扇区,又称为BOOT区。它由以下5个部分组成:

      跳转指令,占用3个字节的跳转指令将跳至引导代码,其内容随DOS版本变化。
      厂商标识和DOS版本号。该部分总共占用8个字节,其内容随DOS版本而不同。
      BPB(BIOS Paramenter Block, BIOS参数块)。BPB从第12字节起占用19个字节。
      DOS引导程序。DOS引导程序既是占用480字节的BOOT代码,负责完成DOS的3个系统文
    件的装入工作。这部分内容随DOS版本不同而变化。
      结束标志字,结束标志占用2个字节,其值为AA55。
      BPB表中所记录的有关参数,能帮助编程者确定磁盘的容量大小、文件分配表FAT的位置和大小、文件目录表FDT的位置和大小。因此以FAT32分区格式为例讨论BPB表的结构。
      偏移量为0BH、0CH记录每个扇区的字节数,0DH记录每簇扇区数。0EH、OFH记录保留扇区数,10H记录FAT表的数目,15H磁盘介质描述符,18H每个磁道的扇区数,24H每个FAT表的扇区数,2CH~2FH根目录起始号。
      文件分配表(FATl)
      文件分配表FAT(File Allocation Tabel)是文件管理系统用来给每个文件分配磁盘物理空间的表格,它告诉操作系统,文件存放在磁盘什么地方。文件分配表(FAT)有表标识和簇映射(旧称表目)的集合组成。一个完全相同的镜像副本连续存储在主 FAT 表后。表标识符包括磁盘介质描述符( 1 字节)和填充字节, 总计占两个簇的簇映射区域(这大概也就是 FAT 文件系统簇号由2开始的原因), 填充字节一般为 FF,FAT32 的填充字节中还包含"脏位", 即系统启动时执行磁盘检查(FAT-ChkDsk/NTFS-AutoChk)。FAT 簇映射中, 0000 表示空簇, FFFF 表示簇链结束, FFF7 表示坏簇, 其余值表示其后续簇的簇号。FAT12 和 FAT32 的存储策略同 FAT16 类似, 例如 FAT12的结束簇为 FFF, FAT32 的坏簇为 0FFFFFF7 等(注意 FAT32 的高 4 位保留)。文件分配表(FAT2)是FAT1的完全备份。

      文件目录表(FDT) 在文件目录表中,每个文件占32个字节(用PC-TOOLS或DEBUB读出时占两行),各个字节的含义是这样的:0-7 字节:文件名;8-10 字节:扩展名;11 字节,表示文件属性;12-21 共10个字节为保留字段,没有使用;22-23 为建立文件的时间;24-25 为建立文件的日期;26-27 为文件占用的第一个簇号,即起始簇;28-31 共4个字节为此文件的长度。


    3.AT89S52与CF卡的接口设计

      CF卡有3种工作模式可供选择:I/0模式、存储器模式和IDE模式。CF卡的默认模式是存储器模式,使用也最为普遍。如果使用存储器模式则不需要配置任何寄存器。每一种模式的电路连接各不相同。在I/0模式和存储器模式下,可以采用8位的访问方式,也可以采用16位的访问方式。本文所采用的是8位的存储器模式,其接口电路原理图如图1所示。

      AT89S52的P0口就为数据线连接CF的DO—D7,CF卡的A0-A10为地址线,P3.6、P3.7分别为读(RD)、写(WE)线。由于 AT89S52是8位的单片机,所以对CF卡的访问采用8位的方式较为方便。通过把-CE2设为‘1’即可通过访问CF卡的D0--D7来存取数据。而- CEl可以作为CF卡的片选信号,通过设-CEl为‘0’来选通CF卡,即-CEl接AT89S52的P2.6来线选CF卡。当REG为‘0’时,访问 CF卡的属性寄存器;REG为‘1’时,CF卡在存储器模式下对数据进行读写操作。RDY/BSY为CF卡状态引脚,当为“0”时,CF卡忙,为“1”时可以对CF卡操作。原理图如图所示:

      限于篇幅只将写一个扇区代码编写(读扇区代码基本与此相同)如下:
    ;写一个扇区
    WRITE: MOV DPTR, #SECTR_CNT
         MOV A, #1
         MOVX @DPTR, A
         MOV DPTR, #SECTR_NO
         MOV A, SECTRNO
         MOVX @DPTR, A
         MOV DPTR, #CYLINDER_LOW
         MOV A, CYLINDERL
         MOVX @DPTR, A
    MOV DPTR, #CYLINDER_HI
         MOV A, CYLINDERH
         MOVX @DPTR, A
         MOV DPTR, #DRV_HEAD
         MOV A, DRVHEAD
         ANL A, #0FH
         ORL A, #0E0H
         MOVX @DPTR, A
         MOV DPTR, #COMMAND
         MOV A, 30H
         MOVX @DPTR, A
    WRITE512:MOV R6,#0
         MOV R7,#2
    WRITE: MOV DPTR,#DATA_REG
         MOV A,#31H
         MOVX @DPTR,A
       DJNZ R6,WRITE
       DJNZ R7,WRITE
       RET




    4.结束语

      本设计的接口电路,阐述了CF卡的读写方法,并采用了通用的MCS-51系列单片机为系统控制器,可移植性好。根据此电路可应用于其他单片机对CF卡进行读写,采用CF卡作为存储介质,容量大,体积小,价格低廉,可应用于MP3播放器,数码相机,移动存储等各个领域, 本试验在线路板上调试通过,并配合计算机串口对CF卡进行读写操作,并可对CF卡进行数据恢复。



    (关键词):CF卡 接口设计 计算机 移动存储设备

    IC型号速查
    [0]  [1]  [2]  [3]  [4]  [5]  [6]  [7]  [8]  [9]  [A]  [B]  [C]  [D]  [E]  [F]  [G]  [H]
    [I]  [J]  [K]  [L]  [M]  [N]  [O]  [P]  [Q]  [R]  [S]  [T]  [U]  [V]  [W]  [X]  [Y]  [Z]
    相关链接
    艾讯发布交互式多媒体平板计算机,配置液晶屏显示 2006-10-9 9:29:43
    InfiniBand新技术iSCSI提升存储速度2006-10-9 11:34:43
    IBM和Cray制造新一代超级计算机将快100倍2006-11-25 9:40:10
    AT89S52与CF卡的接口设计2006-11-25 11:20:16
    微软将在日本销售”瘦身“低价版XBOX 360 2006-10-10 9:35:53
    自动识别技术市场分析2006-10-12 14:47:30
    基于S3C44B0X的大型LED显示系统设计2006-9-4 17:59:58
    Kontron推出行动装置的X-board迷你开发套件2006-9-27 11:37:05
     我来评两句
    查看最新评论〗 

    昵称:  匿名
    请您注意:
    ·遵守中华人民共和国的各项有关法律法规
    ·承担一切因您的行为而导致的法律责任
    ·本网留言板管理人员有权删除其管辖留言内容
    ·您在本网的留言,本网有权在网站内转载或引用
    ·参与本留言即表明您已经阅读并接受上述条款

    芯片之家  电子之家  电子元器件之家  半导体之家  微电子之家 
    ·免费发布紧急IC求购 ·到哪里找工厂求购 ·全球最好十个IC网站 ·我为什么选择IC36
    ·IC是怎样炼成的 ·想知道所有的IC封装吗 ·如何鉴别旧货刷新货 ·芯片的前缀代表什么
    ·IC行业的网站体验 ·元器件常见问题解答 ·这里居然可以实时洽谈 ·有问必有答
    ·IC行业之25颗钻石 ·IC代理商查询 ·十家最牛的公司 ·中国IC公司200强
    元器件之家  晶圆之家  集成电路之家  电子元件之家  模块之家  电子管之家
    ·舍我其谁的高级会员 ·IC36是怎样收费的 ·网站广告是如何占领的 ·IC之家的增值服务
    ·我该到哪里去找工作 ·到哪里去招人呢 ·今日芯片需求排行 ·还有我们没有的型号吗
    ·中国IC行业的害群之马 ·中国最优秀的IC供应商 ·国外的IC骗子公司 ·信誉良好的IC供货商
    ·谁是IC之家的明星 ·做我们的代理吧 ·免费注册 机不可失 ·广告热线 010-51653935
    热 点 专 题
    热 点 论 坛
    关于我们 | 增值服务 | 免责条款 | 收费标准 | 付款方式 | 广告服务 | 网站地图 | 联系我们 | 友情链接 | 网站代理
    MSN:ic36@hotmail.com  QQ:IC之家 在线咨询  联系电话:(010)51653935 传真:(010)51653936 客户服务:service@ic36.com
    Copyright © 2003-2006 IC36.COM IC之家 本网站中文域名:IC之家 芯片之家
    京ICP证060068号