System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种以防病毒形式的FatFs快速读取SD卡大文件数据的方法技术_技高网

一种以防病毒形式的FatFs快速读取SD卡大文件数据的方法技术

技术编号:41533950 阅读:12 留言:0更新日期:2024-06-03 23:11
本发明专利技术涉及存储设备读取装置技术领域,尤其涉及一种以防病毒形式的FatFs快速读取SD卡大文件数据的方法,本发明专利技术提出以下方案,首先计算机通过预先安装的USB主机驱动程序将专有防病毒读卡器识别为CH375设备,其次通过专有软件与CH375设备进行通信,将待读文件数据发送至CH375设备,CH375设备进行解析,最后CH375设备对解析的指令进行识别,如果是读取文件指令,根据文件读取策略通过SD卡驱动程序读取指定扇区数据,如果是写入文件指令,通过SD卡驱动程序写入到SD卡指定扇区中。

【技术实现步骤摘要】

本专利技术涉及存储设备读取装置,尤其涉及一种以防病毒形式的fatfs快速读取sd卡大文件数据的方法。


技术介绍

1、在医院经常使用各种医疗设备,比如要读取动态心电记录器的sd卡数据,在读取的时候需要配上读卡器才可以使用,用读卡器可以方便的对sd卡进行数据的读取。问题在于sd卡通过读卡器连接到电脑后,若电脑已经感染了病毒,则sd卡等存储设备有很大可能性会感染病毒。存储卡感染病毒是已经感染病毒的电脑将病毒传播给存储卡等设备的。虽然目前有针对sd卡进行防病毒的方案,但这类方案大多通过直接杀灭病毒等方式来起防病毒的功能,若病毒库的更新没有病毒的进化快,还是经常会发生病毒感染的事故。

2、例如授权公告号为cn 211698950 u的中国专利公开了一种防病毒读卡器,包括有usb控制器电路、sd卡电路、flash芯片数据读取电路和电源电路,usb控制器电路采用usb3.0芯片u2,其型号为cyusb3035;flash芯片数据读取电路采用芯片stm32l476,其通过8位并口与usb3.0芯片cysb3035连接通讯。本技术采用usb3.0芯片cysb3035作为usb控制器的控制芯片,采用芯片stm32l476作为微控制器芯片,并结合计算机中以特定的api函数构成的私有通信协议,使得计算机通过读卡器对记录医疗数据的sd卡或flash芯片等存储卡进行读取时,不通过fat等文件系统访问存储卡数据,而是使用api函数通过对读卡器进行操作,从而避免存储卡感染病毒,并且电脑不会被存储卡感染病毒。但此专利通用性差,无法对医院已有以fatfs形式sd卡设备进行数据读取。

3、以上专利均存在本
技术介绍
提出的问题:对于医院已有的fatfs形式sd卡设备,如动态心电记录器进行数据读写操作,尤其是动态心电记录器记录时间长,单个文件数据大的特点,读取时不能单个地址读取,速度较慢。目前cn 211698950u的中国专利公开的防病毒读卡器没有文件系统,无法进行文件管理和数据恢复,为解决以上问题,本申请设计了一种以防病毒形式的fatfs快速读取sd卡大文件数据的方法。


技术实现思路

1、本专利技术所要解决的技术问题是针对现有技术的不足,提供了一种以防病毒形式的fatfs快速读取sd卡大文件数据的方法,首先计算机通过预先安装的usb主机驱动程序将专有防病毒读卡器识别为ch375设备,其次通过专有软件与ch375设备进行通信,将待读文件数据发送至ch375设备,ch375设备进行解析,最后ch375设备对解析的指令进行识别,如果是读取文件指令,根据文件读取策略通过sd卡驱动程序读取指定扇区数据,如果是写入文件指令,通过sd卡驱动程序写入到sd卡指定扇区中。

2、为实现上述目的,本专利技术提供如下技术方案:

3、一种以防病毒形式的fatfs快速读取sd卡大文件数据的方法,包括以下步骤;

4、s1:将sd卡插入专有防病毒读卡器的卡槽,专有防病毒读卡器通过usb2.0接口接入计算机,计算机通过预先安装的usb主机驱动程序将专有防病毒读卡器识别为ch375设备;

5、s2:计算机通过专有软件与ch375设备进行通信,通过私有usb协议将待读文件数据发送至ch375设备,ch375设备进行解析;

6、s3:ch375设备对解析的指令进行识别,如果是读取文件指令,根据文件读取策略通过sd卡驱动程序读取指定扇区数据,如果是写入文件指令,通过sd卡驱动程序写入到sd卡指定扇区中;

7、所述专有防病毒读卡器包括内核mcu、usb控制程序、sd卡驱动程序、通用fatfs文件系统和电源电路;

8、所述内核mcu采用ch32v307,工作频率144mhz赫兹,包括高速存储器、定时器、增强型i/o端口、adc模块、dac模块、专有通讯接口和can控制器,所述sd卡驱动程序采用支持4位sd模式的sd存储卡接口,所述电源电路包括3.3v电源电路和1.2v电源电路,所述3.3v电源电路采用线性稳压芯片u3,所述1.2v电源电路采用线性稳压芯片u7,所述通用fatfs文件系统具有fat表备份,当其中一个fat表损坏时,仍然可以用另一个fat表来访问数据区中的数据。此外,fat表和目录区必须存储在固定位置,以便系统启动文件能够正确定位,当文件损坏时可以快速恢复文件;

9、所述s2具体步骤如下:

10、s2.1:计算机通过专有软件与ch375设备进行通信,通过f_readdir函数获取sd卡中目录区的文件名;

11、s2.2:计算机收集待读写文件数据,并调用专有软件的fatfsapi函数;

12、s2.3:fatfsapi函数的底层接口函数根据私有usb协议对待读写文件数据进行校验和封装,并通过usb主机驱动程序发送至ch375设备的usb控制程序;

13、s2.4:内核mcu从usb控制程序获取封装后的待读文件数据,并进行解析,对指令进行识别;

14、所述计算机通过专有软件与ch375设备进行通信,通过专有软件程序中的fat解析功能,对sd卡的fatfs文件系统进行移植,专有软件通过内置fatfs文件系统,底层函数与ch375设备通讯,直接读写对应的sd卡扇区;

15、所述对指令进行识别包括读取文件指令和写入文件指令;

16、所述待读写文件数据包括待读的sd扇区地址和数量、待写的文件数据和sd扇区地址,所述底层接口函数包括disk_read函数和disk_write函数,所述disk_read函数用于对待读取的sd扇区地址和数量进行封装,在disk_read()函数内部,私有usb协议将待读取的sd扇区地址和数量封装好,然后通过usb驱动程序api(ch375writedata)将封装好的数据包发送给v307,最后通过usb驱动程序api(ch375readdata)接收从v307发送过来的待读取扇区数据,所述disk_write函数用于对待写入的sd扇区地址和文件数据进行封装,在disk_write()函数内部,私有usb协议将待写入的sd扇区地址和数量封装好,然后通过usb驱动程序api(ch375writedata)将封装好的数据包和待写入扇区数据发送给v307;

17、所述文件读取策略具体步骤如下:

18、s8.1:根据待读取文件的文件名和sd扇区地址,专有软件通过f_readsect函数获取文件的所有簇地址并保存;

19、s8.2:对簇地址进行判断,是否为连续簇,如果是连续簇则继续遍历下一个簇地址,如果不是连续簇,将连续簇的起始地址和结束地址进行保存,并根据保存的地址进行文件数据读取;

20、s8.3:usb驱动程序读取文件后判断文件标识符和检验值是否正确,如果不正确,丢弃该文件数据,如果正确,usb驱动程序将文件数据发送至计算机;

21、所述s8.3具体步骤如下:

22、s8.3.1:读取sd卡文件数据时首先读本文档来自技高网...

【技术保护点】

1.一种以防病毒形式的FatFs快速读取SD卡大文件数据的方法,其特征在于,包括以下步骤;

2.根据权利要求1所述一种以防病毒形式的FatFs快速读取SD卡大文件数据的方法,其特征在于,所述专有防病毒读卡器包括内核MCU、USB控制程序、SD卡驱动程序、通用FatFs文件系统和电源电路。

3.根据权利要求2所述一种以防病毒形式的FatFs快速读取SD卡大文件数据的方法,其特征在于,所述内核MCU采用CH32V307,工作频率144MHZ赫兹,包括高速存储器、定时器、增强型I/O端口、ADC模块、DAC模块、专有通讯接口和CAN控制器,所述SD卡驱动程序采用支持4位SD模式的SD存储卡接口,所述电源电路包括3.3V电源电路和1.2V电源电路,所述3.3V电源电路采用线性稳压芯片U3,所述1.2V电源电路采用线性稳压芯片U7,所述通用FatFs文件系统具有FAT表备份。

4.根据权利要求3所述一种以防病毒形式的FatFs快速读取SD卡大文件数据的方法,其特征在于,所述S2具体步骤如下:

5.根据权利要求4所述一种以防病毒形式的FatFs快速读取SD卡大文件数据的方法,其特征在于,所述计算机通过专有软件与CH375设备进行通信,通过专有软件程序中的FAT解析功能,对SD卡的FatFs文件系统进行移植,专有软件通过内置FatFs文件系统,底层函数与CH375设备通讯,直接读写对应的SD卡扇区。

6.根据权利要求5所述一种以防病毒形式的FatFs快速读取SD卡大文件数据的方法,其特征在于,所述对指令进行识别包括读取文件指令和写入文件指令。

7.根据权利要求6所述一种以防病毒形式的FatFs快速读取SD卡大文件数据的方法,其特征在于,所述待读写文件数据包括待读的SD扇区地址和数量、待写的文件数据和SD扇区地址,所述底层接口函数包括disk_read函数和disk_write函数,所述disk_read函数用于对待读取的SD扇区地址和数量进行封装,所述disk_write函数用于对待写入的SD扇区地址和文件数据进行封装。

8.根据权利要求7所述一种以防病毒形式的FatFs快速读取SD卡大文件数据的方法,其特征在于,所述文件读取策略具体步骤如下:

9.根据权利要求8所述一种以防病毒形式的FatFs快速读取SD卡大文件数据的方法,其特征在于,所述S8.3具体步骤如下:

...

【技术特征摘要】

1.一种以防病毒形式的fatfs快速读取sd卡大文件数据的方法,其特征在于,包括以下步骤;

2.根据权利要求1所述一种以防病毒形式的fatfs快速读取sd卡大文件数据的方法,其特征在于,所述专有防病毒读卡器包括内核mcu、usb控制程序、sd卡驱动程序、通用fatfs文件系统和电源电路。

3.根据权利要求2所述一种以防病毒形式的fatfs快速读取sd卡大文件数据的方法,其特征在于,所述内核mcu采用ch32v307,工作频率144mhz赫兹,包括高速存储器、定时器、增强型i/o端口、adc模块、dac模块、专有通讯接口和can控制器,所述sd卡驱动程序采用支持4位sd模式的sd存储卡接口,所述电源电路包括3.3v电源电路和1.2v电源电路,所述3.3v电源电路采用线性稳压芯片u3,所述1.2v电源电路采用线性稳压芯片u7,所述通用fatfs文件系统具有fat表备份。

4.根据权利要求3所述一种以防病毒形式的fatfs快速读取sd卡大文件数据的方法,其特征在于,所述s2具体步骤如下:

5.根据权利要求4所述一种以防病毒形式的fatfs快速读取sd卡大文件数据的方法,其特征在于,所...

【专利技术属性】
技术研发人员:刘佳桐李力飞
申请(专利权)人:广州迪茂信息科技有限公司
类型:发明
国别省市:

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

1