CN116257473A - 用于串口数据处理的方法及装置、串口系统、存储介质 - Google Patents
用于串口数据处理的方法及装置、串口系统、存储介质 Download PDFInfo
- Publication number
- CN116257473A CN116257473A CN202111507547.7A CN202111507547A CN116257473A CN 116257473 A CN116257473 A CN 116257473A CN 202111507547 A CN202111507547 A CN 202111507547A CN 116257473 A CN116257473 A CN 116257473A
- Authority
- CN
- China
- Prior art keywords
- data packet
- data
- serial
- serial port
- data buffer
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 59
- 230000005540 biological transmission Effects 0.000 claims abstract description 40
- 230000004044 response Effects 0.000 claims description 14
- 238000004891 communication Methods 0.000 abstract description 20
- 238000010586 diagram Methods 0.000 description 13
- 230000006870 function Effects 0.000 description 10
- 238000001514 detection method Methods 0.000 description 9
- 238000005516 engineering process Methods 0.000 description 6
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 239000000428 dust Substances 0.000 description 2
- 238000004590 computer program Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/382—Information transfer, e.g. on bus using universal interface adapter
- G06F13/385—Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
-
- 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/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/544—Buffers; Shared memory; Pipes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0002—Serial port, e.g. RS232C
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Communication Control (AREA)
Abstract
本申请涉及通信技术领域,公开一种用于串口数据处理的方法,包括:在数据缓冲区不为空的情况下,通过串口发送数据包;其中,数据包包括存储于数据缓冲区的多个功能模块的待发送数据包;在发送数据包失败的情况下,判断数据包的重复发送次数是否达到最大发送次数;若是,删除数据包;若否,再次通过串口发送数据包。数据缓冲区将多个功能模块的数据包和最大发送次数存储。数据缓冲区存在待发送数据包时,通过串口发送数据包。在发送失败、需要重新发送数据包时,通过串口再次发送数据包。每个功能模块不进行数据包的重复发送,提高多个功能模块在串口数据传输中程序执行的效率。本申请还公开一种用于串口数据处理的装置、串口系统和存储介质。
Description
技术领域
本申请涉及通信技术领域,例如涉及一种用于串口数据处理的方法及装置、串口系统、存储介质。
背景技术
目前,在智能家电设备中,许多功能模块都是利用串口进行数据的传输,例如温度检测模块、湿度检测模块等。随着设备功能的增加,设备对串口数据处理的要求逐渐提高。
现有技术中的串口数据处理方法,包括:按照初始连续长度进行一次请求通信,以采集预设通讯参数;初始连续长度为设备预置的可以整合的目标地址的连续长度,预设通讯参数包括波特率、通信起始时间、通信结束时间以及每个字符的停止位+起始位+校验位的位数和数据位位数;根据预设通讯参数,计算一次通信中非传输最终目标数据所用时长所能传输的第一数据量;根据第一数据量缩小初始连续长度,得到请求通信的总时长最短的最优地址组,按照最优地址组进行串口通信。
在实现本公开实施例的过程中,发现相关技术中至少存在如下问题:
该技术是根据通信总时长,选择传输速度最快的地址组,提高串口通信效率。但是当多个功能模块通过串口发送数据包失败时,每个功能模块都会根据最大发送次数进行数据包的重发,导致串口数据传输中程序执行的效率低。
发明内容
为了对披露的实施例的一些方面有基本的理解,下面给出了简单的概括。所述概括不是泛泛评述,也不是要确定关键/重要组成元素或描绘这些实施例的保护范围,而是作为后面的详细说明的序言。
本公开实施例提供了一种用于串口数据处理的方法及装置、串口系统、存储介质,以提高多个功能模块在串口数据传输中程序执行的效率。
在一些实施例中,所述方法包括:在数据缓冲区不为空的情况下,通过串口发送数据包;其中,数据包包括存储于数据缓冲区的多个功能模块的待发送数据包;在发送数据包失败的情况下,判断数据包的重复发送次数是否达到最大发送次数;若是,删除数据包;若否,再次通过串口发送数据包。
可选地,在设定时间内未接收到回应信息,确认发送数据包失败。
可选地,数据缓冲区为先进先出数据缓冲区。
可选地,在通过串口发送数据包之后,还包括:在发送数据包成功的情况下,删除数据包。
可选地,在通过串口发送数据包之前,还包括:检测数据缓冲区。
可选地,在检测数据缓冲区之后,还包括:在数据缓冲区满的情况下,增加数据缓冲区的大小。
可选地,在通过串口发送数据包之后,判断数据包的重复发送次数是否达到最大发送次数之前,还包括:将数据包的重复发送次数增加一次。
在一些实施例中,所述装置包括处理器和存储有程序指令的存储器,处理器被配置为在运行程序指令时,执行上述用于串口数据处理的方法。
在一些实施例中,所述串口系统包括上述用于串口数据处理的装置。
在一些实施例中,所述存储介质存储有程序指令,程序指令在运行时,执行上述用于串口数据处理的方法。
本公开实施例提供的用于串口数据处理的方法及装置、串口系统、存储介质,可以实现以下技术效果:
数据缓冲区将多个功能模块的数据包和最大发送次数存储。当数据缓冲区存在待发送数据包时,通过串口发送数据包。发送失败时,根据最大发送次数,确定是否重新发送数据包。需要重新发送时,通过串口再次发送数据包。每个功能模块仅需将数据包和最大发送次数发送至数据缓冲区,不需进行数据包的重复发送,以提高多个功能模块在串口数据传输中程序执行的效率。
以上的总体描述和下文中的描述仅是示例性和解释性的,不用于限制本申请。
附图说明
一个或多个实施例通过与之对应的附图进行示例性说明,这些示例性说明和附图并不构成对实施例的限定,附图中具有相同参考数字标号的元件示为类似的元件,附图不构成比例限制,并且其中:
图1-1是本公开实施例提供的一个串口系统的示意图;
图1-2是本公开实施例提供的另一个串口系统的示意图;
图2是本公开实施例提供的一个用于串口数据处理的方法的示意图;
图3是本公开实施例提供的另一个用于串口数据处理的方法的示意图;
图4是本公开实施例提供的另一个用于串口数据处理的方法的示意图;
图5是本公开实施例提供的另一个用于串口数据处理的方法的示意图;
图6是本公开实施例提供的另一个用于串口数据处理的方法的示意图;
图7是本公开实施例提供的一个用于串口数据处理的装置的示意图。
具体实施方式
为了能够更加详尽地了解本公开实施例的特点与技术内容,下面结合附图对本公开实施例的实现进行详细阐述,所附附图仅供参考说明之用,并非用来限定本公开实施例。在以下的技术描述中,为方便解释起见,通过多个细节以提供对所披露实施例的充分理解。然而,在没有这些细节的情况下,一个或多个实施例仍然可以实施。在其它情况下,为简化附图,熟知的结构和装置可以简化展示。
本公开实施例的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开实施例的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含。
除非另有说明,术语“多个”表示两个或两个以上。
本公开实施例中,字符“/”表示前后对象是一种“或”的关系。例如,A/B表示:A或B。
术语“和/或”是一种描述对象的关联关系,表示可以存在三种关系。例如,A和/或B,表示:A或B,或,A和B这三种关系。
术语“对应”可以指的是一种关联关系或绑定关系,A与B相对应指的是A与B之间是一种关联关系或绑定关系。
本公开实施例中,智能家电设备是指将微处理器、传感器技术、网络通信技术引入家电设备后形成的家电产品,具有智能控制、智能感知及智能应用的特征,智能家电设备的运作过程往往依赖于物联网、互联网以及电子芯片等现代技术的应用和处理,例如智能家电设备可以通过连接电子设备,实现用户对智能家电设备的远程控制和管理。
在智能家电设备中,许多功能模块都是通过串口进行数据包的发送,例如空调器的温度检测模块、湿度检测模块、灰尘检测模块等。功能模块通过串口发送数据包时,经常遇到发送失败的问题,需要重新发送。对于具有多个功能模块的智能家电设备而言,每个功能模块都存储有发送数据包、判断数据包发送是否成功、数据包发送失败时重新发送的程序,占用功能模块的存储空间。
结合图1-1所示,当一个功能模块通过串口发送数据包时,其他功能模块处于排队等待的状态,程序执行效率低。例如第一功能模块通过串口发送数据包、接收回应信息、重新发送数据包时,第二功能模块和第三功能模块处于排队等待状态。在这种情况下,串口系统中的处理器用于发送数据包、传递回应信息。
结合图1-2所示,本公开实施例是在串口系统中增加内存作为数据缓冲区,多个功能模块仅需将数据包、最大发送次数和优先级发送给数据缓冲区,即,通过串口发送的数据包包括存储于数据缓冲区的多个功能模块的待发送数据包。例如,第一功能模块、第二功能模块和第三功能模块将数据包、最大发送次数和优先级发送给数据缓冲区后,不再参与接收回应信息和重新发送数据包的过程。在这种情况下,串口系统中的处理器用于发送数据包、根据回应信息判断数据包发送是否成功和重新发送数据包。
结合图2所示,本公开实施例提供一种用于串口数据处理的方法,包括:
S230,在数据缓冲区不为空的情况下,处理器通过串口发送数据包。
S250,在发送数据包失败的情况下,处理器判断数据包的重复发送次数是否达到最大发送次数。若是,执行步骤S260。若否,执行步骤S270。
S260,处理器删除数据包,数据包发送结束。
S270,处理器再次通过串口发送数据包。
采用本公开实施例提供的用于串口数据处理的方法,数据缓冲区将多个功能模块的数据包和最大发送次数存储。在数据缓冲区存在待发送数据包时,通过串口发送数据包。发送失败时,根据最大发送次数,确定是否重新发送数据包。需要重新发送时,通过串口再次发送数据包。每个功能模块仅需将数据包和最大发送次数发送至数据缓冲区,不需进行数据包的重复发送,以提高多个功能模块在串口数据传输中程序执行的效率。
可选地,在设定时间内未接收到回应信息,处理器确认发送数据包失败。这样,在长时间未收到回应信息时,说明可能出现数据包丢失、接收端忙碌等问题。以设定时间内是否收到回应信息判断数据包发送是否失败,程序简单,提高了多个功能模块在串口数据传输中程序执行的效率。
结合图3所示,本公开实施例提供另一种用于串口数据处理的方法,包括:
S210,处理器检测数据缓冲区。
S211,处理器判断数据缓冲区是否为满。若是,执行步骤S212。若否,执行步骤S220。
S212,处理器增加数据缓冲区的大小,并执行步骤S221。
S220,处理器判断数据缓冲区是否为空。若是,返回步骤S210。若否,执行步骤S221。
S221,处理器从数据缓冲区取出一个数据包。
S230,处理器通过串口发送数据包。
S240,处理器判断发送数据包是否成功。若是,执行步骤S260。若否,执行步骤S250。
S250,处理器判断数据包的重复发送次数是否达到最大发送次数。若是,执行步骤S260。若否,返回步骤S230。
S260,处理器删除数据包,并返回步骤S210。
采用本公开实施例提供的用于串口数据处理的方法,处理器通过检测数据缓冲区,确定数据缓冲区是否存在需要传输的功能模块的数据包。在数据缓冲区满的情况时,通过启用备用的内存增加数据缓冲区的大小,避免功能模块数据包的丢失。处理器发送数据包成功后,取出新的数据包发送,以实现模块的功能。
步骤S221中的处理器从数据缓冲区取出一个数据包时,与数据包对应的重复发送次数默认为0。
结合图4所示,本公开实施例提供另一种用于串口数据处理的方法,包括:
S210,处理器检测数据缓冲区。
S220,处理器判断数据缓冲区是否为空。若是,返回步骤S210。若否,执行步骤S221。
S221,处理器从数据缓冲区取出一个数据包。
S230,处理器通过串口发送数据包。
S231,处理器将数据包的重复发送次数增加一次。
S241,处理器判断在设定时间内是否接收到回应信息。若是,执行步骤S260。若否,执行步骤S250。
S250,处理器判断数据包的重复发送次数是否达到最大发送次数。若是,执行步骤S260。若否,返回步骤S230。
S260,处理器删除数据包,并返回步骤S210。
采用本公开实施例提供的用于串口数据处理的方法,在每次发送数据包之后增加重复发送次数,以判断重复发送次数是否达到最大发送次数。根据回应信息判断数据包发送是否成功,程序简单,提高了多个功能模块在串口数据传输中程序执行的效率。
可选地,数据缓冲区为先进先出数据缓冲区。这样,由于先进先出数据缓冲区没有外部读写地址线,便于取出数据包,提高了多个功能模块在串口数据传输中程序执行的效率。
结合图5所示,本公开实施例提供另一种用于串口数据处理的方法,包括:
S210,处理器检测数据缓冲区。
S220,处理器判断数据缓冲区是否为空。若是,返回步骤S210。若否,执行步骤S225。
S225,处理器取出一个最先进入数据缓冲区的数据包。
S230,处理器通过串口发送数据包。
S240,处理器判断发送数据包是否成功。若是,执行步骤S260。若否,执行步骤S250。
S250,处理器判断数据包的重复发送次数是否达到最大发送次数。若是,执行步骤S260。若否,返回步骤S230。
S260,处理器删除数据包,并返回步骤S210。
采用本公开实施例提供的用于串口数据处理的方法,按照先进先出原则取出数据包,防止因数据包顺序颠倒导致程序执行错误,提高了多个功能模块在串口数据传输中程序执行的效率。例如,工作于制冷模式的空调器室内机,温度检测模块在一定时间内发送3个数据包,每个数据包表示的温度值逐渐减小。空调器室内机能够根据逐渐降低的温度调整控制方法,防止温度下降过快。但是,如果不按照先进先出的原则取出数据包,可能会出现温度逐渐升高的假象。空调器室内机根据逐渐升高的温度调整控制方法,使室内温度大幅降低,导致程序执行错误。
可选地,数据包具有优先级。这样,对于重要的功能优先执行,以使智能家电设备满足用户的需求。
结合图6所示,本公开实施例提供另一种用于串口数据处理的方法,包括:
S210,处理器检测数据缓冲区。
S220,处理器判断数据缓冲区是否为空。若是,返回步骤S210。若否,执行步骤S222。
S222,处理器判断数据缓冲区的所有数据包的优先级是否相同。若是,执行步骤S225。若否,执行步骤S223。
S223,处理器从数据缓冲区中选择优先级最高的数据包。
S224,处理器从优先级最高的数据包中取出一个最先进入数据缓冲区的数据包,并执行步骤S230。
S225,处理器取出一个最先进入数据缓冲区的数据包。
S230,处理器通过串口发送数据包。
S231,处理器将数据包的重复发送次数增加一次。
S241,处理器判断在设定时间内是否接收到回应信息。若是,执行步骤S260。若否,执行步骤S250。
S250,处理器判断数据包的重复发送次数是否达到最大发送次数。若是,执行步骤S260。若否,返回步骤S230。
S260,处理器删除数据包,并返回步骤S210。
采用本公开实施例提供的用于串口数据处理的方法,处理器先根据优先级选择急需发送的数据,保障重要功能优先执行。再按先进先出原则取出数据包,注重重要性的同时兼顾功能模块发送数据包的顺序,防止因数据包顺序颠倒导致程序执行错误。
具体的,温度检测模块将数据包1、数据包1的最大发送次数3和数据包1的优先级1发送至数据缓冲区。湿度检测模块将数据包2、数据包2的最大发送次数1和数据包2的优先级2发送至数据缓冲区。灰尘检测模块将数据包3、数据包3的最大发送次数5和数据包3的优先级1发送至数据缓冲区。设定时间为200ms。处理器检测数据缓冲区的数据包,确定数据包1和数据包3的优先级相同,均高于数据包2的优先级。处理器将先进入数据缓冲区的数据包1取出,通过串口发送,将数据包1的重复发送次数增加一次。处理器在200ms内未收到回应信息,确认数据包1发送失败。由于重复发送次数1小于最大发送次数3,处理器再次通过串口发送数据包,将数据包1的重复发送次数增加一次。处理器在35ms时收到回应信息,将数据包1从数据缓冲区中删除。处理器取出数据包3,重复上述通过串口发送数据包的步骤。数据包3发送完成或重新发送次数达到最大发送次数后,处理器取出数据包2,重复上述通过串口发送数据包的步骤。
结合图7所示,本公开实施例提供一种用于串口数据处理的装置,包括处理器(processor)41和存储器(memory)42。可选地,该装置还可以包括通信接口(CommunicationInterface)43和总线44。其中,处理器41、通信接口43、存储器42可以通过总线44完成相互间的通信。通信接口43可以用于信息传输。处理器41可以调用存储器42中的逻辑指令,以执行上述实施例的用于串口数据处理的方法。
此外,上述的存储器42中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。
存储器42作为一种存储介质,可用于存储软件程序、计算机可执行程序,如本公开实施例中的方法对应的程序指令/模块。处理器41通过运行存储在存储器42中的程序指令/模块,从而执行功能应用以及数据处理,即实现上述实施例中用于串口数据处理的方法。
存储器42可包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端设备的使用所创建的数据等。此外,存储器42可以包括高速随机存取存储器,还可以包括非易失性存储器。
本公开实施例提供了一种串口系统,包含上述的用于串口数据处理的装置。
本公开实施例提供了一种存储介质,存储有计算机可执行指令,所述计算机可执行指令设置为执行上述用于串口数据处理的方法。
上述的存储介质可以是暂态计算机可读存储介质,也可以是非暂态计算机可读存储介质。
本公开实施例的技术方案可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括一个或多个指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本公开实施例所述方法的全部或部分步骤。而前述的存储介质可以是非暂态存储介质,包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等多种可以存储程序代码的介质,也可以是暂态存储介质。
以上描述和附图充分地示出了本公开的实施例,以使本领域的技术人员能够实践它们。其他实施例可以包括结构的、逻辑的、电气的、过程的以及其他的改变。实施例仅代表可能的变化。除非明确要求,否则单独的部件和功能是可选的,并且操作的顺序可以变化。一些实施例的部分和特征可以被包括在或替换其他实施例的部分和特征。而且,本申请中使用的用词仅用于描述实施例并且不用于限制权利要求。如在实施例以及权利要求的描述中使用的,除非上下文清楚地表明,否则单数形式的“一个”(a)、“一个”(an)和“所述”(the)旨在同样包括复数形式。类似地,如在本申请中所使用的术语“和/或”是指包含一个或一个以上相关联的列出的任何以及所有可能的组合。另外,当用于本申请中时,术语“包括”(comprise)及其变型“包括”(comprises)和/或包括(comprising)等指陈述的特征、整体、步骤、操作、元素,和/或组件的存在,但不排除一个或一个以上其它特征、整体、步骤、操作、元素、组件和/或这些的分组的存在或添加。在没有更多限制的情况下,由语句“包括一个…”限定的要素,并不排除在包括所述要素的过程、方法或者设备中还存在另外的相同要素。本文中,每个实施例重点说明的可以是与其他实施例的不同之处,各个实施例之间相同相似部分可以互相参见。对于实施例公开的方法、产品等而言,如果其与实施例公开的方法部分相对应,那么相关之处可以参见方法部分的描述。
本领域技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,可以取决于技术方案的特定应用和设计约束条件。所述技术人员可以对每个特定的应用来使用不同方法以实现所描述的功能,但是这种实现不应认为超出本公开实施例的范围。所述技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本文所披露的实施例中,所揭露的方法、产品(包括但不限于装置、设备等),可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,可以仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例。另外,在本公开实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
附图中的流程图和框图显示了根据本公开实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这可以依所涉及的功能而定。在附图中的流程图和框图所对应的描述中,不同的方框所对应的操作或步骤也可以以不同于描述中所披露的顺序发生,有时不同的操作或步骤之间不存在特定的顺序。例如,两个连续的操作或步骤实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这可以依所涉及的功能而定。框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
Claims (10)
1.一种用于串口数据处理的方法,其特征在于,包括:
在数据缓冲区不为空的情况下,通过串口发送数据包;其中,数据包包括存储于数据缓冲区的多个功能模块的待发送数据包;
在发送数据包失败的情况下,判断数据包的重复发送次数是否达到最大发送次数;若是,删除数据包;若否,再次通过串口发送数据包。
2.根据权利要求1所述的方法,其特征在于,在设定时间内未接收到回应信息,确认发送数据包失败。
3.根据权利要求1所述的方法,其特征在于,数据缓冲区为先进先出数据缓冲区。
4.根据权利要求1所述的方法,其特征在于,在通过串口发送数据包之后,还包括:
在发送数据包成功的情况下,删除数据包。
5.根据权利要求1所述的方法,其特征在于,在通过串口发送数据包之前,还包括:
检测数据缓冲区。
6.根据权利要求5所述的方法,其特征在于,在检测数据缓冲区之后,还包括:
在数据缓冲区满的情况下,增加数据缓冲区的大小。
7.根据权利要求1至6任一项所述的方法,其特征在于,在通过串口发送数据包之后,判断数据包的重复发送次数是否达到最大发送次数之前,还包括:
将数据包的重复发送次数增加一次。
8.一种用于串口数据处理的装置,包括处理器和存储有程序指令的存储器,其特征在于,所述处理器被配置为在运行所述程序指令时,执行如权利要求1至7任一项所述的用于串口数据处理的方法。
9.一种串口系统,其特征在于,包括如权利要求8所述的用于串口数据处理的装置。
10.一种存储介质,存储有程序指令,其特征在于,所述程序指令在运行时,执行如权利要求1至7任一项所述的用于串口数据处理的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111507547.7A CN116257473A (zh) | 2021-12-10 | 2021-12-10 | 用于串口数据处理的方法及装置、串口系统、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111507547.7A CN116257473A (zh) | 2021-12-10 | 2021-12-10 | 用于串口数据处理的方法及装置、串口系统、存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116257473A true CN116257473A (zh) | 2023-06-13 |
Family
ID=86684892
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111507547.7A Pending CN116257473A (zh) | 2021-12-10 | 2021-12-10 | 用于串口数据处理的方法及装置、串口系统、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116257473A (zh) |
-
2021
- 2021-12-10 CN CN202111507547.7A patent/CN116257473A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2596582C2 (ru) | Способ и устройство для адаптируемой к размерам памяти последовательной передачи данных | |
US9880956B2 (en) | Method and apparatus for adapting the data transmission security in a serial bus system | |
US7817552B2 (en) | Communication control method and system | |
KR101400329B1 (ko) | 통신 네트워크 시스템 | |
CN104995874B (zh) | 具有协议异常状态的数据传输协议 | |
CN113138802B (zh) | 命令分发装置、方法、芯片、计算机设备及存储介质 | |
TWI336040B (en) | A device for controlling endpoints of usb device and method of controlling endpoints of usb device | |
CN115174490B (zh) | 一种数据传输方法及网络应用终端 | |
CN114567607B (zh) | 一种多端口仲裁方法、装置、设备及计算机可读存储介质 | |
CN113138801B (zh) | 命令分发装置、方法、芯片、计算机设备及存储介质 | |
KR101676353B1 (ko) | 이종 네트워크 상의 메시지 제어 방법 및 장치 | |
CN113992654A (zh) | 一种高速的文件传输方法、系统、设备及介质 | |
CN113157465A (zh) | 基于指针链表的消息发送方法及装置 | |
CN116257473A (zh) | 用于串口数据处理的方法及装置、串口系统、存储介质 | |
CN109800202B (zh) | 一种基于pcie的数据传输系统、方法及装置 | |
KR101458436B1 (ko) | 데이터 전송 방법 및 이를 적용한 주식 체결 시스템 | |
CN109951255A (zh) | 一种基于tcp的数据传输方法、系统、源设备、及目标设备 | |
JP2021034828A (ja) | 通信装置及びプロトコルの切替方法 | |
CN112351049B (zh) | 数据传输方法、装置、设备及存储介质 | |
US7406531B2 (en) | Method and communication system for data exchange among multiple users interconnected over a bus system | |
CN103778091A (zh) | 用于操作和切换单导体接口的设备和方法 | |
CN104050124A (zh) | 应用于通用串行总线系统的数据传输电路及数据传输方法 | |
EP2726992B1 (en) | Network control model driver | |
US20190236857A1 (en) | On-vehicle relay device, relay device, relaying method, information processing device, information processing system, and vehicle | |
KR102474800B1 (ko) | 게이트웨이 및 게이트웨이 제어방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |