CF卡实现热插拔功能的方法及系统技术方案

技术编号:16233143 阅读:68 留言:0更新日期:2017-09-19 14:42
本发明专利技术公开了一种CF卡实现热插拔功能的方法及系统,涉及存储设备,该方法包括以下步骤:拔出CF卡时,应用程序设定等待拔卡动作的事件;拔卡前按下触发开关,拔卡时使CF卡控制器产生中断请求。CF卡热插拔驱动响应中断请求,触发等待拔卡动作的事件,并使指示信号灯闪动。应用程序切断对CF卡读写的进程,然后umountCF卡,再通知CF卡热插拔驱动卸载CF卡,最后设定等待插卡动作的事件。CF卡卸载完成后断电。插入CF卡时,CF卡控制器判断是否有卡插入,有卡插入则产生中断请求。CF卡热插拔驱动响应中断请求,给CF卡上电,对CF卡进行初始化。CF卡识别完成后,触发等待插卡动作的事件。应用程序mount CF卡,启动读写CF卡的进程。本发明专利技术能实现CF卡的热插拔功能。

Method and system for realizing hot swap function CF card

The invention discloses a method and system for realizing hot swap function of a CF card, relates to a storage device, the method comprises the following steps: Unplug the CF card, the application for setting card action events; pull the card before pressing the trigger switch, pull the card when the CF card controller generates an interrupt request. CF hot swappable drive response triggered interrupt request, waiting to pull the card action events, and make the lights flashing. Application of CF card reader cutting process, then the umountCF card, and then notify the CF card hot plug DriverUnload CF, finally set the event card waiting for action. CF after completion of unloading of power. Insert CF, CF card controller to determine whether there is a card inserted into the card is inserted, generating an interrupt request. CF hot swappable drive response interrupt request to power on initialization of the CF card, CF card. CF card identification is completed, waiting for the action of the event trigger card. The application of Mount CF, CF card read and write process start. The hot swap function of the invention can realize the CF card.

【技术实现步骤摘要】
CF卡实现热插拔功能的方法及系统
本专利技术涉及存储设备领域,具体涉及一种CF卡实现热插拔功能的方法及系统。
技术介绍
CF卡(CompactFlash)最初是一种用于便携式电子设备的数据存储设备。作为一种存储设备,它革命性的使用了闪存,于1994年首次由SanDisk公司生产并制定了相关规范。当前,它的物理格式已经被多种设备所采用。CF卡具有比其它存储方式更长的寿命以及较低的单位容量成本,同时也可以在较小的尺寸上提供较大的容量。但是CF卡无热插拔功能,不像U盘,SATA卡带有热插拔功能。在使用的过程中难免出现需要带电插板的情况。热插拔期间由于VCC电源电压和地电平的变化,会在信号总线上引入共模噪声,造成数据通信错误,系统意外复位,甚至是导致元器件损坏。
技术实现思路
针对现有技术中存在的缺陷,本专利技术的目的在于提供一种CF卡实现热插拔功能的方法。为达到以上目的,本专利技术采取的技术方案是:一种CF卡实现热插拔功能的方法,该方法包括以下步骤:当需要拔出CF卡时,应用程序通过CF卡热插拔驱动提供的接口,设定一个等待拔卡动作的事件;在拔卡前,先按下触发开关,然后再拔卡,使CF卡控制器产生一个中断请求;CF卡热插拔驱动响应该中断请求,并触发等待拔卡动作的事件,唤醒应用程序,同时通过CF卡热插拔驱动使指示信号灯闪动;应用程序唤醒后首先切断对CF卡读写的进程,然后umountCF卡,再通知CF卡热插拔驱动进行卸载CF卡,最后由应用程序设定一个等待插卡动作的事件;CF卡热插拔驱动卸载CF卡,卸载完成后通过CF卡热插拔驱动和电源控制芯片给CF卡断电,使指示信号灯停止闪动;当需要插入CF卡时,CF卡控制器通过检查CF卡的在位指示信号来判断是否有卡插入,CF卡在位则产生一个中断请求;CF卡热插拔驱动响应该中断请求,同时通过CF卡热插拔驱动和电源控制芯片给CF卡上电,并调用卡识别函数对CF卡进行初始化;CF卡识别完成后,触发等待插卡动作的事件,唤醒应用程序;应用程序mountCF卡,然后启动读写CF卡的进程。在上述技术方案的基础上,应用程序通过CF卡热插拔驱动提供的ioctl接口,设定一个等待拔卡动作的事件。在上述技术方案的基础上,CF卡热插拔驱动写入一个reg文件使指示信号灯闪动。在上述技术方案的基础上,CF卡热插拔驱动写入一个reg文件,切断电源控制芯片的开关给CF卡断电,使指示信号灯停止闪动。在上述技术方案的基础上,当CF卡控制器持续一段时间检测到CF卡在位后产生一个中断请求。在上述技术方案的基础上,CF卡热插拔驱动调用fdisk–l命令对CF卡进行初始化。在上述技术方案的基础上,当CF卡完全拔下,并且持续3秒钟后,再由CF卡控制器产生一个中断请求。与此同时,本专利技术还提供一种CF卡实现热插拔功能的系统。为达到以上目的,本专利技术采取的技术方案是:一种CF卡实现热插拔功能的系统,包括:指示信号灯,其用于通过闪动提示是否可进行拔卡操作;CF卡控制器,其用于在拔卡或插卡操作时产生一个中断请求;触发开关,其与所述CF卡控制器相连,用于驱使所述CF卡控制器产生中断请求;电源控制芯片,其用于为所述CF卡和CF卡控制器供电;应用程序,其用于设定等待拔卡动作的事件和等待插卡动作的事件;以及CF卡热插拔驱动,其用于响应所述CF卡控制器产生的中断请求、触发所述等待拔卡动作的事件或等待插卡动作的事件,以及控制所述电源控制芯片为CF卡断电或上电,执行对所述CF卡的卸载,所述CF卡热插拔驱动还用于控制指示信号灯的闪动。在上述技术方案的基础上,所述电源控制芯片包括输入端和输出端,所述输入端与所述控制器相连,所述输出端与所述CF卡相连。与现有技术相比,本专利技术的优点在于:本专利技术中的CF卡实现热插拔功能的方法,通过CF卡控制器、触发开关、电源控制芯片、应用程序和CF卡热插拔驱动之间的联动,能够在不切断电源的情况下拔下CF卡,提高了灵活性。与此同时,插入CF卡时可自动对CF卡进行识别,实现了CF卡的热插拔功能。附图说明图1为本专利技术中拔卡步骤的流程图;图2为本专利技术中插卡步骤的流程图;图3为本专利技术中CF卡实现热插拔功能的系统的结构框图。具体实施方式以下结合附图对本专利技术作进一步详细说明。本专利技术提供一种CF卡实现热插拔功能的方法,参见图1所示,其拔卡步骤为:S11.当需要拔出CF卡时,应用程序通过CF卡热插拔驱动提供的接口,设定一个等待拔卡动作的事件;应用程序设定一个等待拔卡动作的事件后,便等待拔卡动作,当拔卡动作未发生时,应用程序处于睡眠状态。此外,本专利技术中的CF卡热插拔驱动提供的接口为ioctl接口,这样应用层的ioctl函数传入的cmd和arg参数会直接传入驱动层的ioctl接口。S12.在拔卡前,先按下触发开关,然后再拔卡,使CF卡控制器产生一个中断请求;本专利技术中当CF卡完全拔下,并且持续3秒钟后,再由CF卡控制器产生一个中断请求。S13.CF卡热插拔驱动响应该中断请求,并触发等待拔卡动作的事件,唤醒应用程序,同时通过CF卡热插拔驱动使指示信号灯闪动;本专利技术中,CF卡热插拔驱动写入一个reg文件使指示信号灯闪动。S14.应用程序唤醒后首先切断对CF卡读写的进程,然后umountCF卡,再通知CF卡热插拔驱动进行卸载CF卡,最后由应用程序设定一个等待插卡动作的事件;umount命令主要用于卸载已经加载的文件系统,mount命令主要用于加载文件系统。此外,应用程序设定一个等待插卡动作的事件后,只要等待插卡动作的事件未发生,则应用程序处于睡眠状态。S15.CF卡热插拔驱动卸载CF卡,卸载完成后通过CF卡热插拔驱动和电源控制芯片给CF卡断电,使指示信号灯停止闪动;本专利技术中,CF卡热插拔驱动写入一个reg文件,切断电源控制芯片的开关给CF卡断电,使指示信号灯停止闪动。参见图2所示,其插卡步骤为:S21.当需要插入CF卡时,CF卡控制器通过检查CF卡的在位指示信号来判断是否有卡插入,CF卡在位则产生一个中断请求;当CF卡控制器持续一段时间检测到CF卡在位后产生一个中断请求。具体的,在插卡的时,CF卡控制器通过检查CF卡的在位指示信号CD<1..2>来判断是否有卡插入,在位指示信号CD<1..2>的作用是判断CF卡是否在位。当CF卡控制器持续一段时间检测到CF卡在位后,产生一个中断请求,本专利技术中持续的时间为3S。S22.CF卡热插拔驱动响应该中断请求,同时通过CF卡热插拔驱动和电源控制芯片给CF卡上电,并调用卡识别函数对CF卡进行初始化;本专利技术采用的是linux中的fdisk–l命令来对CF卡进行初始化的。S23.CF卡识别完成后,触发等待插卡动作的事件,唤醒应用程序;S24.应用程序mountCF卡,然后启动读写CF卡的进程。采用上述方式后,能够在不切断电源的情况下拔下CF卡,提高了灵活性。与此同时,插入CF卡时可自动对CF卡进行识别,从而实现了CF卡的热插拔功能。参见图3所示,本专利技术还提供一种CF卡实现热插拔功能的系统,包括指示信号灯、CF卡控制器、触发开关、电源控制芯片、应用程序和CF卡热插拔驱动。指示信号灯,其用于通过闪动提示是否可进行拔卡操作。CF卡控制器,其用于在拔卡或插卡操作时产生一个中断请求。触发开关,其与CF卡控制器相连,用于本文档来自技高网...
CF卡实现热插拔功能的方法及系统

【技术保护点】
一种CF卡实现热插拔功能的方法,其特征在于,该方法包括以下步骤:当需要拔出CF卡时,应用程序通过CF卡热插拔驱动提供的接口,设定一个等待拔卡动作的事件;在拔卡前,先按下触发开关,然后再拔卡,使CF卡控制器产生一个中断请求;CF卡热插拔驱动响应该中断请求,并触发等待拔卡动作的事件,唤醒应用程序,同时通过CF卡热插拔驱动使指示信号灯闪动;应用程序唤醒后首先切断对CF卡读写的进程,然后umount CF卡,再通知CF卡热插拔驱动进行卸载CF卡,最后由应用程序设定一个等待插卡动作的事件;CF卡热插拔驱动卸载CF卡,卸载完成后通过CF卡热插拔驱动和电源控制芯片给CF卡断电,使指示信号灯停止闪动;当需要插入CF卡时,CF卡控制器通过检查CF卡的在位指示信号来判断是否有卡插入,CF卡在位则产生一个中断请求;CF卡热插拔驱动响应该中断请求,同时通过CF卡热插拔驱动和电源控制芯片给CF卡上电,并调用卡识别函数对CF卡进行初始化;CF卡识别完成后,触发等待插卡动作的事件,唤醒应用程序;应用程序mount CF卡,然后启动读写CF卡的进程。

【技术特征摘要】
1.一种CF卡实现热插拔功能的方法,其特征在于,该方法包括以下步骤:当需要拔出CF卡时,应用程序通过CF卡热插拔驱动提供的接口,设定一个等待拔卡动作的事件;在拔卡前,先按下触发开关,然后再拔卡,使CF卡控制器产生一个中断请求;CF卡热插拔驱动响应该中断请求,并触发等待拔卡动作的事件,唤醒应用程序,同时通过CF卡热插拔驱动使指示信号灯闪动;应用程序唤醒后首先切断对CF卡读写的进程,然后umountCF卡,再通知CF卡热插拔驱动进行卸载CF卡,最后由应用程序设定一个等待插卡动作的事件;CF卡热插拔驱动卸载CF卡,卸载完成后通过CF卡热插拔驱动和电源控制芯片给CF卡断电,使指示信号灯停止闪动;当需要插入CF卡时,CF卡控制器通过检查CF卡的在位指示信号来判断是否有卡插入,CF卡在位则产生一个中断请求;CF卡热插拔驱动响应该中断请求,同时通过CF卡热插拔驱动和电源控制芯片给CF卡上电,并调用卡识别函数对CF卡进行初始化;CF卡识别完成后,触发等待插卡动作的事件,唤醒应用程序;应用程序mountCF卡,然后启动读写CF卡的进程。2.如权利要求1所述的CF卡实现热插拔功能的方法,其特征在于:应用程序通过CF卡热插拔驱动提供的ioctl接口,设定一个等待拔卡动作的事件。3.如权利要求1所述的CF卡实现热插拔功能的方法,其特征在于:CF卡热插拔驱动写入一个reg文件使指示信号灯闪动。4.如权利要求1所述的CF卡实现热插...

【专利技术属性】
技术研发人员:陈利玲
申请(专利权)人:烽火通信科技股份有限公司
类型:发明
国别省市:湖北,42

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1