毕业设计 - 电子密码锁

发布时间 : 星期四 文章毕业设计 - 电子密码锁更新完毕开始阅读

表6-1 CF卡True IDE Mode管脚定义

管脚号 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 名称 GND D3/I/O D4/I/O D5/I/O D6/I/O D7/I/O -CS0 A10 -OE A9 A8 A7 VCC A6 A5 A4 A3 管脚号 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 名称 A2 A1 A0 D0/I/O D1/I/O D2/I/O -IOIS16 -CD2 -CD1 D11/I/O D12/I/O D13/I/O D14/I/O D15/I/O -CS1 -VS1 -IORD 管脚号 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 名称 -IOWR -WE INTRQ VCC -CSEL -VS2 -Reset IORDY -INPACK -REG -DASP -PDIAG D8/I/O D9/I/O D10/I/O GND CF 卡存储空间的寻址是通过命令寄存器组和控制寄存器组来实现的。命令寄存器组用来给磁盘驱动器发送命令和数据交换,控制寄存器组用来控制磁盘驱动器。在True IDE方式时,这两组寄存器组通过CS0 和CS1 信号来区分。CS0 选通命令寄存器组, CS1 选通控制寄存器组。

下面简要介绍各命令寄存器:

数据寄存器(R/W):16位数据寄存器。主机通过该寄存器向CF卡控制器写入或从CF卡控制寄存器读出扇区缓冲区的数据。只读。

错误寄存器(R)和特性寄存器(W):错误寄存器反映控制寄存器在诊断方式或操作方式下的错误原因。特性寄存器配置CF卡的工作参数。只写。

扇区数寄存器(R/W):记录一次读写操作的扇区数目。

扇区号寄存器(R/W):记录读、写和校验命令指定的起始扇区号。在LBA方式时,其记录的是LBA地址的低8位。

柱面号寄存器(R/W):由两个8位的寄存器组成,分别用来记录读、写、校验和寻址命令指定的柱面号的低8位和高8位。在LBA方式时,其记录的是LBA地址的8~23位。

驱动器/磁头寄存器(R/W):记录读、写、校验和寻道命令指定的驱动器号、磁头号和寻址方式(CHS模式或LBA模式)。在LBA方式时,其记录的是LBA地址的高4位。

状态寄存器(R)和命令寄存器(W):状态寄存器反映CF卡驱动器 执行命令后的状态,读该寄存器要清除中断请求信号。命令寄存器接 收主机发送的CF卡工作的命令控制字。

在Ture IDE mode下,A0 ,A1 ,A2 是CF 卡的寄存器寻址线,它们连接的并不是内存寻址空间。CF 卡内部空间的寻址是通过扇区号寄存器、柱面号寄存器和磁头号寄存器的数据来来标识不同的寄存器。

在True IDE Mode下CF卡寄存器的地址分配见表6-2:

表6-2 CF卡寄存器地址

CF卡的地址有两种形式:LBA(逻辑块地址)和CHS(柱面/磁头/扇区)。在LBA 方式下,系统隐藏扇区是不能访问的,能访问的扇区从物理的0柱面、0磁头、1扇区开始,而该扇区在LBA方式下为第0号扇区。所有的扇区依次统一编号。CHS(柱面/磁头/扇区)寻址时,直接输入相应的柱面/磁头/扇区数值就可以了。在LBA访问方式时,要将所要访问的逻辑扇区值转换成相应的物理磁道、柱面和扇区号。二者转换关系为:LBA地址=(柱面号×磁头数+磁头号)×扇区数+扇区数-1。

6.4.2 CF卡接口电路设计

CF卡的地址寄存器的都是8bit,通过16bit数据线的低8位传送。地址寄存器设置好后,接下来就是通过数据寄存器在缓冲区和主机之间传输16 位数据。CF卡的读写是通过卡内的缓冲区进行的,不支持直接读写存储区域。读取数据时,存储卡中的控制电路先把数据写入缓冲区,外部系统通过读缓冲区将数据读取出来。写数据时,外部系统先把数据写入缓冲区,写满后,CF卡将缓冲区的内容自动读入存储区域。缓冲区的读写以顺序读写的方式进行,不支持随机存取方式,因此,外部系统只能一次性地按顺序读完或写完一个扇区(512字节)。在LBA工作方式下,读取CF卡中的文件的步骤如下(写入与其类同):

(1)在目录表中找到要查找的文件名、开始簇以及文件大小;

(2)根据簇号在FAT1表中读出簇号对应的FAT1表项内容,该内容为下一簇号; (3)通过公式Y=N×X+MF(其中Y为文件在数据区中存放的地址,X为簇号,N为CF卡的一个簇包含N个扇区,MF为本CF存放文件的偏移量)计算出文件在数据区中存放的地址;

(4)写入地址,找到文件,并显示其内容. 读些扇区数据过程如图6-7所示:

图6-7 CF卡读写数据流程

首先,主机把执行命令过程中所需要的所有参数发送到地址寄存器和特性寄存器中,然后,主机再把操作码发送到命令寄存器中以开始读操作。接受到主机发来的读命令后,CF内置的驱动器首先设置状态寄存器中的BSY信号,并开始把

要传输的数据发送到扇区缓冲区。扇区缓冲区准备完毕之后,驱动器设置DRQ数据请求信号,通知主机可以从缓冲区中读取512字节的数据,同时清除BSY忙信号。与此同时,发送INTRQ中断请求信号。然后,主机开始读取状态寄存器,同时驱动器清除INTRQ中断请求信号。写操作与此基本类似。

6.5 键盘识别与扫描

6.5.1 键盘实现方案

(1)采用专门的芯片实现键盘扫描; (2)采用软件实现键盘扫描:

当开关打开时,通过处理器的I/O 口的一个上拉电阻提供逻辑1;当开关闭合时,处理器的I/O 口的输入将被拉低到逻辑0。

图6-8 软键盘实现键盘扫描示意图

6.5.2 矩阵键盘电路

一个瞬时接触开关(按钮)放置在每一行与每一列的交叉点。每一行由一个输出端口的一位驱动,每一列由一个电阻器上拉且供给输入端口一位。

联系合同范文客服:xxxxx#qq.com(#替换为@)