单片机设计实例:CF卡接口电路与编程实例

发布者:BlissfulJourney最新更新时间:2017-09-14 来源: ofweek关键字:单片机  CF卡接口  编程实例 手机看文章 扫描二维码
随时随地手机看文章

  1.本文所述内容就是通过8051单片机对CF卡进行读写。

  2.CF卡的操作方式

  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的完全备份。

  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卡操作。原理图如图所示:

单片机设计实例: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卡接口  编程实例 引用地址:单片机设计实例:CF卡接口电路与编程实例

上一篇:NOR Flash与8位单片机接口设计
下一篇:一种采用单片机的超大容量存储器接口设计

推荐阅读最新更新时间:2024-03-16 15:36

意法半导体推出仅售32美分的32位单片机
“自从2007年意法半导体正式推出ARM内核的单片机后,我们的MCU部门从一个很小的部门成长为意法半导体的核心部门,而同时我们在单片机领域的全球排名也得以不断提升。”意法半导体微控制器产品部产品市场经理Patrice Hamard介绍到。 目前,意法半导体已推出了七大产品线,拥有351个引脚兼容产品,“我们为客户提供了最佳的服务,包括广阔的产品线覆盖,以及长达十年的供货周期承诺。”Hamard表示。 谈到目前的单片机市场,Hamard表示一方面出货量增长很快,尤其是32位单片机市场。不过与此同时,随着市场进入者的增多以及客户的要求越来越严苛,产品的售价越来越低,这对供应商来说,也就意味着竞争压力越来越大。 但在Hamard看
[单片机]
意法半导体推出仅售32美分的32位<font color='red'>单片机</font>
8031单片机扩展一片8255A控制发光二极管电路原理图及汇编
现有一片8031,扩展了一片8255A,若把8255A的B口用作输入,B口的每一位接一个开关,A口用作输出,每一位接一个发光二极管,请画出电路原理图,并编写出B口某一位开关接高电平时,A口相应位发光二极管被点亮的程序。 A:7ffch B:7ffdh C:7ffeh 控制口:7fffh MOV DPTR,#7FFFH MOV A,#10000010B MOV @DPTR,A MOV DPTR,#7FFDH MOVX A,@DPTR MOV DPTR,#7FFCH MOVX @DPTR,
[单片机]
8031<font color='red'>单片机</font>扩展一片8255A控制发光二极管电路原理图及汇编
PIC单片机的中断资源及应用
1 PIC 单片机 简介 PIC系列 单片机 是美国Microchip技术公司推出的高性能价格比的8位嵌入式控制器(Embedded Controller),它采用了精简指令集计算机RISC(Reduced Instruction Set Computer)和哈佛(Harvard)双总线以及两级指令流水线结构。具有高速度、低工作电压、低功耗等特点和优良的性能价格比,因而PIC系列单片机越来越受到单片机开发与应用工程技术人员的青睐。该系列独特的结构和中断资源使其在使用时与其它系列的单片机有许多不同之处。下面以PIC16CXX系列微控制器为例来介绍PIC系列单片机的中断资源特点以及应用方法。 2 中断资源的开发与屏蔽 图1是PIC16
[单片机]
PIC<font color='red'>单片机</font>的中断资源及应用
基于Cortex-M内核的灵动微新品MCU集体亮相 2018灵动MM32协作大会成功举办
随着安全、可穿戴设备、智能手机和外设的传感控制器、智能楼宇、智能抄表、电动汽车和等新应用市场的不断增大,32位正在成为主流应用。在MCU市场,本土MCU基于的生态优势,可以快速切入32位市场。加上中国政府对产业的支持,本土MCU厂商逐渐具备了与海外MCU大厂竞争的底气和实力,这其中表现比较亮眼的一家厂商是上海灵动微电子。 2018年8月29日,在“2018灵动MM32协作大会”上,灵动微电子董事长兼总裁吴忠洁博士表示, 2018年灵动微电子MCU产品在四大方面有了明显进步:功能、性能、价格和服务。 灵动微电子主要在四个方面持续努力,简称为——S,即:应用(Applicaon)、性能(Peormance)、价格(Price
[机器人]
51单片机汇编伪指令
0、 ALTNAME 功能: 这一伪指令用来自定义名字,以替换源程序中原来的保留字,替换的保留字均可等效地用于子程序中。 格式: ALTNAME 保留字 自定义名 注意: 自定义名与保留字之间首字符必须相同。 1、BIT 功能:指令用于将一个位地址赋给指定的符号名。 指令格式:符号名 BIT 位地址经BIT 指令定义过的位符号名不能更改。 例如:X_ON BIT 60H ;定义一个绝对位地址 X_OFF BIT 24h.2 ;定义一个绝对位地址 BIT---定义位命令 格式: 字符名称 BIT 位地址 功能用于给字符名称
[单片机]
MCS-51单片机最大的时序定时单位是多少
  MCS-51单片机是一种集成的电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的计算机系统。   这篇文章主要和大家介绍一下关于MCS-51单片机最大的时序定时单位,同时把MCS-51单片机的结构特点和内部包含的功能部件也做了个汇总,跟随小编一起来了解一下吧。   MCS-51单片机结构特点   (1)一个8位微处理器CPU。   (2)数据存储器RAM和特殊功能寄存器SFR。   (3)内部程序存储器ROM
[单片机]
MCS-51<font color='red'>单片机</font>最大的时序定时单位是多少
基于ATmega8 单片机控制的正弦波逆变电源
0引言 在风电行业中,经常需要在野外对风机进行维修,这时必须为各类维修工具和仪器进行供电。因此,设计一种便携式。低功耗。智能化的正弦 逆变电源 来为这些设备供电是十分必要的,可大大提高维修风机的效率。 本文正是基于这种情况下而设计的一种基于单片机的智能化正弦逆变电源。 1正弦逆变电源的设计方案 本文所设计的逆变器是一种能够将DC 12 V直流电转换成220 V正弦交流电压,并可以提供给一般电器使用的便携式电源转换器。目前,低压小功率逆变电源已经被广泛应用于工业和民用领域。特别是在交通运输。野外测控作业。机电工程修理等无法直接使用市电之处,低压小功率逆变电源便成为必备的工具之一,它只需要具有一块功率足够的电池与它连接,便
[单片机]
基于ATmega8 <font color='red'>单片机</font>控制的正弦波逆变电源
MCU巨头,血拼GPU性能
曾经,MCU是电子产品的控制核心,GPU是图像世界的掌控者,二者在过去很少有交集。随着越来越多图形处理需求,MCU中放GPU,已经不是什么新鲜操作。 最近一段时间,边缘AI概念的兴起,以及汽车图形显示性能的提升,越来越多的MCU厂商开始“卷”图像处理性能。 MCU的图形历史 在那个没有GPU的时代,所有图形还都是交给CPU绘制。虽然这没什么问题,但随着显示图形图像愈发复杂,CPU越来越力不从心。对计算机来说,低效率带来的就是延迟和卡顿,整体功耗也会随之攀升,GPU便应运而生,将CPU从繁重的图形计算任务中拯救了出来。 MCU也有类似的发展历程。早期MCU极少有图形显示的需求,即便有,也只是简单的12864之类
[单片机]
<font color='red'>MCU</font>巨头,血拼GPU性能
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved