首 页 用户登录 | ![]() |
|||
|
|||
按字母检索 | 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 |
按声母检索 | A | B | C | D | E | F | G | H | J | K | L | M | N | O | P | Q | R | S | T | W | X | Y | Z | 数字 | 符号 |
|
![]() |
您的位置: 5VAR论文频道 → 论文中心 → 理工论文 → 电子通信 |
|
|||||
嵌入式处理器MPC8250与CF卡的接口设计 | |||||
收集整理:佚名 来源:本站整理 时间:2009-01-10 23:52:40 点击数:[] ![]() |
|||||
1)扇区数目寄存器(Sector_CNT Register) 读写操作时,保存需要传送的扇区数目。如果为0,则选择256个扇区;如果操作成功,操作结束时此寄存器为0;如果操作不成功,此寄存器包含了有待完成的扇区数目。 (2)磁头寄存器(Select_HEAD Register) 其中包含了LBA位(1比特),用于设置地址访问方式。“1”LBA_Mode为逻辑地址访问方式,“0”为柱面/磁头/扇区访问方式。本系统选择逻辑地址访问方式,则该寄存器还包含了逻辑地址的24~27位。 (3)扇区编号寄存器(Sector_NUM Register) 在采用逻辑地址访问方式时,该寄存器包含了逻辑地址的0~7位。 (4)柱面低位寄存器(Cylinder_LO Register) 在采用逻辑地址访问方式时,该寄存器包含了逻辑地址的8~15位。 (5)柱面高位寄存器(Cylinder_HI Register) 在采用逻辑地址访问方式时,该寄存器包含了逻辑地址的16~23位。 (6)状态寄存器(Status Register) 反映了CF卡的状态,其中包含了CF卡忙(Busy)位、出错位(Err)、是否准备就绪位(Rdy)等。 (7)数据寄存器(Data Register) 存放读写数据,是一个16位寄存器。 2.4 读数据 从CF卡读取一个扇区的数据,如图3所示。因为系统采用的CF卡的扇区大小为:SectorSize = 512字节,假设读写数据的地址为Addr,则该地址所在的扇区号为: Sector = Addr % SectorSize。 首先配置寄存器,设置读取的扇区数目、相应地址和访问模式;然后发送读命令(0x20),等待CF卡空闲且准备就绪,再从数据寄存器中连续读取一个扇区的数据;完成读取后,等待CF卡空闲;程序返回。 2.5 写数据 将数据写入CF卡的操作与从CF卡读取数据的操作类似,如图4所示。首先配置寄存器,设置写入的扇区数目、相应地址和访问模式;然后发送写命令(0x30),等待CF卡空闲并且处于准备状态,连续向数据寄存器写入一个扇区的数据;完成写入后,等待CF卡空闲,程序返回。 本设计采用的操作系统是μC/OS——一个源代码完全公开的嵌入式操作系统。所有读写CF卡的函数都用C语言编制,并能在系统中有效工作。 |
提供人:佚名 | |
【返回上一页】【打 印】【关闭窗口】 |
![]() |
5VAR论文频道 |
![]() |
5VAR论文频道 |
![]() |
关于本站 -
网站帮助 -
广告合作 -
下载声明 -
网站地图
Copyright © 2006-2033 5Var.Com. All Rights Reserved . |