CN113590499B - 血液分析仪及其数据处理方法、计算机存储介质 - Google Patents
血液分析仪及其数据处理方法、计算机存储介质 Download PDFInfo
- Publication number
- CN113590499B CN113590499B CN202010362692.XA CN202010362692A CN113590499B CN 113590499 B CN113590499 B CN 113590499B CN 202010362692 A CN202010362692 A CN 202010362692A CN 113590499 B CN113590499 B CN 113590499B
- Authority
- CN
- China
- Prior art keywords
- time sequence
- microcontroller
- timing
- memory
- command
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 239000008280 blood Substances 0.000 title claims abstract description 61
- 210000004369 blood Anatomy 0.000 title claims abstract description 61
- 238000003672 processing method Methods 0.000 title claims abstract description 47
- 238000000034 method Methods 0.000 claims abstract description 51
- 238000004159 blood analysis Methods 0.000 claims abstract description 19
- 238000013500 data storage Methods 0.000 claims description 17
- 238000013524 data verification Methods 0.000 claims description 5
- 239000000523 sample Substances 0.000 claims 2
- 239000000758 substrate Substances 0.000 claims 2
- 238000001514 detection method Methods 0.000 description 11
- 230000008569 process Effects 0.000 description 10
- 238000012795 verification Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 238000012360 testing method Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000002035 prolonged effect Effects 0.000 description 3
- 101100214663 Sulfolobus spindle-shape virus 1 a100 gene Proteins 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000003756 stirring Methods 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 239000003153 chemical reaction reagent Substances 0.000 description 1
- 238000004140 cleaning Methods 0.000 description 1
- 210000001072 colon Anatomy 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
- G06F8/654—Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4406—Loading of operating system
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16H—HEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
- G16H40/00—ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices
- G16H40/40—ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices for the management of medical equipment or devices, e.g. scheduling maintenance or upgrades
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Computer Security & Cryptography (AREA)
- Business, Economics & Management (AREA)
- General Business, Economics & Management (AREA)
- Biomedical Technology (AREA)
- Databases & Information Systems (AREA)
- Primary Health Care (AREA)
- Public Health (AREA)
- Medical Informatics (AREA)
- General Health & Medical Sciences (AREA)
- Epidemiology (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Investigating Or Analysing Biological Materials (AREA)
Abstract
本申请公开了血液分析仪及其数据处理方法、计算机存储介质,血液分析仪包括主机、微控制器和存储器,存储器用于存储时序包,微控制器用于执行时序包中的时序文件,以实现血液分析,该方法包括:微控制器接收主机发送的调用指令;微控制器基于调用指令从存储器中获取第一时序;以及执行第一时序。通过上述方式,一方面减少对总线的资源占用;另一方面,实现血液分析仪同时对多个时序命令的执行,完成多个血液分析项目的同时进行,提升血液分析仪运行速度,增加工作效率。
Description
技术领域
本申请涉及医疗设备技术领域,特别是涉及一种血液分析仪及其数据处理方法、计算机存储介质。
背景技术
血液分析仪一般是利用时序数据来实现血液分析,一般是血液分析仪中的MCU(Microcontroller Unit,微控制单元)根据时序数据下发具体的驱动指令给如注射器、阀、泵等部件,注射器、阀、泵等部件再根据驱动指令执行具体操作,以完成血液检测的功能。受限于存储资源,导致MCU不能储存大量数据,因此,在存储时序文件时,也只能存储较少的时序文件。
而现在的血液分析仪发展迅速,一般的血液分析仪设置有多个检测通道,在同一时刻可能需要运行多条指令,以实现不同通道的血液分析,MCU无法满足需求且主机在同一时刻需要下发多个时序文件,会占用总线大量资源,影响分析效率。
发明内容
为了解决上述问题,本申请提供一种血液分析仪及其数据处理方法、计算机存储介质,一方面减少对总线的资源占用;另一方面,实现血液分析仪同时对多个时序命令的执行,完成多个血液分析项目的同时进行,提升血液分析仪运行速度,增加工作效率。
本申请采用的一种技术方案是提供一种血液分析仪的数据处理方法,血液分析仪包括主机、微控制器和存储器,存储器用于存储时序包,微控制器用于执行时序包中的时序文件,以实现血液分析,该方法包括:微控制器接收主机发送的调用指令;微控制器基于调用指令从存储器中获取第一时序;以及执行第一时序。
其中,存储器包括地址索引区和数据储存区;微控制器基于调用指令从存储器中获取第一时序,包括:微控制器在接收到基于目标时序的调用指令后,在地址索引区查找目标时序的储存地址;微控制器基于目标时序的储存地址在数据储存区查找目标时序;微控制器接收主机发送的读取指令,并基于读取指令从存储器中读取目标时序的时序命令;执行第一时序,包括:执行时序命令。
其中,存储器还包括数据校验区;该方法还包括:在血液分析仪启动时,微控制器从数据校验区中获取存储的时序包的版本号;微控制器将版本号发送至主机,以使主机判断版本号与目标版本是否匹配;若否,则主机向微控制器发送与目标版本对应的时序包。
其中,主机向微控制器发送与目标版本对应的时序包之后,包括:微控制器清除存储器中的当前时序包;微控制器将主机发送的与目标版本对应的时序包存储至存储器,以使存储器为时序包在地址索引区、数据储存区和数据校验区建立对应关系。
其中,基于调用指令从存储器中获取第一时序之后,还包括:检测内部存储单元中是否存储有与第一时序相匹配的第二时序;若没有,则执行第一时序中的时序命令;若有,则执行第二时序中的时序命令。
其中,检测内部存储单元中是否存储有与第一时序相匹配的第二时序,包括:从第一时序中读取第一时序命令以及第一序号存放至内部存储单元的地址空间;从内部存储单元的第二时序中读取第二时序命令以及第二序号;判断第一序号和第二序号是否相同;若相同,确认内部存储单元中有与第一时序相匹配的第二时序,则执行第二时序命令;若不相同,确认内部存储单元中没有与第一时序相匹配的第二时序,则执行第一时序命令。
其中,执行第一时序命令之后,包括:获取第一时序的下一时序命令在存储器中的储存地址;判断储存地址是否超过结束地址;若是,则结束执行时序操作,并向主机发送第一时序执行结束消息,清除内部存储单元中的地址空间。
其中,执行第二时序命令之后,包括:获取第二时序的下一时序命令在内部存储单元中的储存地址;判断储存地址是否超过结束地址;
若是,结束执行时序操作,并向主机发送第二时序执行结束消息,清除第二时序。
本申请采用的另一种技术方案是提供一种血液分析仪,该血液分析仪包括主机、微控制器以及与微控制器耦接的存储器,存储器用于存储时序包,微控制器用于执行时序包中的时序文件,以实现血液分析;其中,主机和/或微控制器中包括程序数据,程序数据在被主机和/或微控制器执行时,用于实现如上述方案中提供的方法。
本申请采用的另一种技术方案是提供一种计算机存储介质,该计算机存储介质用于存储程序数据,程序数据在被主机和/或微控制器执行时,用于实现如上述方案中提供的方法。
本申请的有益效果是:区别于现有技术的情况,本申请的一种血液分析仪的数据处理方法,血液分析仪包括主机、微控制器和存储器,存储器用于存储时序包,微控制器用于执行时序包中的时序文件,以实现血液分析,该方法包括:微控制器接收主机发送的调用指令;微控制器基于调用指令从存储器中获取第一时序;以及执行第一时序。通过上述方式,一方面由于将时序包存储于存储器中,无需主机向微控制器发送时序文件,而只需要发送调用指令即可,因此,减少主机下发时序文件的次数,由此减少对总线的资源占用;另一方面,基于存储器来进行时序包的存储,以便于微控制器对时序包中多个时序文件中的命令进行调用,在微控制器存储容量有限的情况可以存储多个时序文件中的当前需要执行的时序命令并进行执行,实现血液分析仪同时对多个时序命令的执行,完成多个血液分析项目的同时进行,提升血液分析仪运行速度,增加工作效率。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。其中:
图1是本申请提供的血液分析仪一实施例的结构示意图;
图2是本申请提供的数据处理方法第一实施例的流程示意图;
图3是本申请提供的数据处理方法第二实施例的流程示意图;
图4是本申请提供的数据处理方法第三实施例的流程示意图;
图5是本申请提供的数据处理方法第四实施例的流程示意图;
图6是本申请提供的数据处理方法第五实施例的流程示意图;
图7是本申请提供的数据处理方法第六实施例的流程示意图;
图8是本申请提供的数据处理方法第七实施例的流程示意图;
图9是本申请提供的数据处理方法第八实施例的流程示意图;
图10是本申请提供的数据处理方法第九实施例的流程示意图;
图11是本申请提供的数据处理方法第五实施例的流程示意图;
图12是本申请提供的数据处理方法第十实施例的流程示意图;
图13是本申请提供的数据处理方法第十一实施例的流程示意图;
图14是步骤137之后的流程示意图;
图15是步骤138之后的流程示意图;
图16是本申请提供的数据处理方法第十二实施例的流程示意图;
图17是本申请提供的数据处理方法第十三实施例的流程示意图;
图18是本申请提供的血液分析仪一实施例的结构示意图;
图19是本申请提供的计算机存储介质的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。可以理解的是,此处所描述的具体实施例仅用于解释本申请,而非对本申请的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本申请相关的部分而非全部结构。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
参阅图1,图1是本申请提供的血液分析仪一实施例的结构示意图,该血液分析仪10包括主机11、微控制器12和存储器13。
其中,主机11与微控制器12连接,用于向微控制器12发送相应的指令,以使微控制器12响应该指令,执行相关操作。
存储器13用于存储时序内容。
微控制器12与存储器13连接,用于在接收到主机11发送相应的指令时,基于该指令从存储器13中调用相应的时序。
在一些实施例中,存储器13可以是外接存储器,与微控制端可插拔连接;存储器13也可以是内置存储器,与微控制端电连接。其中,存储器13的存储容量大于微控制器12的内部存储单元的存储容量。
在一些实施例中,在血液分析仪10启动后,主机11可以向微控制器12下达控制命令以使微控制12响应控制命令从存储器13中调用相应的时序,并控制血液分析仪的各个部件如注射器、搅拌器等执行相应的时序。
如存储器13中的时序内容分为时序块A、时序B、时序块C,主机11向微控制器12下达控制命令需要执行时序块A,微控制器12则从存储器13中调用找到时序块A并进行调用,然后根据时序块A的内容,控制相应的部件进行响应。如时序块A的内容为“控制注射器向搅拌器中注入10毫升的试剂,在注射器归位后控制搅拌器进行搅拌,搅拌完成后控制采样针对搅拌器中的溶液采样5毫升,并注入反应区”,则微控制器12按照此内容控制相应的部件进行执行。
在一些实施例中,血液分析仪10一般采用的方案是主机下发时序文件给MCU(Microcontroller Unit,微控制单元),再由MCU解析时序文件中的时序命令以此下发具体的驱动指令给如注射器、阀、泵等部件,注射器、阀、泵等部件再根据驱动指令执行具体操作,以完成血液检测的功能。血液分析仪设置有多个检测通道,在同一时刻可能需要运行多条指令。如果还是采用现有的方式进行通讯,主机在同一时刻需要下发多个时序,会占用总线大量资源,影响速度。并且当多组血液分析仪内的部件都需要执行操作时,主机需要下发多个时序文件,由于MCU存储空间不够。无法存储多个时序文件,会造成超出存储容量的其他时序文件的丢失,无法正常进行检测,且主机下发多个时序文件给MCU的过程中,会占用总线的大量资源,影响速度。所以使用存储器13来独立存储时序文件,减少主机下发时序文件的次数,由此减少对总线的资源占用。
参阅图2,图2是本申请提供的数据处理方法第一实施例的流程示意图,该数据处理方法包括:
步骤21:微控制器接收主机基于目标标识信息的查询指令。
在血液分析仪启动时,主机发送查询指令到微控制器,微控制器接收主机基于目标标识信息的查询指令。
可选的,主机与微控制器之间通过总线连接,主机将查询指令发送到总线上。微控制器在接收到查询指令后确认是否相匹配,从而基于查询指令获取相对应的数据。
步骤22:微控制器基于查询指令获取存储器的当前标识信息,并将当前标识信息发送给主机,以使主机判断目标标识信息与当前标识信息是否相同。
微控制器接收到查询指令后,对该查询指令进行解析,获取该查询指令中的关键信息,按照关键信息进行下一步操作。
可选的,查询指令对应的操作为获取存储器的当前标识信息。
可选的,标识信息可以是:存储器的序列号、存储器中时序包的版本号等,这里不作限制。
在一实施例中,存储器的标识信息是由时序文件通过特定算法计算出的MD5(Message Digest Algorithm MD5,消息摘要算法)值。主机获取到存储器的当前标识信息MD5值后,与主机的目标标识信息MD5值进行比较,若MD5值相同,则进行其他流程的操作,若MD5值不相同,则执行步骤23。
具体来说文件的MD5值就像是这个文件的“数字指纹”。每个文件的MD5值是不同的,如果任何人对文件做了任何改动,其MD5值也就是对应的“数字指纹”就会发生变化。比如下载服务器针对一个文件预先提供一个MD5值,用户下载完该文件后,使用预设算法重新计算该文件的MD5值,通过比较这两个值是否相同,就能判断下载的文件是否出错,或者说下载的文件是否被篡改了。
在其他实施例中,标识信息的可以是其他方式的值,但是标识信息必须是具有唯一性,才能保证存储器的时序文件的有效。
步骤23:微控制器接收主机发送的第一时序包,以对存储器中的第二时序包进行更新。
其中,第一时序包与上述的目标标识信息相对应,第二时序包与上述的当前标识信息相对应。
在本实施例中提到的时序包包括多个时序文件,每个时序文件中包括多个时序命令。如时序包包括时序文件A、B、C、D。对应的时序文件A包括时序命令a、b、c、d等,对应的时序文件B包括时序命令e、f、g、h等,对应的时序文件C包括时序命令i、j、k、l等,对应的时序文件D包括时序命令m、n、o、p等。
在上述步骤22中,主机判断目标标识信息与存储器的当前标识信息不相同时,需要进行时序包更新动作。微控制器接收主机发送的第一时序包,以对存储器中的第二时序包进行更新。
更新完成后,主机可以进行时序调用,微控制器响应调用指令从存储器获取相应的时序文件中的时序命令后,执行该时序命令,按照时序文件中时序命令的顺序有序的执行。
通过使用存储器进行时序包的存储,以便于微控制器对时序包中多个时序文件中的命令进行调用,在微控制器存储容量有限的情况可以存储多个时序文件中的当前需要执行的时序命令,因此能够实现血液分析仪同时对多个时序命令的执行。在执行上述时序时,主机还可根据具体需求发送调用指令使微控制器获取时序包中的其他时序文件的时序命令并执行。
具体地,微控制器在开始执行时序包中的时序文件的时序命令,且该时序命令还未执行完成之前,可以继续响应主机的其他调用指令从存储器中获取时序包中的另一个时序文件的时序命令并开始执行,以此类推,就可以同时对时序包中的多个时序文件的时序命令进行执行。
区别于现有技术的情况,本申请的血液分析仪包括主机、微控制器和存储器,存储器用于存储时序包,微控制器用于执行时序包中的时序文件,以实现血液分析,该方法包括:在血液分析仪启动时,微控制器接收主机基于目标标识信息的查询指令;微控制器基于查询指令获取存储器的当前标识信息,并将当前标识信息发送给主机,以使主机判断目标标识信息与当前标识信息是否相同;若不相同,则微控制器接收主机发送的第一时序包,以对存储器中的第二时序包进行更新。通过上述方式,一方面由于将时序包存储于存储器中,无需主机向微控制器发送时序文件,而只需要发送调用指令即可,因此,减少主机下发时序文件的次数,由此减少对总线的资源占用;另一方面,基于存储器来进行时序包的存储,以便于微控制器对时序包中多个时序文件中的命令进行调用,在微控制器存储容量有限的情况可以存储多个时序文件中的当前需要执行的时序命令并进行执行,实现血液分析仪同时对多个时序命令的执行,完成多个血液分析项目的同时进行,提升血液分析仪运行速度,增加工作效率;第三方面,通过这种校验方式,可以避免每次开机都要进行时序包更新,有效减少存储器的数据擦写次数,延长其使用寿命,同时也提高了运行效率。
参阅图3,图3是本申请提供的数据处理方法第二实施例的流程示意图,该数据处理方法包括:
步骤31:微控制器接收主机基于目标标识信息的查询指令。
如上述实施例的接收方式相同或相似,这里不做赘述。
步骤32:微控制器基于查询指令获取存储器的当前标识信息,并将当前标识信息发送给主机,以使主机判断目标标识信息与存储器的当前标识信息是否相同。
如上述实施例的判断方式相同或相似,这里不做赘述。
当判断目标标识信息与存储器的当前标识信息不相同时,执行步骤33。
步骤33:微控制器接收主机发送的第一时序包。
微控制器接收主机发送的第一时序包,时序包必须是与标识信息对应的,这样才能保证后续的正常工作。
步骤34:微控制器将第一时序包存储至存储器。
微控制器接收到第一时序包后,在存储器中开辟出地址空间,将第一时序包存储至该地址空间内。
步骤35:微控制器将存储器中的当前标识信息替换为目标标识信息。
微控制器在存储器中存储好主机发送的第一时序包后,将存储器的当前标识信息替换为主机发送的第一时序包对应的标识信息,即目标标识信息,以保证文件的一致性。
步骤36:清除存储器中的第二时序包。
存储器存储第一时序包和目标标识信息后,需要清除第二时序包数据,释放内存空间。
参阅图4,图4是本申请提供的数据处理方法第三实施例的流程示意图,该方法包括:
步骤41:微控制器接收主机基于目标标识信息的查询指令。
如上述实施例的接收方式相同或相似,这里不做赘述。
步骤42:微控制器基于查询指令获取存储器的当前标识信息,并将当前标识信息发送给主机,以使主机判断目标标识信息与存储器的当前标识信息是否相同。
如上述实施例的判断方式相同或相似,这里不做赘述。
当判断目标标识信息与存储器的当前标识信息不相同时,执行步骤43。
步骤43:微控制器清除存储器中的第二时序包。
在主机判断目标标识信息与存储器的当前标识信息不相同时,微控制器需要清除第二时序包数据,释放内存空间,然后执行步骤44。
步骤44:微控制器接收主机发送的第一时序包。
微控制器接收主机发送的第一时序包,第一时序包必须是与目标标识信息对应的,这样才能保证后续的正常工作。
步骤45:微控制器将第一时序包存储至存储器。
因微控制器在接收到第一时序包之前已经清除了存储器中的第二时序包,则将第一时序包存储至存储器就不用担心存储空间不足的问题。
步骤46:微控制器将存储器中的当前标识信息替换为目标标识信息。
微控制器在存储器中存储好主机发送的第一时序包后,将存储器的当前标识信息替换为主机发送的第一时序包对应的标识信息,即目标标识信息,以保证文件的一致性。
参阅图5,图5是本申请提供的数据处理方法第四实施例的流程示意图,该方法包括:
步骤51:微控制器接收主机基于目标标识信息的查询指令。
步骤52:微控制器基于查询指令获取存储器的当前标识信息,并将当前标识信息发送给主机,以使主机判断目标标识信息与存储器的当前标识信息是否相同。
步骤51-52与上述实施例的方式相同或相似,这里不做赘述。
步骤53:若不相同,接收主机发送的第一时序包,以对存储器中第二时序包进行更新。
步骤53可采用上述实施例的方案对第二时序包进行更新,这里不做赘述。
当存储器中时序包更新完成后,需要执行步骤54。
步骤54:微控制器再次接收主机基于目标标识信息的查询指令。
为了验证更新是否完成,主机再次发送基于目标标识信息的查询指令。
步骤55:微控制器基于查询指令获取存储器的当前标识信息,并将当前标识信息发送给主机,以使主机判断目标标识信息与存储器的当前标识信息是否相同。
若步骤55判断的结果为相同,则执行步骤57;若步骤55判断的结果为不相同,则执行步骤56。
步骤56:再次对存储器中的时序包进行更新。
再次对存储器中的时序包进行更新,更新方式如上述步骤更新方式,这里不作赘述。更新完后需再次执行步骤54,基于主机查询指令,获取存储器的当前标识信息进行判断。
步骤57:执行其他流程。
当更新完成后,再次验证通过后,执行其他流程,保障正常运行。
在本实施例中,通过对时序包的校验、以及更新后再校验的方式,保证了时序包更新的准确性,从而保证血液分析仪正常运行,一方面由于将时序包存储于存储器中,无需主机向微控制器发送时序文件,而只需要发送调用指令即可,因此,减少主机下发时序文件的次数,由此减少对总线的资源占用;另一方面,基于存储器来进行时序包的存储,以便于微控制器对时序包中多个时序文件中的命令进行调用,在微控制器存储容量有限的情况可以存储多个时序文件中的当前需要执行的时序命令并进行执行,实现血液分析仪同时对多个时序命令的执行,完成多个血液分析项目的同时进行,提升血液分析仪运行速度,增加工作效率;第三方面,通过这种校验方式,可以避免每次开机都要进行时序包更新,有效减少存储器的数据擦写次数,延长其使用寿命,同时也提高了运行效率。
参阅图6,图6是本申请提供的数据处理方法第五实施例的流程示意图,该方法包括:
步骤61:微控制器接收主机发送的调用指令。
主机开机自检,正常启动后,发送调用指令到微控制器。
可选的,主机与微控制器之间通过总线连接,主机将调用指令发送到总线上。微控制器接收到调用指令后确认是否相匹配,从而基于调用指令获取相对应的数据。
可选的,微控制器在接收主机发送的调用指令之前,存储器中时序包已通过校验,保证时序包数据的准确性,校验方式如上述实施例中相同或相似,这里不作赘述。
步骤62:微控制器基于调用指令从存储器中获取时序文件。
微控制器接收到调用指令后,对指令进行解析,获取指令中的关键信息,按照关键信息进行下一步操作。
可选的,这里调用指令对应的操作为执行时序命令。
时序是指固定执行流程的控制指令集合。这些控制指令在时间上的相互关系就是CPU(Central Process Unit,中央处理器)的时序。可选的,时序包数据可以是一系列具有时间顺序的脉冲信号。
步骤63:执行时序文件中的时序命令。
微控制器获取到时序包命令后,执行时序命令,按照时序包的内容,有序的执行。具体地,微控制器从存储器中获取时序文件中的时序命令;获取的时序命令为对应时序文件的单个命令,微控制器将时序命令存储至微控制器的内部存储单元;微控制器执行时序命令,在执行完当前时序命令后,继续从存储器中获取时序文件的下一时序命令,按照上述操作进行执行。
通过使用存储器进行时序包的存储,以便于微控制器对时序包中多个时序文件中的命令进行调用,在微控制器存储容量有限的情况可以存储多个时序文件中的当前需要执行的时序命令,因此能够实现血液分析仪同时对多个时序命令的执行。在执行上述时序时,主机还可根据具体需求发送调用指令使微控制器获取时序包中的其他时序文件的时序命令并执行。
具体地,微控制器在开始执行时序包中的时序文件的时序命令,且该时序命令还未执行完成之前,就可以继续响应主机的其他调用指令从存储器中获取时序包中的另一个时序文件的时序命令并开始执行,以此类推,就可以同时对时序包中的多个时序文件的时序命令进行执行。
区别于现有技术的情况,本申请的数据处理方法,包括:微控制器接收主机发送的调用指令;微控制器基于调用指令从存储器中获取时序文件;执行时序文件中的时序命令。通过上述方式,一方面由于将时序包存储于存储器中,无需主机向微控制器发送时序文件,而只需要发送调用指令即可,因此,减少主机下发时序文件的次数,由此减少对总线的资源占用;另一方面,基于存储器来进行时序包的存储,以便于微控制器对时序包中多个时序文件中的命令进行调用,在微控制器存储容量有限的情况可以存储多个时序文件中的当前需要执行的时序命令并进行执行,实现血液分析仪同时对多个时序命令的执行,完成多个血液分析项目的同时进行,提升血液分析仪运行速度,增加工作效率。
参阅图7,图7是本申请提供的数据处理方法第六实施例的流程示意图,该方法包括:
步骤71:主机向微控制器发送基于目标标识信息的查询指令,以使微控制器获取存储器的当前标识信息。
血液分析仪在开机后进行自检,正常启动后,主机发送查询指令到微控制器。
可选的,主机与微控制器之间通过总线连接,主机将查询指令发送到总线上。微控制器在接收到查询指令后确认是否相匹配,从而基于查询指令获取相对应的数据。
微控制器接收到基于目标标识信息的查询指令后,在存储器中获取到当前标识信息,提供给主机。
步骤72:获取微控制器发送的当前标识信息,并判断目标标识信息与存储器的当前标识信息是否相同。
在步骤72判断结果为不相同时执行步骤73;在步骤72判断结果为相同时,执行血液分析仪其他流程,如调用时序包中时序文件以及时序文件中的命令。
步骤73:主机向微控制器发送第一时序包,以使微控制器对存储器中的第二时序包进行更新。
可选的,在微控制器的第二时序包更新完成后,主机再次发送查询指令,通过判断标识信息的方式,判断本次更新是否完成,如没有完成,需要再次进行更新。
确认更新完成后,可以执行血液分析仪其余流程,如调用时序包中时序文件以及时序文件中的时序命令。
区别于现有技术的情况,本申请的数据处理方法,该方法包括:主机向微控制器发送基于目标标识信息的查询指令,以使微控制器获取存储器的当前标识信息;获取微控制器发送的当前标识信息,并判断目标标识信息与存储器的当前标识信息是否相同;若不相同,主机向微控制器发送第一时序包,以使微控制器对存储器中的第二时序包进行更新。相比于现有技术中微控制器的内部存储单元一般只能存储两个时序文件,通过上述方式,一方面由于将时序包存储于存储器中,无需主机向微控制器发送时序文件,而只需要发送调用指令即可,因此,减少主机下发时序文件的次数,由此减少对总线的资源占用;另一方面,基于存储器来进行时序包的存储,以便于微控制器对时序包中多个时序文件中的命令进行调用,在微控制器存储容量有限的情况可以存储多个时序文件中的当前需要执行的时序命令并进行执行,实现血液分析仪同时对多个时序命令的执行,完成多个血液分析项目的同时进行,提升血液分析仪运行速度,增加工作效率;第三方面,通过这种校验方式,可以避免每次开机都要进行时序包更新,有效减少存储器的数据擦写次数,延长其使用寿命,同时也提高了运行效率。
参阅图8,图8是本申请提供的数据处理方法第七实施例的流程示意图,该数据处理方法包括:
步骤801:开机启动。
步骤802:时序包开始检测。
步骤803:获取MCU的时序MD5。
MD5是通过将时序文件进行特定算法算出的一个唯一值,一旦时序文件内容有变化,MD5也会随之变化。
MCU的时序MD5对应的是存储器中时序包的MD5。
步骤804:判断主机的当前时序MD5与MCU的时序MD5是否一致。
若判断一致,执行步骤812,若判断不一致,执行步骤805。
步骤805:升级时序包。
升级时序包指的是升级MCU存储器中的时序包。
步骤806:传输时序MD5。
升级完成,同步将主机的时序MD5传输至存储器保存,清除存储器中原有数据。
步骤807:查询MCU时序MD5。
升级完成后,主机再次查询MCU时序MD5,进行判断。
步骤808:是否升级成功。
若升级成功,执行步骤812;若升级不成功,执行步骤809。
步骤809:故障上报时序更新失败。
通过特定方式上报时序更新失败,如响铃报警等。
步骤810:故障消除(再次升级时序包)。
通过再次升级时序包,来清除故障。
步骤811:是否清除成功。
若时序包更新完成,并且判断升级成功,则执行步骤812;若判断升级失败,则执行步骤809,再次上报故障。
步骤812:开机其他流程。
参阅图9,图9是本申请提供的数据处理方法第八实施例的流程示意图,该数据处理方法包括:
步骤91:微控制器接收主机发送的调用指令。
可以理解,调用指令与时序文件是一一对应关系,主机发送多个调用指令则对应存储器中多个时序文件。这里不对调用指令的数量做限制。
步骤92:微控制器基于调用指令从存储器中获取第一时序。
可以理解,存储器中包括时序包,时序包中包括多个时序文件,每个时序文件中包括多个时序命令。基于不同的调用指令,从存储器中获取相应的第一时序,第一时序可以包括至少一个时序文件中的至少一个时序命令。
微控制器接收到调用指令后,对指令进行解析,获取指令中的关键信息,按照关键信息进行下一步操作。如第一个调用指令为“启动时序A”,则微控制器基于调用指令从存储器中先获取时序A中的时序命令;第二个调用指令为“启动时序B”,则微控制器基于调用指令从存储器中先获取时序B中的时序命令;第三个调用指令为“启动时序C”,则微控制器基于调用指令从存储器中先获取时序C中的时序命令。
可选的,从存储器获取时序命令,需要检测时序命令是否有效。
可选的,在一实施例中,可以通过传输数据的正确性来判断数据是否有效,这里以Modbus通讯协议为例,可以进行奇偶校验(Parity Check)、LRC(Longitudinal RedundancyCheck,纵向冗余校验)检测或CRC(Cyclic Redundancy Check,循环冗余校验码)检测,以检测时序包数据是否有效。
其中,奇偶校验是一种校验代码传输正确性的方法。根据被传输的一组二进制代码的数位中“1”的个数是奇数或偶数来进行校验。采用奇数的称为奇校验,反之,称为偶校验。采用何种校验是事先规定好的。通常专门设置一个奇偶校验位,用它使这组代码中“1”的个数为奇数或偶数。若用奇校验,则当接收端收到这组代码时,校验“1”的个数是否为奇数,从而确定传输代码的正确性。
其中,LRC校验用于ModBus协定的ASCII(American Standard Code forInformation Interchange,美国信息交换标准代码)模式,这个校验比较简单,通讯速率较慢,它在ASCII协议中使用,检测了消息域中除开始的冒号及结束的回车换行号外的内容。它仅仅是把每一个需要传输的数据字节迭加后取反加1即可。例如,5个字节:01H+03H+21H+02H+00H+02H=29H,然后取2的补码=D7H。
其中,CRC校验是数据通信领域中最常用的一种查错校验码,其特征是信息字段和校验字段的长度可以任意选定。CRC是一种数据传输检错功能,对数据进行多项式计算,并将得到的结果附在帧的后面,接收端也执行类似的算法,以保证数据传输的正确性和完整性。
步骤93:微控制器执行第一时序。
微控制器获取到第一时序后,执行第一时序,按照第一时序中的时序命令,有序的执行。
具体地,当第一时序包含至少一个时序文件中的至少一个时序命令时,微控制器在开始执行其中一个时序文件的时序命令时,其他时序文件的时序命令也可同时执行,也就实现了同时对多个时序命令进行执行。
当主机发送多个调用指令时,微控制器会相应的按照上述步骤对每个调用指令进行响应,以进行时序命令的执行。
区别于现有技术的情况,本申请的血液分析仪的数据处理方法,血液分析仪包括主机、微控制器和存储器,存储器用于存储时序包,微控制器用于执行时序包中的时序文件,以实现血液分析,该方法包括:微控制器接收主机发送的调用指令;微控制器基于调用指令从存储器中获取第一时序;以及执行第一时序。通过上述方式,一方面由于将时序包存储于存储器中,无需主机向微控制器发送时序文件,而只需要发送调用指令即可,因此,减少主机下发时序文件的次数,由此减少对总线的资源占用;另一方面,基于存储器来进行时序包的存储,以便于微控制器对时序包中多个时序文件中的命令进行调用,在微控制器存储容量有限的情况可以存储多个时序文件中的当前需要执行的时序命令并进行执行,实现血液分析仪同时对多个时序命令的执行,完成多个血液分析项目的同时进行,提升血液分析仪运行速度,增加工作效率。
参阅图10,图10是本申请提供的数据处理方法第九实施例的流程示意图,该数据处理方法包括:
步骤101:微控制器接收主机发送的调用指令。
如上述实施例的接收方式相同或相似,这里不做赘述。
步骤102:微控制器在接收到基于目标时序的调用指令后,在存储器的地址索引区查找目标时序的储存地址。
当微控制器接收到主机基于目标时序的调用指令后,找到存储时序包的存储器。这里存储器可以是U盘、硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘、Flash(闪存)存储器等存储装置。
存储器包括地址索引区和数据储存区,其中,地址索引区用于存放目标时序的储存地址。
在一些实施例中,调用指令的数量为多个,则按照多个调用指令的顺序在存储器的地址索引区查找对应的目标时序的储存地址。如第一个调用指令为“启动时序A”,则微控制器基于调用指令从存储器的地址索引区查找时序A的储存地址;第二个调用指令为“启动时序B”,则微控制器基于调用指令从存储器的地址索引区查找时序B的储存地址;第三个调用指令为“启动时序C”,则微控制器基于调用指令从存储器的地址索引区查找时序B的储存地址。
具体地,因时序文件中包括多个时序命令,则每个时序命令也有相应的储存地址。且每个时序命令的储存地址和时序文件中其他数据的存储地址组成时序文件的储存地址。可以理解为时序文件的储存地址为一目录,而每个时序命令的储存地址为目录下的子目录。
步骤103:微控制器基于目标时序的储存地址在数据储存区查找目标时序。
微控制器在存储器的地址索引区查找到目标时序的存储地址,基于目标时序的储存地址在数据储存区查找目标时序。
步骤104:微控制器接收主机发送的读取指令,并基于读取指令从存储器中读取目标时序的时序命令。
查找到目标时序后,微控制器将查找结果发送至主机,以使主机判断后发送读取指令,微控制器接收主机发送的读取指令,并基于读取指令从存储器中读取目标时序的时序命令,并将时序命令存储于内部存储单元中,然后按照时序命令的内容执行相应操作。在当前时序命令执行后,微控制器会继续读取目标时序的下一个时序命令。
参阅图11,以存储器为Flash存储器为例,Flash存储器的地址索引区共64K数据,数据储存区共0xFEF000个字节,数据校验区共4K数据。地址索引区存储着起始地址、结束地址、命令个数、时序的校验和等相关数据,其中,图11中的起始地址4、结束地址4、命令个数4、时序的校验和4,空16字节组成一个时序的索引,其中,命令个数4表示该时序中有4个命令,所以地址索引区有多个时序的索引,
数据储存区存储着对应时序命令的启动时间、命令号、控制码、长度、命令码、参数等相关数据,其中,图11中的启动时间2、命令号2、控制码1、长度1、命令码3、参数n组成时序中的命令。根据地址索引区的起始地址和结束地址在对应的数据储存区查找到目标时序数据。然后读取时序数据并执行。
数据校验区存储着时序包的版本号、校验文件MD5、升级标志等。
区别于现有技术,通过将时序包存储于存储器,并且存储器内部将时序包的数据进行区域划分,可以减少主机向微控制器发送时序文件的次数,因此减少数据总线上的数据冗余,还可避免时序文件的丢失,同时微控制器在存储器中按照索引读取时序文件的时序命令,能够解决现有技术中读取整个时序文件而造成数据总线上数据冗余的问题,能够提高读取速度。
参阅图12,图12是本申请提供的数据处理方法第十实施例的流程示意图,该数据处理方法包括:
步骤121:微控制器上电。
在血液分析仪启动时,微控制器上电,进行上电自检,保证血液分析仪正常运行,同时与主机进行通信连接,为后续正常工作提供保障。
步骤122:检测是否连接到存储器。
微控制器上电完成后,检测是否连接到存储器,以保证工作时能获取存储器中的时序数据。
在步骤122的检测结果为已连接到存储器时,执行步骤123;在步骤122的检测结果为未连接到存储器时,执行步骤124。
步骤123:读取存储器中的时序包信息,并在获取到主机发送的查询指令时,将时序包信息发送至主机。
在本实施例中,存储器中的时序包有对应的版本号和升级标志等信息,这些信息存储于存储器的数据校验区。
具体地,微控制器从存储器的数据校验区中获取存储的时序包的版本号,将版本号发送至主机,以使主机判断版本号与目标版本号是否匹配,并在不匹配时主机向微控制器发送与目标版本对应的时序包;微控制器清除存储器中的当前时序包;微控制器将主机发送的与目标版本对应的时序包存储至存储器,以使存储器为时序包在地址索引区、数据储存区和数据校验区建立对应关系。如将主机发送的时序包的版本号、MD5文件等存放至数据校验区,时序包的时序文件及时序文件中的时序命令存放至数据储存区,并在地址索引区为数据储存区中的数据建立对应的地址索引目录。
在一些实施例中,当时序包进行更新后,其对应的升级标志也会进行更新。如升级标志以数字进行表示,在其对应的时序包更新完成后,升级标志的数字会加一,如原来是2,时序包更新后会变为3。
在一些实施例中,存储器可能出现没有时序包的情况,则时序包信息为空,则主机在接收到此信息后,向微控制器发送最新版本的时序包;微控制器将时序包数据存储至存储器中。
步骤124:提示错误,未连接。
若没有检测到存储器,微控制器会提示错误,通过指示灯红灯闪烁、响铃方式进行报警,提示用户存储器未连接,请进行处理。
通过上述方式,一方面检测存储器的连接状态,保证时序数据能顺利读取,另一方面检测存储器中的时序包与主机的时序包是否一致,在不一致时进行更新操作,以保证血液分析仪正常工作。
参阅图13,图13是本申请提供的数据处理方法第十一实施例的流程示意图,该数据处理方法包括:
步骤131:微控制器接收主机发送的调用指令。
可以理解,调用指令与时序文件是一一对应关系,主机发送多个调用指令则对应存储器中多个时序文件。这里不对调用指令的数量做限制。
步骤132:微控制器基于调用指令在存储器中查找是否存在第一时序。
可以理解,存储器中包括一时序包,时序包中包括多个时序文件,每个时序文件中包括多个时序命令。第一时序可以包括至少一个时序文件中的至少一个时序命令。
若查找到存在第一时序,则执行步骤133。如,调用指令的内容为“调用时序A100”,则在存储器的地址索引区查找是否有时序A100对应的索引,若有则执行步骤133。当多个调用指令时,分别在存储器的地址索引区查找多个调用指令对应的地址索引,若存在索引,则执行步骤133。若不存在,则向主机发送提示信息。
步骤133:微控制器获取第一时序在存储器中的地址索引区的储存地址,同时在内部存储单元中建立地址空间。
在一些实施例中,在微控制器中建立地址空间是为了后续在读取时序文件中的时序命令后将时序命令存储于其中。
步骤134:从第一时序中读取第一时序命令以及第一序号存放至内部存储单元的地址空间。
当第一时序中只存在一个时序文件时,可以理解时序文件中至少包含一个时序命令,步骤134可以表示为基于上述的储存地址从数据储存区获取时序文件中的第一个时序命令以及相应的序号,将其存储于内部存储单元的地址空间中。
当第一时序中存在多个时序文件时,步骤134可以表示为基于上述的储存地址按照调用顺序从数据储存区获取多个时序文件中的第一个时序命令以及相应的序号,将其存储于内部存储单元的地址空间中。
步骤135:从内部存储单元的第二时序中读取第二时序命令以及第二序号。
在一些实施例中,微控制器的内部存储单元中存放着主机发送的临时时序文件。如某项操作在当前时间需要做修改时,则会对其对应的时序命令进行修改,以形成一临时时序文件,然后将临时时序文件发送至微控制器存储于内部存储单元中。此时,若检测到内部存储单元中存在临时时序文件,如临时时序数据为第二时序,则从内部存储单元中的第二时序读取第二时序命令以及第二序号。具体地,临时时序文件可以在主机向微控制器发送调用指令时一同发送,或者在主机向微控制器发送调用指令之前发送。
步骤136:判断第一序号和第二序号是否相同。
若相同,确认内部存储单元中有与第一时序相匹配的第二时序,就说明第二序号对应的第二时序命令符合当前工作需要,则执行步骤138,若不相同,确认内部存储单元中没有与第一时序相匹配的第二时序,就说明第二时序命令与第一时序无关,则执行步骤137。
步骤137:执行第一时序命令。
步骤138:执行第二时序命令。
具体地,参阅图14,在执行步骤137之后还包括以下步骤:
步骤141:获取第一时序的下一时序命令在存储器中的储存地址。
可以理解,在第一时序中包括多个时序命令,在第一时序命令执行后,对应第一时序命令的储存地址向高地址叠加,以得到下一个时序命令的储存地址。
步骤142:判断储存地址是否超过结束地址。
在一些实施例中,当储存地址未超过结束地址,说明存在下一时序命令,则按照步骤134-137对第一时序中的第一时序命令的执行方式进行执行,以执行完第一时序中的命令。
当储存地址超过结束地址,说明不存在下一时序命令,即第一时序的时序命令已执行完成,则执行步骤143。
步骤143:结束执行时序操作,并向主机发送第一时序执行结束消息,清除内部存储单元中的地址空间。
结束执行时序操作,并向主机发送第一时序执行结束消息,清除内部存储单元中的地址空间,以释放内部存储单元的空间。
具体地,参阅图15,在执行步骤138之后还包括以下步骤:
步骤151:获取第二时序的下一时序命令在内部存储单元中的储存地址。
可以理解,第二时序中包括多个时序命令,在第二时序命令执行后,对应第二时序命令的储存地址会在内部存储单元中进行内部偏移,即向高地址叠加,以得到下一个时序命令的储存地址。
步骤152:判断储存地址是否超过结束地址。
在一些实施例中,当储存地址未超过结束地址,说明存在下一时序命令,则按照步骤134-137对第二时序中的第二时序命令的执行方式进行执行,以执行完第二时序中的时序命令。
当储存地址超过结束地址,说明不存在下一时序命令,即第二时序的时序命令已执行完成,则执行步骤153。
步骤153:结束执行时序操作,并向主机发送第二时序执行结束消息,清除第二时序。
结束执行时序操作,并向主机发送第二时序执行结束消息,清除内部存储单元中的第二时序,以释放内部存储单元的空间。
可以理解,因第二时序是一些临时的,突然修改的时序文件,在执行完后没有存在的必要,所以将其清除,一方面释放微控制器的内存空间,另一方面可以保证后续在需要执行多个时序命令的可存储空间,保证工作的执行。
在本实施例中,微控制器在接收时序调用指令后,通过从存储器中获取时序命令,并判断时序命令序号与微控制器内部存储单元中的临时时序文件的时序命令序号是否相同,来确定被调用的时序命令是否需要直接执行,当需要执行时,则执行时序命令;若不需要执行,则执行内部存储单元中相应的时序命令。通过这种方式,可以在微控制器存储资源有限的条件下,通过读取不同时序文件中的当前需要执行的时序命令进行执行,可以增加内部存储单元存储时序命令的个数,既可以增加同时运行的时序命令数量完成工作需求,以读取时序命令的方式相较于读取整个时序文件能有效减少数据总线上的数据冗余,且提高读取速度,同时也提高了工作效率,并且在存储器中存在临时时序文件时对其进行判断,以确定具体需要执行的时序命令,保证血液分析仪正常工作。
参阅图16,图16是本申请提供的数据处理方法第十二实施例的流程示意图,该数据处理方法包括:
步骤161:微控制器上电。
如上述实施例的微控制器上电方式相同或相似,这里不做赘述。
步骤162:检测是否连接到存储器。
如果检测连接到存储器,执行步骤163。
如果检测没有连接到存储器,执行步骤165。
步骤163:读取存储器中的时序包信息。
在一些实施例中,微控制器读取存储器中的时序包信息,以确定存储器中是否存储有时序包,若是,则执行步骤164;若否,则执行步骤166。
在一些实施例中,微控制器读取存储器中的时序包信息,如版本信息,将版本信息发送至主机,以使主机判断版本信息与目标版本信息是否匹配,如果版本信息匹配,则执行步骤164;如果版本信息不匹配,说明存储器中的时序包不满足当前工作的需求,则执行步骤166。
步骤164:正常启动。
正常启动后,微控制器接收主机基于目标标识信息的查询指令,以完成后续时序命令的执行。
步骤165:间隔100MS检测一次器件并反转在错误状态指示灯接收从站指令。
可选的,在未检测到存储器时,会持续的按时间周期进行检测,并通过错误状态指示灯等提示信息,告知用户存储器连接异常。
步骤166:进入死循环等待时序升级。
当确定存储器中无时序包时,向主机发送存储器中无时序包的信息,以使主机发送时序包,然后将时序包存储至存储器中,以完成时序升级。
当时序包版本信息不匹配时,主机向微控制器发送与目标版本对应的时序包,微控制器接收主机发送的时序包,将存储器中原始的时序包进行替换。替换完成,保留升级标志,再执行步骤164。
参阅图17,图17是本申请提供的数据处理方法第十三实施例的流程示意图,该数据处理方法包括:
步骤A:主机发送启动时序B100
步骤B:查询时序B100的表头,验证时序是否有效,获取时序B100在存储中的地址Taddr,若无效,则进入EVT(Engineering Verification Test,工程验证测试)阶段,对时序B100进行验证测试,测试完成后才可使用。
步骤C:确认时序B100有效,则获取一个时序B100对应的执行结构体的空间。
步骤D:从时序B100的表中读取一个命令C、执行时间T、序号N,判断执行时间T是否符合标准,如不符合,等待10ms,重新获取执行时间T,如符合,执行步骤E。
步骤E:将上述的命令C的序号N和内存的临时时序B100'的当前命令C'对应的序号N'进行比较,若序号一致,就执行时序B100'命令C',B100'内部偏移+1,若序号不一致,则执行时序B100的命令C。
步骤F:执行命令时,Taddr向高地址叠加
步骤G:判断Taddr是否超过结束地址end_addr,若没有超过,则重复步骤H,继续执行时序表中其余命令,若超过,则执行步骤8。
步骤I:结束时序,并回复时序结束信号,清除时序B100',清除执行时序产生的内存空间。
参阅图18,图18是本申请提供的血液分析仪一实施例的结构示意图,该血液分析仪180包括主机181,微控制器182和存储器183。其中,主机181与微控制器182连接,微控制器182与存储器183连接,存储器183用于存储时序包,微控制器182用于执行时序包中的时序文件,以实现血液分析;该主机181和/或微控制器182中包括程序数据,该程序数据在被主机181和/或微控制器182执行时,用于实现以下方法:微控制器接收主机发送的调用指令;微控制器基于调用指令从存储器中获取第一时序;以及执行第一时序。
可以理解的,本实施例中的主机181、微控制器182可以实现上述任一实施例的方法,其具体的实施步骤可以参考上述实施例,这里不再赘述。
参阅图19,图19是本申请提供的计算机存储介质的结构示意图,该计算机存储介质190用于存储程序数据191,程序数据191在被主机和/或微控制器执行时,用于实现以下的方法步骤:
微控制器接收主机发送的调用指令;微控制器基于调用指令从存储器中获取第一时序;以及执行第一时序。
可以理解的,本实施例中的计算机存储介质190可以应用于主机,也可以应用于微控制器,其具体的实施步骤可以参考上述实施例,这里不再赘述。
在本申请所提供的几个实施方式中,应该理解到,所揭露的方法以及设备,可以通过其它的方式实现。例如,以上所描述的设备实施方式仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施方式方案的目的。
另外,在本申请各个实施方式中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
上述其他实施方式中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施方式方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random AccessMemory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上仅为本申请的实施方式,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。
Claims (9)
1.一种血液分析仪的数据处理方法,其特征在于,所述血液分析仪包括主机、微控制器和存储器,所述存储器用于存储时序包,所述微控制器用于执行所述时序包中的时序文件,以实现血液分析,所述时序文件包括至少一个时序命令,所述方法包括:
所述微控制器接收所述主机发送的调用指令;
所述微控制器基于所述调用指令从所述存储器中获取第一时序;
所述微控制器检测内部存储单元中是否存储有与所述第一时序相匹配的第二时序;其中,所述第二时序为时序文件;
若没有,则执行所述第一时序中的时序命令;其中,所述第一时序包括至少一个时序文件中的至少一个时序命令;
若有,则执行所述第二时序中的时序命令。
2.根据权利要求1所述的方法,其特征在于,
所述存储器包括地址索引区和数据储存区;
所述微控制器基于所述调用指令从存储器中获取第一时序,包括:
微控制器在接收到基于目标时序的调用指令后,在所述地址索引区查找所述目标时序的储存地址;
所述微控制器基于所述目标时序的储存地址在所述数据储存区查找目标时序;
所述微控制器接收主机发送的读取指令,并基于读取指令从存储器中读取目标时序的时序命令。
3.根据权利要求2所述的方法,其特征在于,
所述存储器还包括数据校验区;
所述方法还包括:
在所述血液分析仪启动时,微控制器从所述数据校验区中获取存储的所述时序包的版本号;
所述微控制器将所述版本号发送至所述主机,以使所述主机判断所述版本号与目标版本是否匹配;
若否,则所述主机向所述微控制器发送与所述目标版本对应的时序包。
4.根据权利要求3所述的方法,其特征在于,
所述主机向所述微控制器发送与所述目标版本对应的时序包之后,包括:
微控制器清除所述存储器中的当前时序包;
微控制器将所述主机发送的与所述目标版本对应的时序包存储至所述存储器,以使所述存储器为所述时序包在所述地址索引区、所述数据储存区和所述数据校验区建立对应关系。
5.根据权利要求4所述的方法,其特征在于,
所述检测内部存储单元中是否存储有与所述第一时序相匹配的第二时序,包括:
从所述第一时序中读取第一时序命令以及第一序号存放至所述内部存储单元的地址空间;
从所述内部存储单元的第二时序中读取第二时序命令以及第二序号;
判断所述第一序号和所述第二序号是否相同;
若相同,确认所述内部存储单元中有与所述第一时序相匹配的第二时序,则执行第二时序命令;
若不相同,确认所述内部存储单元中没有与所述第一时序相匹配的第二时序,则执行第一时序命令。
6.根据权利要求5所述的方法,其特征在于,
所述执行第一时序命令之后,包括:
获取所述第一时序的下一时序命令在所述存储器中的储存地址;
判断所述储存地址是否超过结束地址;
若是,则结束执行时序操作,并向主机发送所述第一时序执行结束消息,清除所述内部存储单元中的所述地址空间。
7.根据权利要求5所述的方法,其特征在于,
所述执行第二时序命令之后,包括:
获取所述第二时序的下一时序命令在内部存储单元中的储存地址;
判断所述储存地址是否超过结束地址;
若是,结束执行时序操作,并向主机发送第二时序执行结束消息,清除所述第二时序。
8.一种血液分析仪,其特征在于,所述血液分析仪包括主机、微控制器以及与所述微控制器耦接的存储器,所述存储器用于存储时序包,所述微控制器用于执行所述时序包中的时序文件,以实现血液分析;
其中,所述主机和/或微控制器中包括程序数据,所述程序数据在被主机和/或微控制器执行时,用于实现如权利要求1-7任一项所述的方法。
9.一种计算机存储介质,其特征在于,所述计算机存储介质用于存储程序数据,所述程序数据在被主机和/或微控制器执行时,用于实现如权利要求1-7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010362692.XA CN113590499B (zh) | 2020-04-30 | 2020-04-30 | 血液分析仪及其数据处理方法、计算机存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010362692.XA CN113590499B (zh) | 2020-04-30 | 2020-04-30 | 血液分析仪及其数据处理方法、计算机存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113590499A CN113590499A (zh) | 2021-11-02 |
CN113590499B true CN113590499B (zh) | 2024-07-12 |
Family
ID=78237163
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010362692.XA Active CN113590499B (zh) | 2020-04-30 | 2020-04-30 | 血液分析仪及其数据处理方法、计算机存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113590499B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114779858B (zh) * | 2022-06-13 | 2022-10-28 | 深圳市帝迈生物技术有限公司 | 样本分析装置的启动方法、装置、设备及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103185776A (zh) * | 2011-12-28 | 2013-07-03 | 希森美康株式会社 | 血细胞分析装置、血细胞分析方法及信息处理装置 |
CN108563532A (zh) * | 2018-02-28 | 2018-09-21 | 深圳和而泰数据资源与云技术有限公司 | 数据处理方法及相关装置 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2001048675A2 (en) * | 1999-12-24 | 2001-07-05 | Medtronic, Inc. | Large-scale processing loop for implantable medical devices |
CN100595703C (zh) * | 2007-03-22 | 2010-03-24 | 南京信息职业技术学院 | 可编程时序控制方法和系统 |
US9297820B2 (en) * | 2008-02-13 | 2016-03-29 | Hitachi High-Technologies Corporation | Automatic analyzer |
US8291194B2 (en) * | 2009-11-16 | 2012-10-16 | Mediatek Inc. | Methods of utilizing address mapping table to manage data access of storage medium without physically accessing storage medium and related storage controllers thereof |
JP5641843B2 (ja) * | 2010-09-24 | 2014-12-17 | シスメックス株式会社 | 検体分析システム、検体分析装置および検体分析装置の制御方法 |
CN110097965A (zh) * | 2018-01-30 | 2019-08-06 | 深圳市帝迈生物技术有限公司 | 基于血液细胞分析仪的结果数据分析方法及装置 |
CN209673823U (zh) * | 2018-04-04 | 2019-11-22 | 深圳市帝迈生物技术有限公司 | 一种试剂注液系统以及血液分析仪 |
CN110346588A (zh) * | 2018-04-04 | 2019-10-18 | 深圳市帝迈生物技术有限公司 | 一种试剂耗量修正方法、试剂注液系统以及血液分析仪 |
CN112925728B (zh) * | 2019-05-05 | 2024-09-06 | 长江存储科技有限责任公司 | 具有序列处理单元的存储器控制系统 |
-
2020
- 2020-04-30 CN CN202010362692.XA patent/CN113590499B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103185776A (zh) * | 2011-12-28 | 2013-07-03 | 希森美康株式会社 | 血细胞分析装置、血细胞分析方法及信息处理装置 |
CN108563532A (zh) * | 2018-02-28 | 2018-09-21 | 深圳和而泰数据资源与云技术有限公司 | 数据处理方法及相关装置 |
Also Published As
Publication number | Publication date |
---|---|
CN113590499A (zh) | 2021-11-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109768970B (zh) | 一种基于可配置的通用协议生成方法 | |
US20060058982A1 (en) | Data relay device and data management system using the same | |
CN113938535B (zh) | 基于多协议适配的物联网设备接入方法及装置 | |
CN1332409A (zh) | 易于测试和调试程序的中央处理单元 | |
WO2006000038A1 (en) | Client processor device | |
CN109933465B (zh) | 异常处理方法、装置、服务器和存储介质 | |
CN112732982B (zh) | 一种故障码存储方法、装置、终端设备及可读存储介质 | |
CN101593119A (zh) | 一种独占闪存组合设备空中固件升级方法及装置 | |
CN111538515A (zh) | 一种电能表程序的升级方法、装置和设备 | |
CN113590499B (zh) | 血液分析仪及其数据处理方法、计算机存储介质 | |
CN113934439B (zh) | 一种多通道自动识别烧录系统及方法 | |
CN113608772A (zh) | 一种应用程序升级方法及装置 | |
CN116028122A (zh) | 基于处理器的设备处理方法及设备 | |
CN113590202B (zh) | 血液分析仪及其数据处理方法、计算机存储介质 | |
CN112671878A (zh) | 一种区块链的信息订阅方法、装置、服务器和存储介质 | |
KR920002571B1 (ko) | 분산처리시스템에 있어서의 데이터처리방법 | |
CN101197959A (zh) | 一种终端的控制方法、系统和设备 | |
CN113849135A (zh) | 日志的访问方法、装置及服务器 | |
CN115373749A (zh) | 一种识别pcie终端设备的方法和计算设备 | |
CN111736858B (zh) | 一种终端设备的升级方法、存储介质及终端设备 | |
CN113886302A (zh) | 应用设备的串口号获取方法、装置、终端设备及存储介质 | |
CN111858124A (zh) | 一种自动检测智能终端驱动程序完整性的方法及系统 | |
CN112000579B (zh) | 一种软件接口测试方法、系统、设备及介质 | |
CN115529238A (zh) | 控制器局域网络中节点的固件升级方法、装置及设备 | |
CN113746680B (zh) | 一种物理位置确定方法和装置、器件测试方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |