CN113382022B - 一种串口数据处理方法、电子设备及可读存储介质 - Google Patents
一种串口数据处理方法、电子设备及可读存储介质 Download PDFInfo
- Publication number
- CN113382022B CN113382022B CN202110921906.7A CN202110921906A CN113382022B CN 113382022 B CN113382022 B CN 113382022B CN 202110921906 A CN202110921906 A CN 202110921906A CN 113382022 B CN113382022 B CN 113382022B
- Authority
- CN
- China
- Prior art keywords
- byte
- serial port
- time
- preset
- port data
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- G—PHYSICS
- G08—SIGNALLING
- G08C—TRANSMISSION SYSTEMS FOR MEASURED VALUES, CONTROL OR SIMILAR SIGNALS
- G08C19/00—Electric signal transmission systems
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Systems (AREA)
Abstract
本发明提供一种串口数据处理方法、电子设备及可读存储介质,该方法应用于发送端,方法包括获取交流电到达预设电压时的信息;在至少部分目标时刻确定对应的正在发送的串口数据中的字节或字节位,目标时刻为根据交流电到达预设电压时的时刻确定的时刻;根据对应的正在发送的串口数据中的字节或字节位进行数据处理。本发明通过获取交流电到达预设电压时的信息,并在根据交流电到达预设电压时确定的时刻对正在发送的串口数据中字节或字节位进行数据处理实现加密,由于串口数据发送的时刻相对交流电到达预设电压时来说是随机的,所以对数据加密的位置也是随机的,使得不易破解。无需复杂的加密算法,收发双方都无需密钥,因此对硬件的要求不高。
Description
技术领域
本发明涉及电子电路技术领域,特别涉及一种串口数据处理方法、电子设备及可读存储介质。
背景技术
串口在日常生活中应用非常广泛,小到电子玩具,大到电脑、汽车、楼宇控制等。在串口数据传输过程中,特别是一些较长距离数据传输,如楼宇控制、水电燃气抄表等,往往会对数据进行加密处理。常用的加密算法如AES算法、RSA算法、MD5算法等等,通过密钥进行加密和解密。复杂的加密,保密程度高,难以破解,但软件代码也相对复杂,同时会占用较大的内存,数据也会变得冗长,而且对硬件的要求也高,一般功能较低的MCU都无法运行复杂的加密算法。而简单的加密,虽然代码相对简单,也不会占用太多的内存,对MCU的要求也不高,但保密程度较低,比较容易破解。
发明内容
基于此,本发明的目的是提供一种串口数据处理方法、电子设备及可读存储介质,以从根本上解决现有数据加解密过程中无法同时满足对硬件要求低及保密程度高的问题。
根据本发明实施例的一种串口数据处理方法,应用于发送端,所述方法包括:
获取交流电到达预设电压时的信息;
在至少部分目标时刻确定对应的正在发送的串口数据中的字节或字节位,所述目标时刻为根据所述交流电到达预设电压时的时刻确定的时刻;
根据所述对应的正在发送的串口数据中的字节或字节位进行数据处理。
另外,根据本发明上述实施例的一种串口数据处理方法,还可以具有如下附加的技术特征:
进一步地,所述获取交流电到达预设电压时的信息包括:
获取交流电电压过零点时的信息;
所述在至少部分目标时刻确定对应的正在发送的串口数据中的字节或字节位,包括:
在至少部分零点时刻启动计时器,延长预定时间后确定至少部分所述目标时刻,所述零点时刻为交流电电压过零点的时刻;
在至少部分目标时刻确定对应的正在发送的串口数据中的字节或字节位;
所述根据所述对应的正在发送的串口数据中的字节或字节位进行数据处理,包括:
在对应的正在发送的字节发送完成后插入新字节;或
对对应的正在发送的字节位延长预设发送时间。
进一步地,所述在对应的正在发送的字节发送完成后插入新字节的步骤包括:
根据首个插入的新字节中所携带的预设数据处理规则,从首个插入的所述新字节后的所述目标时刻中提取出至少部分的所述目标时刻;或者根据串口通讯协议中所携带的预设数据处理规则,提取出至少部分的所述目标时刻;
在提取出的至少部分的所述目标时刻,确定对应的正在发送的串口数据中的字节;
在对应的正在发送的字节发送完成后插入新字节。
进一步地,所述对对应的正在发送的字节位延长预设发送时间的步骤包括:
根据串口通讯协议中所携带的预设数据处理规则,提取出至少部分的所述目标时刻;
在提取出的至少部分的所述目标时刻,确定对应的正在发送的串口数据中的字节位;
对对应的正在发送的字节位延长预设发送时间。
根据本发明实施例的一种串口数据处理方法,应用于接收端,所述方法包括:
获取交流电到达预设电压时的信息;
在至少部分目标时刻确定对应的正在接收的串口数据中的字节或字节位,所述目标时刻为根据所述交流电到达预设电压时的时刻确定的时刻;
根据所述对应的正在接收的串口数据中的字节或字节位进行数据处理。
另外,根据本发明上述实施例的一种串口数据处理方法,还可以具有如下附加的技术特征:
进一步地,所述获取交流电到达预设电压时的信息包括:
获取交流电电压过零点时的信息;
所述在至少部分目标时刻确定对应的正在接收的串口数据中的字节或字节位,包括:
在至少部分零点时刻启动计时器,延长预定时间后确定至少部分所述目标时刻,所述零点时刻为交流电电压过零点的时刻;
在至少部分目标时刻确定对应的正在接收的串口数据中的字节或字节位;
所述根据所述对应的正在接收的串口数据中的字节或字节位进行数据处理,包括:
在对应的正在接收的字节接收完成后丢弃下一个字节;或
对对应的正在接收的字节位延长预设接收时间。
进一步地,所述在对应的正在接收的字节接收完成后丢弃下一个字节的步骤包括:
根据首个丢弃的字节中所携带的预设数据处理规则,从首个丢弃的所述字节后的所述目标时刻中提取出至少部分的所述目标时刻;或者根据串口通讯协议中所携带的预设数据处理规则,提取出至少部分的所述目标时刻;
根据提取出的至少部分的所述目标时刻,确定对应的正在接收的串口数据中的字节;
在对应的正在接收的字节接收完成后丢弃该对应的字节的下一个字节。
进一步地,所述对对应的正在接收的字节位延长预设接收时间的步骤包括:
根据串口通讯协议中所携带的预设数据处理规则,提取出至少部分的所述目标时刻;
在提取出的至少部分的所述目标时刻,确定对应的正在接收的串口数据中的字节位;
对对应的正在接收的字节位延长预设接收时间。
根据本发明实施例的一种电子设备,应用于发送端或接收端,所述电子设备包括:
检测电路,用于检测交流电到达预设电压时的信息;及
分别与所述检测电路和通讯串口连接的控制器,用于根据检测电路检测的信息相应的对所述通讯串口收发的串口数据进行数据处理;
其中,控制器进行数据处理的方法采用如上述应用于发送端当中所述的串口数据处理方法和/或如上述应用于接收端当中所述的串口数据处理方法。
另外,根据本发明上述实施例的电子设备,还可以具有如下附加的技术特征:
进一步地,所述电子设备为调光器,所述检测电路为过零检测电路。
本发明还提出一种可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述应用于发送端当中所述的串口数据处理方法和/或实现如上述应用于接收端当中所述的串口数据处理方法。
与现有技术相比:通过获取交流电到达预设电压时的信息,并根据交流电到达预设电压时的时刻确定出目标时刻,并在至少部分目标时刻确定出对应的正在发送的串口数据中的字节或字节位,并对其正在发送的字节或字节位进行数据处理实现加密,由于数据发送的时刻相对交流电到达预设电压时刻来说是随机的,所以对数据处理的位置也是随机的,从而起到数据加密的作用,因此串口数据不易破解。本发明在接收串口数据时,每次交流电到达预设电压时到来都会对接收的字节或字节位进行数据处理实现解密,从而可接收并解析得到有效的串口数据。同时其无需复杂的加密算法,发送端及接收端双方都无需使用密钥,因此对硬件的要求不高,一般的控制器就能运行,解决了现有数据加解密过程中无法同时满足对硬件要求低及保密程度高的问题。
附图说明
图1为本发明一实施例中的串口数据处理方法的流程图;
图2为本发明另一实施例中的串口数据处理方法的流程图;
图3为本发明实施例中所指出的串口数据的数据格式图;
图4为本发明实施例中所指出的其中一种串口数据处理过程图;
图5为本发明实施例中所指出的其中另一种串口数据处理过程图;
图6为本发明实施例中所指出的其中另一种串口数据的又一处理过程图;
图7为本发明又一实施例中的电子设备的模块示意图。
以下具体实施方式将结合上述附图进一步说明本发明。
具体实施方式
为了便于理解本发明,下面将参照相关附图对本发明进行更全面的描述。附图中给出了本发明的若干实施例。但是,本发明可以以许多不同的形式来实现,并不限于本文所描述的实施例。相反地,提供这些实施例的目的是使对本发明的公开内容更加透彻全面。
需要说明的是,当元件被称为“固设于”另一个元件,它可以直接在另一个元件上或者也可以存在居中的元件。当一个元件被认为是“连接”另一个元件,它可以是直接连接到另一个元件或者可能同时存在居中元件。本文所使用的术语“垂直的”、“水平的”、“左”、“右”以及类似的表述只是为了说明的目的。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。本文所使用的术语“及/或”包括一个或多个相关的所列项目的任意的和所有的组合。
实施例一
请参阅图1,所示为本发明第一实施例中的串口数据处理方法的流程示意图,为了便于说明,仅示出了与本发明实施例相关的部分,该方法应用于发送端当中,该方法具体包括步骤S01-步骤S03。
步骤S01,获取交流电到达预设电压时的信息。
其中,在本发明的一个实施例中,该串口数据处理方法应用于一电子设备当中,其中该电子设备包括检测电路及与检测电路连接的控制器,其参照图7所示,其检测电路与外部的市电连接,用于检测交流电到达预设电压时的信息;其中该预设电压可以为交流电的零点电压、波峰电压、波谷电压、或交流电中的任意一点电压值,其根据实际使用需要对预设电压进行设置,在此不做具体限定。在本发明的优选实施例中,其预设电压优选为交流电的零点电压,因此其检测电路可检测当前交流电的零点信息。可以理解的,在本发明的其他实施例中,其预设电压还可以为交流电的波峰电压等,使得其检测电路可检测该交流电的波峰信息,其根据实际使用需要相应的选定其预设电压及用于检测其预设电压的检测电路。
进一步的,其控制器分别与检测电路及通讯串口连接,其用于获取与其连接的检测电路所检测的信息,以及用于驱动与其连接的通讯串口中的数据发送及接收。需要指出的是,如图7所示,其通讯串口包括发送端口TXD及接收端口RXD,其通过串口数据线(例如RS232数据线)与另一电子设备中所对应的接收端口RXD及发送端口TXD连接,使得控制器可驱动通讯串口中的发送端口TXD发送串口数据至另一电子设备的接收端口RXD中、以及由通讯串口中的接收端口RXD接收另一电子设备的发送端口TXD所发送的串口数据,从而实现两个电子设备之间的数据通讯。
因此,若该电子设备通过发送端口TXD发送串口数据时,则其作为发送端,而通过串口数据线所连接的另一电子设备则作为接收端接收其所发送的串口数据;若该电子设备通过接收端口RXD接收串口数据时,则其作为接收端接收发送端所发送的串口数据,而通过串口数据线所连接的另一电子设备则作为发送端发送串口数据,此时电子设备既可以作为发送端也可以作为接收端,其根据当前处于发送串口数据还是接收串口数据进行确定。具体本发明实施例中,其从发送端一侧对其串口数据处理方法进行描述,且该串口数据处理方法用于当前正在发送的串口数据中;而当其电子设备当前未发送串口数据时,则其不实施本发明实施例中所述的串口数据处理方法。此时本发明实施例提供的串口数据处理方法具体应用于上述所述的控制器中,其中该控制器首先获取检测电路所检测的交流电到达预设电压时的信息,也即是检测电路实时检测当前的交流电的电压值,当在检测到交流电到达预设电压时,检测电路将该交流电到达预设电压时的信息发送给控制器,此时控制器同步获取到检测电路所检测的交流电到达预设电压时的信息。
其中,在本发明的一个优选实施例中,上述获取交流电到达预设电压时的信息具体包括:获取交流电电压过零点时的信息。也即是其检测电路实时检测当前交流市电的过零点,从而得到一个跟随市电过零点的方波,其参照图4及图5所示,因此控制器在控制当前发送串口数据的同时还会不断的获取检测电路所检测的该零点信号ZCD。具体的,本发明实施例中的下述步骤均以交流电的过零点作为预设电压为例进行具体描述,相应的当其预设电压为其他电压时的步骤可相应参照其下述的零点电压中的描述所述,后续不予赘述。
进一步的,其控制器驱动发送端口TXD发送串口数据的过程中,其所发送的串口数据包括待发送的若干个字节(Byte),其中所发送的字节数据格式参照图3所示,其每个字节都包括一个起始位,一个结束位,以及设于起始位及结束位之间的数据位,具体而言,其起始位及结束位均为一个字节位,而数据位包括有8个二进制的字节位(bit),其一个字节位的传输时间长度与通讯串口的波特率(bps)有关,具体的一个字节位的传输时间T=1/bps。其中,如图3所示的具体字节当中,其起始位设定为0,结束位设定为1,其具体的数据位为‘10011010’。
步骤S02,在至少部分目标时刻确定对应的正在发送的串口数据中的字节或字节位,目标时刻为根据交流电到达预设电压时的时刻确定的时刻。
其中,在本发明的一个实施例中,其目标时刻为根据交流电到达预设电压时的时刻确定的时刻,其中如上述优选实施例所述的预设电压为零点电压时,其目标时刻可以为该交流电到达零点电压时的零点时刻(即零点时刻为交流电电压过零点的时刻),或者根据该交流电到达零点电压时所延长预定时间后所得到的时刻,如延长一预定时间后到达交流电的波峰、波谷或其他位置,因此根据获取的零点电压可相应的确定出其目标时刻(如零点时刻、波峰时刻、或波谷时刻等时刻)。相应的,当其预设电压为波峰电压等其他电压时,其目标时刻也可为该交流电到达预设电压时的时刻,或根据该预设电压所延长预定时间后所得到的时刻,如其延长一预定时间后到达交流电的零点或其他电压位置。也即,其控制器可根据获取的零点电压确定出零点时刻,也可根据获取的波峰电压延时预定时间后确定出零点时刻,此时零点时刻并不仅局限于交流电过零点的检测。相应的,其控制器可根据获取的波峰电压确定出波峰时刻,也可根据获取的零点电压延时预定时间后确定出波峰时刻。
进一步的,在本发明的一个实施例中,上述在至少部分目标时刻确定对应的正在发送的串口数据中的字节或字节位,包括:
在至少部分零点时刻启动计时器,延长预定时间后确定至少部分所述目标时刻,零点时刻为交流电电压过零点的时刻;
在至少部分目标时刻确定对应的正在发送的串口数据中的字节或字节位。
其中,在具体实施时,其检测电路检测到交流电到达零点电压时相应的同步发送至控制器,其控制器在同步获取到该零点时刻时开始启动计时器进行计时,在计时一预定时间后确定出目标时刻,并在该目标时刻确定当前驱动的通讯串口所正在发送的串口数据中的字节或字节位。其中其部分目标时刻根据下述中的步骤进行确定。
其中,上述的预定时间大于等于0,其优选设定为小于该市电正弦波的半波周期,例如市电频率为50HZ,则其市电正弦波周期为0.02s,此时其半波周期为0.01s,也即是其预定时间优选小于0.01s。进一步的,本发明的优选实施例中,其预定时间优选设定为0s,此时目标时刻也即为其零点时刻。当然,其预定时间也可以为其他,其根据实际使用需要进行设置,在此不做具体限定。具体的,本发明实施例中的下述步骤均以交流电的零点时刻作为目标时刻为例进行具体描述,相应的,当其目标时刻为其他时刻时的步骤也可相应参照其零点时刻中的描述所述,后续不予赘述。
此时本实施例中,当控制器获取到交流电到达零点时,其相应的在该零点时刻确定对应的正在发送的串口数据中的字节或字节位。
步骤S03,根据对应的正在发送的串口数据中的字节或字节位进行数据处理。
其中,当控制器在至少部分目标时刻确定出对应的正在发送的串口数据中的字节或字节位时,其控制器根据对应的正在发送的串口数据中的字节或字节位进行相应的数据处理,从而实现对串口数据进行加密。其中数据处理包括以当前字节为基准对串口数据中的字节进行数据处理,也包括对当前字节本身的处理(也即对当前字节中的字节位进行数据处理),其中本实施例中,该当前字节为当前正在发送的串口数据中的字节。
其中,在本发明的一个实施例中,上述根据对应的正在发送的串口数据中的字节或字节位进行数据处理,包括:
在对应的正在发送的字节发送完成后插入新字节;或
对对应的正在发送的字节位延长预设发送时间。
具体的,在本发明的一个实施例中,上述在对应的正在发送的字节发送完成后插入新字节的步骤包括:
根据首个插入的新字节中所携带的预设数据处理规则,从首个插入的新字节后的所述目标时刻中提取出至少部分的目标时刻;或者根据串口通讯协议中所携带的预设数据处理规则,提取出至少部分的目标时刻;
在提取出的至少部分的所述目标时刻,确定对应的正在发送的串口数据中的字节;
在对应的正在发送的字节发送完成后插入新字节。
其中,在其中一个具体实施方式中,其控制器在驱动发送端口TXD初始发送串口数据过程中,当其控制器首次获取到检测电路所检测的交流电到达零点时,其控制器在该零点时刻确定出对应的正在发送的字节,并在对应的正在发送的字节发送完成后插入新字节,此时所插入的新字节即为首个插入的新字节,其中该首个插入的新字节中携带有预设数据处理规则,其预设数据处理规则用于设定对后续待发的串口数据插入新字节方式的选择,例如,是否对后续串口数据插入新字节、对串口数据插入新字节时的目标时刻的选择、以及对指定字节后面插入新字节等等。
作为本发明的一个示例,根据首个插入的新字节中的字节位或者字节位的组合确定后续待发的串口数据插入新字节的方式,即首个插入的新字节中所携带的预设处理规则为其字节或者字节位的组合定义的规则;其例如首个插入的新字节中的数据位包括有八个字节位,其中第一个字节位b0用于设定后续串口数据中是否插入新字节,例如其b0为1时,表示为后续串口数据中插入新字节;其b0为0时,表示为后续串口数据中不插入新字节。其中第二个字节位b1及第三个字节位b2用于设定对串口数据插入新字节时的目标时刻的选择,例如其b1b2为11时,表示为每个目标时刻;b1b2为10时,表示为每间隔的目标时刻,如每隔一个目标时刻、每隔两个目标时刻…每隔N个目标时刻,其中每间隔的位数又根据后续的字节位进行设定;b1b2为01时,表示为指定设定的目标时刻,如设定第二目标时刻、第五目标时刻、第八目标时刻等指定设定的目标时刻,其中指定设定的时刻又根据后续的字节位进行设定;b1b2为00时,表示为指定设定的字节,如设定第三个字节、第七个字节等指定设定的字节,其中指定设定的字节又根据后续的字节位进行设定。可以理解的,在本发明的其他实施例中,首个插入的新字节中携带的预设数据处理规则还可以通过其他方式进行表示,其根据实际使用需要对首个插入的新字节中的数据位进行设置得到其预设数据处理规则,在此不做具体限定。
具体实施时,若预设数据处理规则中确定不对后续串口数据插入新字节时,此时控制器驱动发送端口TXD发送的串口数据中仅仅插入有上述所述的首个插入的新字节。而在串口数据发送过程中,在第一个交流零点时刻插入一个新字节,加密后的数据比原数据多一个字节。其中串口数据经过其加密处理后,用正常的串口解析工具解析会出现在随机位置上多出一个字节,因此无法获取真实的串口数据,从而起到数据加密的作用。其中由于在零点时刻对正在发送的串口数据插入一个新字节实现进行加密,其数据发送的时刻相对交流零点来说是随机的,所以对数据加密的位置也是随机的,因此串口数据不易破解。同时其无需复杂的加密算法,发送端及接收端双方都无需使用密钥,因此对硬件的要求不高,一般的控制器就能运行。同时由于仅插入一个新字节,使得其控制器的处理比较简单,使得对硬件要求更简单。因此本发明实施例中的数据处理方法可以同时满足对硬件要求低及保密程度高的条件。
更进一步的,若预设数据处理规则中确定对后续串口数据插入新字节时,控制器驱动发送端口TXD发送的串口数据中除插入有上述所述的首个插入的新字节外,其在后续的至少部分零点时刻所确定的对应的正在发送的串口数据中的字节发送完成后还插入新字节。如图4所示,是一个发送3个字节的串口数据处理示例,通讯串口在发送第二字节时刚好遇到交流零点的到来,所以在第二字节发完后插入一个新字节,并在新字节发送完成后再继续发送剩余的第三字节,从而得到一个4个字节的数据。其中串口数据经过其数据加密处理后,用正常的串口解析工具解析会出现在随机位置上多出若干个字节,因此无法获取真实的串口数据,从而起到数据加密的作用。
更进一步的,若预设数据处理规则中确定对后续串口数据中的所有目标时刻均插入新字节时,则控制器驱动发送端口TXD发送串口数据的同时还不断的获取检测电路所检测的该零点信号ZCD,并在每当获取到零点信号时,其在零点时刻发完正在发送的字节后,并在该字节后面插入一个新字节,然后再发其他字节。其中,因为串口数据发送的时刻相对零点时刻来说是随机的,所以对数据加密的位置也是随机的,而由于在每个零点信号中均进行加密处理(也即插入新字节),因此使得保密程度高,难以破解。
相应的,若预设数据处理规则中确定对后续串口数据中每隔一个目标时刻插入新字节时,则控制器驱动发送端口TXD发送串口数据的同时还不断的获取检测电路所检测的该零点信号ZCD,并在每间隔获取到零点信号时,其在零点时刻发完正在发送的字节后,并在该字节后面插入一个新字节,然后再发其他字节,也即是说,其在串口数据发送的过程中,当在首个零点时刻发完正在发送的字节后插入第一个新字节后,其在第三个零点时刻、第五个零点时刻…第2N+1个零点时刻发完正在发送的字节后插入一个新字节。其中在每隔设定零点时刻进行加密处理,其可相对上述两种方式中,既实现较高程度的保密性,又实现降低控制器的硬件要求。
相应的,若预设数据处理规则中确定对后续串口数据中指定设定的目标时刻插入新字节时,则控制器驱动发送端口TXD发送串口数据的同时还不断的获取检测电路所检测的该零点信号ZCD,并在获取到指定设定的零点信号时,其在零点时刻发完正在发送的字节后,并在该字节后面插入一个新字节,其中指定设定的零点时刻根据首个插入的新字节中所携带的预设数据处理规则进行确定,也即首个插入的新字节中可以设定如第二目标时刻、第五目标时刻、第八目标时刻等为指定设定的目标时刻。其中,在指定设定的零点时刻进行加密处理,使得可有效进行自定义加密,其相对上述所述的规律性的进行加密可实现更高程度的保密性,同时又实现降低控制器的硬件要求。
相应的,若预设数据处理规则中确定对后续串口数据中指定设定的字节插入新字节时,则控制器驱动发送端口TXD发送串口数据后在所指定的字节发送完成后再插入一个新字节,其中指定设定的字节根据首个插入的新字节中所携带的预设数据处理规则进行确定,也即首个插入的新字节中可以设定如第三个字节、第七个字节等为指定设定的字节。其中,在指定设定的字节进行加密处理,使得也可有效进行自定义加密,其相对上述所述的规律性的进行加密也可实现更高程度的保密性,同时又实现降低控制器的硬件要求。
因此其控制器根据首个插入的新字节中所携带的预设数据处理规则,从首个插入的新字节后的目标时刻中提取出至少部分的目标时刻,并在提取出的至少部分的目标时刻中确定出对应的正在发送的串口数据中的字节,然后在对应的正在发送的字节发送完成后插入新字节。
其中,在其中另一个具体实施方式中,其串口通讯协议中也可携带有预设数据处理规则,其中两个电子设备在进行数据通讯的过程中,其需要串口通讯协议设定相互之间如何进行数据通讯,此时需要指出的是,其串口通讯协议中所携带的预设数据处理规则必定包括对后续串口数据插入新字节的设定,具体参照上述所述,在此不予赘述。因此其控制器根据串口通讯协议中所携带的预设数据处理规则也可提取出至少部分的目标时刻,并在提取出的至少部分的目标时刻中确定出对应的正在发送的串口数据中的字节,然后在对应的正在发送的字节发送完成后插入新字节。
其中,需要指出的是,串口通讯协议中携带有预设数据处理规则以及首个插入的新字节中携带有预设数据处理规则为两个并行的实施方式,当其串口通讯协议中携带有预设数据处理规则时,则其可以控制不在第一个零点时刻插入新字节或首个插入的新字节仅为普通字节,此时控制器并不需要读取该首个插入的新字节。相应的,当其串口通讯协议中未携带有预设数据处理规则,而首个插入的新字节中携带有预设数据处理规则时,此时控制器一定需要读取首个插入的新字节中的预设数据处理规则,并根据首个插入的新字节中携带有预设数据处理规则相应的对后续的部分目标时刻插入新字节。
如此,在串口数据发送过程中,在至少部分交流零点时刻会插入一个字节实现进行加密,其加密后的数据比原数据长一个或多个字节,因此串口数据经过其加密处理后,此时用正常的串口解析工具解析会出现在随机位置上多一个字节或多个字节,使得无法获取真实的串口数据。此时需要指出的是,其接收端也应采用与本发明实施例相对应的串口数据处理方法对对应的接收的串口数据进行解密处理,使得实现对串口数据的正常解密。
同时由于在零点时刻对正在发送的串口数据插入一个新字节实现进行加密,其串口数据发送的时刻相对零点时刻来说是随机的,所以插入新字节的位置也是随机的,从而起到数据加密的作用,因此串口数据不易破解。同时其无需复杂的加密算法,发送端及接收端双方都无需使用密钥,因此对硬件的要求不高,一般的控制器就能运行。
进一步的,其所插入的新字节可以是任何内容,当然,其也可以做为加密密钥使用,比如可以把插入的新字节作为校验码,例如其根据预设数据处理规则确定将新字节中的数据位设定为‘11111111’,当接收端对所接收的新字节校验不对(例如所获取的新字节为‘11111110’)时即可认为对应接收的串口数据是非法的,此时相应的保密程度更高。
其中,在本发明的另一个实施例中,上述对对应的正在发送的字节位延长预设发送时间的步骤包括:
根据串口通讯协议中所携带的预设数据处理规则,提取出至少部分的目标时刻;
在提取出的至少部分的目标时刻,确定对应的正在发送的串口数据中的字节位;
对对应的正在发送的字节位延长预设发送时间。
具体实施时,参照上述所述,其串口通讯协议中携带包含有预设数据处理规则,此时该预设数据处理规则用于设定对串口数据进行数据加密(也即对串口数据中的字节位进行延长预设发送时间)方式的选择,例如,对串口数据进行数据加密的目标时刻的选择、及对所延长预设发送时间等等。
参照上述所述,其预设数据处理规则可以设定每个零点时刻均对正在发送的字节位延长预设发送时间、或设定为每隔若干个零点时刻对正在发送的字节位延长预设发送时间、或设定为指定设定的零点时刻对正在发送的字节位延长预设发送时间。
当然其也可直接设定所延长的预设发送时间,此时通过预设发送时间的长度来定义对串口数据进行数据加密的方式。例如,当预设发送时间为30us,此时定义为每个零点时刻均对正在发送的字节位延长预设发送时间;当预设发送时间为40us,此时定义为只在首次获取的零点时刻对正在发送的字节位延长预设发送时间,其后续发送的所有字节位都不再延长预设发送时间;当预设发送时间为50us,此时定义为每隔一个零点时刻对正在发送的字节位延长预设发送时间。此时通过预设发送时间的长度来定义对串口数据进行数据加密的方式不限于上述几种,可根据实际需求进行灵活运用,在此不做具体限定。
其中,具体实施时,其控制器在驱动发送端口TXD发送串口数据过程中,其控制器根据串口通讯协议中所携带的预设数据处理规则,提取出部分的目标时刻,例如上述所述的每个零点时刻、或每隔若干个零点时刻、或指定设定的零点时刻,此时在提取出的部分的目标时刻中确定对应的正在发送的串口数据中的字节位,并对对应的正在发送的字节位延长预设发送时间t,使得当其正在发送的字节位的传输时间由原来的T延长为T+t,之后的字节位的传输时间保持不变,其依旧为T。如图5所示,是一个发送各个字节位的串口数据处理示例,通讯串口在发送一个字节时,该字节中所需发送的数据位为‘11010000’,此时在数据位中的第三字节位(‘0’)时刚好遇到交流零点的到来,此时对该第三字节位(‘0’)的传输时间T延长为T+t,在该第三字节位的传输时间延长完成后,之后的其他字节位的传输时间保持不变。而在本发明的其他实施例中,如图6所示,是一个发送各个字节位的串口数据又一处理示例,通讯串口在发送一个字节时,该字节中所需发送的数据位为‘11010000’,此时在数据位中的第三字节位(‘0’)时刚好遇到交流零点的到来,此时计时预定时间a后确定出目标时刻,而在计时预定时间a后刚好在第四字节位(‘1’),此时对该第四字节位(‘1’)的传输时间T延长为T+t,在该第四字节位的传输时间延长完成后,之后的其他字节位的传输时间保持不变。其中串口数据经过其数据加密处理后,用正常的串口解析工具无法准确解析数据,其数据中会出现多读一位或多位的情况,因此解析出来的数据是错误的。其中,需要指出的是,由于串口数据发送的时刻相对零点时刻来说是随机的,因此其零点时刻除处在对应的字节发送的数据位外,其也可能处在起始位或者结束位,此时当零点时刻在字节发送的起始位或结束位时,其也相应的对对应的正在发送的字节位延长预设发送时间。
如此,在串口数据发送过程中,在至少部分交流零点时刻会对对应的正在发送的字节位延长预设发送时间实现进行加密,其加密后的字节数据比原字节多一个或多个字节位,因此串口数据经过其加密处理后,正常的串口解析工具无法准确解析数据,会出现多读一位或多位字节位的情况,因此解析出来的数据是错误的。此时需要指出的是,其接收端也应采用与本发明实施例相对应的串口数据处理方法对对应接收的串口数据进行解密处理,使得实现对串口数据的正常解密。
同时由于在零点时刻对正在发送的串口数据中的字节位延长预设发送时间实现进行加密,其串口数据发送的时刻相对零点时刻来说是随机的,所以延长预设发送时间的字节位的位置也是随机的,从而起到数据加密的作用,因此串口数据不易破解。同时其无需复杂的加密算法,发送端及接收端双方都无需使用密钥,因此对硬件的要求不高,一般的控制器就能运行。
综上,本发明上述实施例当中的串口数据处理方法,通过获取交流电到达预设电压时的信息,并根据交流电到达预设电压时的时刻确定出目标时刻,并在至少部分目标时刻确定出对应的正在发送的串口数据中的字节或字节位,并对其正在发送的字节或字节位进行数据处理实现加密,由于数据发送的时刻相对交流电到达预设电压时刻来说是随机的,所以对数据处理的位置也是随机的,从而起到数据加密的作用,因此串口数据不易破解。同时其无需复杂的加密算法,发送端及接收端双方都无需使用密钥,因此对硬件的要求不高,一般的控制器就能运行,解决了现有数据加解密过程中无法同时满足对硬件要求低及保密程度高的问题。
实施例二
请参阅图2,所示为本发明第二实施例中的串口数据处理方法的流程示意图,为了便于说明,仅示出了与本发明实施例相关的部分,该方法应用于接收端当中,所述方法具体包括步骤S11-步骤S13。
步骤S11,获取交流电到达预设电压时的信息。
其中,在本发明的一个实施例中,参照前述实施例中的步骤所述,本发明实施例中的串口数据处理方法应用于上述所述的作为接收端的电子设备当中,也即此时发送端在发送串口数据并对其进行加密处理的过程中,其通过串口数据线连接的接收端接收串口数据的同时也对其接收的串口数据进行解密处理,从而实现了对所加密后的串口数据进行相应的解密处理。
具体本发明实施例中,其从接收端一侧对其串口数据处理方法进行描述,且该串口数据处理方法用于对应的正在接收的串口数据中;而当其电子设备对应的未接收串口数据时,则其不实施本发明实施例中所述的串口数据处理方法。此时本发明实施例提供的串口数据处理方法具体应用于上述所述的控制器中,其中该控制器首先获取检测电路所检测的交流电到达预设电压时的信息,其本实施例中的具体步骤均可相应的参照前述实施例中的步骤所述,在此不予赘述。
步骤S12,在至少部分目标时刻确定对应的正在接收的串口数据中的字节或字节位,目标时刻为根据交流电到达预设电压时的时刻确定的时刻。
其中,在本发明的一个实施例中,上述在至少部分目标时刻确定对应的正在接收的串口数据中的字节或字节位,包括:
在至少部分零点时刻启动计时器,延长预定时间后确定至少部分所述目标时刻,零点时刻为交流电电压过零点的时刻;
在至少部分目标时刻确定对应的正在接收的串口数据中的字节或字节位。
此时本实施例中,当控制器获取到交流电到达零点时,其相应的在该零点时刻确定对应的正在接收的串口数据中的字节或字节位,其本实施例中的具体步骤均可相应的参照前述实施例中的步骤所述,在此不予赘述。
步骤S13,根据对应的正在接收的串口数据中的字节或字节位进行数据处理。
其中,当控制器在至少部分目标时刻确定出对应的正在接收的串口数据中的字节或字节位时,其控制器根据对应的正在接收的串口数据中的字节或字节位进行相应的数据处理,从而实现对串口数据进行解密。其中数据处理包括以当前字节为基准对串口数据中的字节进行数据处理,也包括对当前字节本身的处理(也即对当前字节中的字节位进行数据处理),其中本实施例中,该当前字节为当前正在接收的串口数据中的字节。
其中,在本发明的一个实施例中,上述根据对应的正在接收的串口数据中的字节或字节位进行数据处理,包括:
在对应的正在接收的字节接收完成后丢弃下一个字节;或
对对应的正在接收的字节位延长预设接收时间。
具体的,在本发明的一个实施例中,上述在对应的正在接收的字节接收完成丢弃下一个字节的数据读取的步骤包括:
根据首个丢弃的字节中所携带的预设数据处理规则,从首个丢弃的字节后的目标时刻中提取出至少部分的目标时刻;或者根据串口通讯协议中所携带的预设数据处理规则,提取出至少部分的目标时刻;
根据提取出的至少部分的目标时刻,确定对应的正在接收的串口数据中的字节;
在对应的正在接收的字节接收完成后丢弃该对应的字节的下一个字节。
其中,需要指出的是,本实施例中的预设数据处理规则与前述应用于发送端中的预设数据处理规则相对应,也即是当发送端在发送的串口数据中首个插入的新字节携带有预设数据处理规则时,则在对应于首个插入的新字节前的零点时刻,接收端在该零点时刻,在对应的正在接收的字节接收完成后接收并读取下一个字节,此时所接收并读取的下一个字节即为首个丢弃的字节(读取完后丢弃),该首个被丢弃的字节也即原发送端首个插入的新字节,本发明实施例中将首个丢弃的字节定义为第一目标字节,其中该第一目标字节中携带有预设数据处理规则(即发送端的首个插入的新字节中携带的预设处理规则),所以,发送端根据预设数据处理规则,相应的在第一个新插入的字节之后的至少部分目标时刻对应的字节发送完成后再次插入新字节,此时相应的接收端根据预设数据处理规则相应的在第一目标字节之后的至少部分目标时刻对应的字节接收完成后对下一个字节进行丢弃(即把发送端后续再次插入的新字节丢弃),这样接收端便还原出原有的串口数据,即解密。
具体的,参照前述实施例中的步骤所述,根据首个丢弃的字节的字节位或者字节位的组合确定后续待收的串口数据丢弃字节的方式,即首个丢弃的字节中所携带的预设数据处理规则为其字节或字节位的组合定义的规则,其例如第一目标字节中的数据位包括有八个字节位,其中在发送端当中,其第一个字节位b0用于设定后续串口数据中是否插入新字节,此时在接收端当中也可相应的确定为后续串口数据中是否丢弃下一字节,例如其b0为1时,表示为后续串口数据中丢弃下一字节;其b0为0时,表示为后续串口数据中不丢弃下一字节。其中在发送端当中,其第二个字节位b1及第三个字节位b2用于设定对串口数据中插入新字节时的目标时刻的选择,此时在接收端当中也可相应的确定为对串口数据丢弃下一字节时的目标时刻的选择,其具体参照前述实施例中的步骤所述,在此不予赘述。
因此具体实施时,若发送端根据预设数据处理规则在首个插入的新字节后不再在其他零点时刻后插入新字节时,此时控制器获取接收端口RXD接收的串口数据中仅仅丢弃第一目标字节,其后续的字节相应的照常接收。其中在串口数据接收过程中,其先在第一个交流零点时刻后读取该第一目标字节携带的数据处理规则,并在解析出其第一目标字节中携带的预设数据处理规则后,再将该第一目标字节进行丢弃;或者完全接收该第一目标字节,也即该串口数据中包括有该第一目标字节,但在该串口数据读取解析时丢弃该字节,实现最终获取的串口数据中丢弃了该第一目标字节。由于按照前述实施例所述串口数据处理方法进行加密后的数据比原数据多一个字节,用正常的串口解析工具解析会出现在随机位置上多出一个字节,因此无法获取真实的串口数据。而经过本发明实施例中串口数据处理方法对其串口数据进行解密处理后,其会将发送端发送的串口数据中所插入的新字节进行丢弃,从而可以正确解析数据,获取到真实的数据。
其中如图4所示,是一个发送端发送3个字节的串口数据处理示例,通讯串口在发送第二字节时刚好遇到交流零点的到来,所以在第二字节发完后插入一个新字节,并在新字节发送完成后再继续发送剩余的第三字节,从而得到一个4个字节的数据。此时接收端在接收该4个字节的数据的过程中,通讯串口在接收第二字节时也会刚好遇到交流零点的到来,此时在第二字节接收完后,相应的丢弃下一字节,具体的,其可以为在接收的过程中对该字节进行丢弃,当然,其也可以为完全接收该字节,但在该串口数据读取解析时丢弃该字节。
相应的,本实施例中对串口数据丢弃下一字节时的目标时刻的选择具体参照前述实施例中的步骤所述,其例如每当获取到零点信号时,其在零点时刻接收完正在接收的字节后,丢弃该字节的下一个字节,然后再接收后续字节,在此不对其丢弃下一字节时的目标时刻的选择进行赘述。
其中,在其中另一个具体实施方式中,其串口通讯协议中也可携带有预设数据处理规则,此时需要指出的是,其串口通讯协议中所携带的预设数据处理规则一定包括对后续串口数据丢弃下一字节的设定,具体参照上述所述,在此不予赘述。
其中,需要指出的是,串口通讯协议中携带有预设数据处理规则以及第一目标字节中携带有预设数据处理规则为两个并行的实施方式,当其串口通讯协议中携带有预设数据处理规则时,则其可以控制不在第一个零点时刻丢弃下一字节或第一目标字节仅为普通字节,此时控制器并不需要读取该第一目标字节。相应的,当其串口通讯协议中未携带有预设数据处理规则时,此时控制器一定需要读取第一目标字节,并根据第一目标字节中携带有预设数据处理规则相应的对后续的部分目标时刻丢弃下一字节。
如此,在串口数据接收过程中,其将发送端所发送的经加密的串口数据进行接收时,可相应的在预设数据处理规则所确定的部分交流零点时刻丢弃下一字节实现进行解密,使得将发送端发送的串口数据中所插入的新字节进行丢弃,从而其解密后的数据可恢复原数据中的内容,因此可以正确解析数据,获取到真实的数据。而用正常的串口解析工具解析时,其接收的串口数据会出现在随机位置上多一个字节或多个字节,使得无法获取真实的串口数据。
因此由于发送端在零点时刻对正在发送的串口数据插入一个新字节实现进行加密,其串口数据发送的时刻相对零点时刻来说是随机的,所以插入新字节的位置也是随机的,从而起到数据加密的作用,相应的接收端在对应的零点时刻对正在接收的串口数据丢弃下一字节实现进行解密时,可以正确解析数据,获取到真实的数据。同时发送端及接收端在对串口数据进行加解密的过程中,其无需复杂的加密算法,发送端及接收端双方都无需使用密钥,因此对硬件的要求不高,一般的控制器就能运行。
进一步的,当其发送端中所插入的新字节为任何无用内容时,其接收端可直接将其下一字节进行丢弃。而当发送端中所插入的新字节做为加密密钥使用时,如前述实施例所述的把插入的新字节作为校验码,如其根据预设数据处理规则确定将新字节中的数据位设定为‘11111111’,此时接收端对其所需丢弃的下一字节先进行读取,并进行校验验证,如确定所获取的待丢弃的下一字节为‘11111110’校验成功时,则将其进行丢弃。而当接收端对所接收的待丢弃的下一字节校验不对(例如所获取的字节为‘11111110’)时即可认为对应接收的串口数据是非法的,此时接收端停止对其串口数据的接收,并将所接收的串口数据进行丢弃。此时可以确定,当接收到未经本发明实施例进行数据加密处理的数据,经本发明接收解析后都会认定是非法数据而被丢弃,使得可以对其进行加密后的串口数据进行精准的解密,而其他未加密的串口数据均被丢弃。
进一步的,需要指出的是,在本发明实施例中,其可以为接收端边接收串口数据边确定出零点时刻然后进行相应的解密操作,使得最终得到解密后的串口数据。当然,其也可以为接收端接收完整的串口数据,并对每一个零点时刻时所接收的字节进行标记,此时接收端根据该串口通讯协议中所携带的预设数据处理规则或第一目标字节中携带的预设数据处理规则相应的确定出部分目标时刻,并在串口数据进行读取解析时对所确定的部分目标时刻对应的字节后的下一字节进行丢弃。
其中,在本发明的另一个实施例中,上述对对应的正在接收的字节位延长预设接收时间的步骤包括:
根据串口通讯协议中所携带的预设数据处理规则,提取出至少部分的目标时刻;
在提取出的至少部分的目标时刻,确定对应的正在接收的串口数据中的字节位;
对对应的正在接收的字节位延长预设接收时间。
其中,需要指出的是,参照上述所述,本实施例中的预设数据处理规则与前述应用于发送端中的预设数据处理规则相对应,其发送端根据预设数据处理规则相应的在部分目标时刻对对应的正在发送的字节位延长预设发送时间,此时相应的接收端根据预设数据处理规则相应的在部分目标时刻对对应的正在接收的字节位延长预设接收时间。
具体实施时,参照前述实施例中的步骤所述,其发送端根据预设数据处理规则确定出相应的部分目标时刻以及预设发送时间,并依照预设数据处理规则进行串口数据的加密时,如当预设发送时间为30us,此时发送端在每个零点时刻均对正在发送的字节位延长30us;其接收端根据预设数据处理规则确定出相应的部分目标时刻以及预设接收时间,并相应的依照预设数据处理规则进行串口数据的解密处理,也即是接收端在每个零点时刻均对正在接收的字节位延长30us。
如图5所示,是一个发送端发送各个字节位的串口数据处理示例,通讯串口在发送一个字节时,该字节中所需发送的数据位为‘11010000’,此时在数据位中的第三字节位(‘0’)时刚好遇到交流零点的到来,此时对该第三字节位(‘0’)的传输时间T延长为T+t,在该第三字节位的传输时间延长完成后,之后的其他字节位的传输时间保持不变。此时接收端在接收该字节数据的过程中,通讯串口在接收第三字节位时也会刚好遇到交流零点的到来,此时在读取该第三字节位的时间T延长为T+t。而在本发明的其他实施例中,如图6所示,此时接收端在接收该字节数据的过程中,其交流零点的到来时刚好遇到通讯串口在接收第三字节位,此时计时预定时间a后确定出目标时刻,而在计时预定时间a后刚好在接收第四字节位(‘1’),此时在读取该第四字节位的时间T延长为T+t。
如此,在串口数据接收过程中,其将发送端所发送的经加密的串口数据进行接收时,可相应的在预设数据处理规则所确定的部分交流零点时刻对对应的正在接收的字节位延长预设接收时间实现进行解密,从而其解密后的数据可恢复原数据中的内容,因此可以正确解析数据,获取到真实的数据。而用正常的串口解析工具解析时,会出现多读一位或多位字节位的情况,因此解析出来的数据是错误的,使得无法获取真实的串口数据。
因此由于发送端在零点时刻对正在发送的串口数据中的字节位延长预设发送时间实现进行加密,其串口数据发送的时刻相对零点时刻来说是随机的,所以延长预设发送时间的字节位的位置也是随机的,从而起到数据加密的作用,相应的接收端在对应的零点时刻对正在接收的串口数据中的字节位延长预设接收时间实现进行解密时,可以正确解析数据,获取到真实的数据。同时发送端及接收端在对串口数据进行加解密的过程中,其无需复杂的加密算法,发送端及接收端双方都无需使用密钥,因此对硬件的要求不高,一般的控制器就能运行。
综上,本发明上述实施例当中的串口数据处理方法,通过获取交流电到达预设电压时的信息,并根据交流电到达预设电压时的时刻确定出目标时刻,并在至少部分目标时刻确定出对应的正在接收的串口数据中的字节或字节位,并对其正在接收的字节或字节位进行数据处理实现解密,使得可将发送端所发送的经数据加密处理的串口数据进行解析得到有效的串口数据。同时其无需复杂的加密算法,发送端及接收端双方都无需使用密钥,因此对硬件的要求不高,一般的控制器就能运行,解决了现有数据加解密过程中无法同时满足对硬件要求低及保密程度高的问题。
实施例三
本发明另一方面还提供一种发送端,本发明第三实施例中的发送端包括:
第一获取模块,用于获取交流电到达预设电压时的信息;
第一确定模块,用于在至少部分目标时刻确定对应的正在发送的串口数据中的字节或字节位,所述目标时刻为根据所述交流电到达预设电压时的时刻确定的时刻;
第一数据处理模块,用于根据所述对应的正在发送的串口数据中的字节或字节位进行数据处理。
进一步地,在本发明一些可选实施例当中,所述第一获取模块包括:
第一获取单元,获取交流电电压过零点时的信息;
所述第一确定模块包括:
第一确定单元,用于在至少部分零点时刻启动计时器,延长预定时间后确定至少部分所述目标时刻,所述零点时刻为交流电电压过零点的时刻;
第二确定单元,用于在至少部分目标时刻确定对应的正在发送的串口数据中的字节或字节位;
所述第一数据处理模块包括:
第一数据处理单元,用于在对应的正在发送的字节发送完成后插入新字节;或
第二数据处理单元,用于对对应的正在发送的字节位延长预设发送时间。
进一步地,在本发明一些可选实施例当中,所述第一数据处理单元包括:
第一提取子单元,用于根据首个插入的新字节中所携带的预设数据处理规则,从首个插入的所述新字节后的所述目标时刻中提取出至少部分的所述目标时刻;或者根据串口通讯协议中所携带的预设数据处理规则,提取出至少部分的所述目标时刻;
第一确定子单元,用于在提取出的至少部分的所述目标时刻,确定对应的正在发送的串口数据中的字节;
第一数据处理子单元,用于在对应的正在发送的字节发送完成后插入新字节。
进一步地,在本发明一些可选实施例当中,所述第二数据处理单元包括:
第二提取子单元,用于根据串口通讯协议中所携带的预设数据处理规则,提取出至少部分的所述目标时刻;
第二确定子单元,用于在提取出的至少部分的所述目标时刻,确定对应的正在发送的串口数据中的字节位;
第二数据处理子单元,用于对对应的正在发送的字节位延长预设发送时间。
上述各模块、单元被执行时所实现的功能或操作步骤与上述方法实施例大体相同,在此不再赘述。
综上,本发明上述实施例当中的发送端,通过获取交流电到达预设电压时的信息,并根据交流电到达预设电压时的时刻确定出目标时刻,并在至少部分目标时刻确定出对应的正在发送的串口数据中的字节或字节位,并对其正在发送的字节或字节位进行数据处理实现加密,由于数据发送的时刻相对交流电到达预设电压时刻来说是随机的,所以对数据处理的位置也是随机的,从而起到数据加密的作用,因此串口数据不易破解。同时其无需复杂的加密算法,发送端及接收端双方都无需使用密钥,因此对硬件的要求不高,一般的控制器就能运行,解决了现有数据加解密过程中无法同时满足对硬件要求低及保密程度高的问题。
实施例四
本发明另一方面还提供一种接收端,本发明第四实施例中的接收端包括:
第二获取模块,用于获取交流电到达预设电压时的信息;
第二确定模块,用于在至少部分目标时刻确定对应的正在接收的串口数据中的字节或字节位,所述目标时刻为根据所述交流电到达预设电压时的时刻确定的时刻;
第二数据处理模块,用于根据所述对应的正在接收的串口数据中的字节或字节位进行数据处理。
进一步地,在本发明一些可选实施例当中,所述第二获取模块包括:
第二获取单元,获取交流电电压过零点时的信息;
所述第二确定模块包括:
第三确定单元,用于在至少部分零点时刻启动计时器,延长预定时间后确定至少部分所述目标时刻,所述零点时刻为交流电电压过零点的时刻;
第四确定单元,用于在至少部分目标时刻确定对应的正在接收的串口数据中的字节或字节位;
所述第二数据处理模块包括:
第三数据处理单元,用于在对应的正在接收的字节接收完成后丢弃下一个字节;或
第四数据处理单元,用于对对应的正在接收的字节位延长预设接收时间。
进一步地,在本发明一些可选实施例当中,所述第三数据处理单元包括:
第三提取子单元,用于根据首个丢弃的字节中所携带的预设数据处理规则,从首个丢弃的所述字节后的所述目标时刻中提取出至少部分的所述目标时刻;或者根据串口通讯协议中所携带的预设数据处理规则,提取出至少部分的所述目标时刻;
第三确定子单元,用于根据提取出的至少部分的所述目标时刻,确定对应的正在接收的串口数据中的字节;
第三数据处理子单元,用于在对应的正在接收的字节接收完成后丢弃该对应的字节的下一个字节。
进一步地,在本发明一些可选实施例当中,所述第四数据处理单元包括:
第四提取子单元,用于根据串口通讯协议中所携带的预设数据处理规则,提取出至少部分的所述目标时刻;
第四确定子单元,用于在提取出的至少部分的所述目标时刻,确定对应的正在接收的串口数据中的字节位;
第四数据处理子单元,用于对对应的正在接收的字节位延长预设接收时间。
上述各模块、单元被执行时所实现的功能或操作步骤与上述方法实施例大体相同,在此不再赘述。
综上,本发明上述实施例当中的接收端,通过获取交流电到达预设电压时的信息,并根据交流电到达预设电压时的时刻确定出目标时刻,并在至少部分目标时刻确定出对应的正在接收的串口数据中的字节或字节位,并对其正在接收的字节或字节位进行数据处理实现解密,使得可将发送端所发送的经数据加密处理的串口数据进行解析得到有效的串口数据。同时其无需复杂的加密算法,发送端及接收端双方都无需使用密钥,因此对硬件的要求不高,一般的控制器就能运行,解决了现有数据加解密过程中无法同时满足对硬件要求低及保密程度高的问题。
实施例五
请参阅图7,所示为本发明第五实施例中的电子设备的模块示意图,为了便于说明,仅示出了与本发明实施例相关的部分,其电子设备应用于发送端或接收端当中,电子设备包括:
检测电路,用于检测交流电到达预设电压时的信息;及
分别与检测电路和通讯串口连接的控制器,用于根据检测电路检测的信息相应的对通讯串口收发的串口数据进行数据处理;
其中,控制器进行数据处理的方法采用如前述实施例一所述的串口数据处理方法和/或如前述实施例二所述的串口数据处理方法。
其中,具体的,该电子设备为调光器,检测电路为过零检测电路。其中,该调光器中包含有过零检测电路以及控制器,此时该调光器可根据前述实施例一所述的串口数据处理方法和/或前述实施例二所述的串口数据处理方法实现对待发送数据的加解密,由于调光器切相调光的需要,其本身往往自带有过零检测电路,所以将串口数据的加解密方法应用于调光器,仅需要在普通调光器中写入相对应的加解密程序即可,无需要再额外配置过零检测的硬件电路,实现了调光器与调光器之间通信的可靠性,同时,没有加解密程序的调光器无法与有加解密程序的调光器联动使用。
本发明实施例还提出一种可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如前述实施例一所述的串口数据处理方法和/或实现如前述实施例二所述的串口数据处理方法。
本领域技术人员可以理解,在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何可读存储介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,“可读存储介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。
可读存储介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,可读存储介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或它们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、 “示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (11)
1.一种串口数据处理方法,其特征在于,应用于发送端,所述方法包括:
获取交流电到达预设电压时的信息;
在至少部分目标时刻确定对应的正在发送的串口数据中的字节或字节位,所述目标时刻为根据所述交流电到达预设电压时的时刻确定的时刻;
根据所述对应的正在发送的串口数据中的字节或字节位进行数据处理。
2.根据权利要求1所述的串口数据处理方法,其特征在于,所述获取交流电到达预设电压时的信息包括:
获取交流电电压过零点时的信息;
所述在至少部分目标时刻确定对应的正在发送的串口数据中的字节或字节位,包括:
在至少部分零点时刻启动计时器,延长预定时间后确定至少部分所述目标时刻,所述零点时刻为交流电电压过零点的时刻;
在至少部分目标时刻确定对应的正在发送的串口数据中的字节或字节位;
所述根据所述对应的正在发送的串口数据中的字节或字节位进行数据处理,包括:
在对应的正在发送的字节发送完成后插入新字节;或
对对应的正在发送的字节位延长预设发送时间。
3.根据权利要求2所述的串口数据处理方法,其特征在于,所述在对应的正在发送的字节发送完成后插入新字节的步骤包括:
根据首个插入的新字节中所携带的预设数据处理规则,从首个插入的所述新字节后的所述目标时刻中提取出至少部分的所述目标时刻;或者根据串口通讯协议中所携带的预设数据处理规则,提取出至少部分的所述目标时刻;
在提取出的至少部分的所述目标时刻,确定对应的正在发送的串口数据中的字节;
在对应的正在发送的字节发送完成后插入新字节。
4.根据权利要求2所述的串口数据处理方法,其特征在于,所述对对应的正在发送的字节位延长预设发送时间的步骤包括:
根据串口通讯协议中所携带的预设数据处理规则,提取出至少部分的所述目标时刻;
在提取出的至少部分的所述目标时刻,确定对应的正在发送的串口数据中的字节位;
对对应的正在发送的字节位延长预设发送时间。
5.一种串口数据处理方法,其特征在于,应用于接收端,所述方法包括:
获取交流电到达预设电压时的信息;
在至少部分目标时刻确定对应的正在接收的串口数据中的字节或字节位,所述目标时刻为根据所述交流电到达预设电压时的时刻确定的时刻;
根据所述对应的正在接收的串口数据中的字节或字节位进行数据处理。
6.根据权利要求5所述的串口数据处理方法,其特征在于,所述获取交流电到达预设电压时的信息包括:
获取交流电电压过零点时的信息;
所述在至少部分目标时刻确定对应的正在接收的串口数据中的字节或字节位,包括:
在至少部分零点时刻启动计时器,延长预定时间后确定至少部分所述目标时刻,所述零点时刻为交流电电压过零点的时刻;
在至少部分目标时刻确定对应的正在接收的串口数据中的字节或字节位;
所述根据所述对应的正在接收的串口数据中的字节或字节位进行数据处理,包括:
在对应的正在接收的字节接收完成后丢弃下一个字节;或
对对应的正在接收的字节位延长预设接收时间。
7.根据权利要求6所述的串口数据处理方法,其特征在于,所述在对应的正在接收的字节接收完成后丢弃下一个字节的步骤包括:
根据首个丢弃的字节中所携带的预设数据处理规则,从首个丢弃的所述字节后的所述目标时刻中提取出至少部分的所述目标时刻;或者根据串口通讯协议中所携带的预设数据处理规则,提取出至少部分的所述目标时刻;
根据提取出的至少部分的所述目标时刻,确定对应的正在接收的串口数据中的字节;
在对应的正在接收的字节接收完成后丢弃该对应的字节的下一个字节。
8.根据权利要求6所述的串口数据处理方法,其特征在于,所述对对应的正在接收的字节位延长预设接收时间的步骤包括:
根据串口通讯协议中所携带的预设数据处理规则,提取出至少部分的所述目标时刻;
在提取出的至少部分的所述目标时刻,确定对应的正在接收的串口数据中的字节位;
对对应的正在接收的字节位延长预设接收时间。
9.一种电子设备,其特征在于,应用于发送端或接收端,所述电子设备包括:
检测电路,用于检测交流电到达预设电压时的信息;及
分别与所述检测电路和通讯串口连接的控制器,用于根据检测电路检测的信息相应的对所述通讯串口收发的串口数据进行数据处理;
其中,控制器进行数据处理的方法采用如权利要求1-4任意一项所述的串口数据处理方法和/或如权利要求5-8任意一项所述的串口数据处理方法。
10.根据权利要求9所述的电子设备,其特征在于,所述电子设备为调光器,所述检测电路为过零检测电路。
11.一种可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-4任意一项所述的串口数据处理方法和/或实现如权利要求5-8任意一项所述的串口数据处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110921906.7A CN113382022B (zh) | 2021-08-12 | 2021-08-12 | 一种串口数据处理方法、电子设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110921906.7A CN113382022B (zh) | 2021-08-12 | 2021-08-12 | 一种串口数据处理方法、电子设备及可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113382022A CN113382022A (zh) | 2021-09-10 |
CN113382022B true CN113382022B (zh) | 2021-11-02 |
Family
ID=77576795
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110921906.7A Active CN113382022B (zh) | 2021-08-12 | 2021-08-12 | 一种串口数据处理方法、电子设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113382022B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103023370A (zh) * | 2013-01-17 | 2013-04-03 | 中国科学院苏州纳米技术与纳米仿生研究所 | 随机电信号发生器及随机码生成器 |
KR101349849B1 (ko) * | 2013-05-21 | 2014-01-10 | (주)세이퍼존 | 범용 보안 저장 장치 |
CN204679557U (zh) * | 2015-02-12 | 2015-09-30 | 深圳奥特迅电力设备股份有限公司 | 判断交流信号串入直流系统的检测系统 |
CN105576785A (zh) * | 2016-03-09 | 2016-05-11 | 叶武剑 | 一种智能加密型无线充电系统 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5842125A (en) * | 1995-11-30 | 1998-11-24 | Amsc Subsidiary Corporation | Network control center for satellite communication system |
CN104796249B (zh) * | 2015-03-19 | 2018-10-30 | 柳州市新科电脑衡器制造有限责任公司 | 用于微电脑的串行通讯数据的加密方法 |
JP2021505938A (ja) * | 2017-12-01 | 2021-02-18 | ファセット・インコーポレーテッド | データ暗号化を改善するシステムおよび方法 |
CN112162944B (zh) * | 2020-10-15 | 2022-07-15 | 珠海格力电器股份有限公司 | 串口通讯的控制方法、处理器、串口通讯系统和存储介质 |
CN214278932U (zh) * | 2020-11-16 | 2021-09-24 | 杭州天迈生物科技有限公司 | 一种多模块间ttl电平串口总线通信电路 |
-
2021
- 2021-08-12 CN CN202110921906.7A patent/CN113382022B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103023370A (zh) * | 2013-01-17 | 2013-04-03 | 中国科学院苏州纳米技术与纳米仿生研究所 | 随机电信号发生器及随机码生成器 |
KR101349849B1 (ko) * | 2013-05-21 | 2014-01-10 | (주)세이퍼존 | 범용 보안 저장 장치 |
CN204679557U (zh) * | 2015-02-12 | 2015-09-30 | 深圳奥特迅电力设备股份有限公司 | 判断交流信号串入直流系统的检测系统 |
CN105576785A (zh) * | 2016-03-09 | 2016-05-11 | 叶武剑 | 一种智能加密型无线充电系统 |
Non-Patent Citations (1)
Title |
---|
A fast arc fault detection method for AC solid state power controllers in MEA;Weilin LI等;《Chinese Journal of Aeronautics》;20180515(第05期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN113382022A (zh) | 2021-09-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8358783B2 (en) | Secure wiegand communications | |
CN110896401A (zh) | 基于二维码的隔离网间单向数据流传输系统及方法 | |
WO1999029066A1 (en) | Method and apparatus for isolating an encrypted computer system upon detection of viruses and similar data | |
CA2690755A1 (en) | System and method of per-packet keying | |
CN111435913A (zh) | 一种物联网终端的身份认证方法、装置和存储介质 | |
CN108462695B (zh) | 安全传输数据的方法、装置及系统 | |
CN104168109A (zh) | 一种基于aes加密的遥控器协议实现方法及装置 | |
US8010787B2 (en) | Communication device, communication log transmitting method suitable for communication device, and communication system | |
US20070076882A1 (en) | Network component for a communication network, communication network, and method of providing a data connection | |
CN112367165A (zh) | 串口通信方法、装置、电子设备和计算机可读介质 | |
CN113382022B (zh) | 一种串口数据处理方法、电子设备及可读存储介质 | |
CN111586680A (zh) | 电网端到端通信加密系统、方法、通信设备和存储介质 | |
CN113986470B (zh) | 一种用户无感知的虚拟机批量远程证明方法 | |
CN102055582A (zh) | 用于现场设备的数据处理设备 | |
CN109086588B (zh) | 一种认证方法及认证设备 | |
CN104821879B (zh) | 一种电力系统数据调动中的加密方法 | |
CN110278077B (zh) | 一种用于获取电能表数据信息的方法、装置、设备及存储介质 | |
JP7355913B1 (ja) | 電力装置の運用保守データの伝送管理方法及びシステム | |
US8862866B2 (en) | Method and apparatus for providing an adaptable security level in an electronic communication | |
CN115001863B (zh) | 网络安全漏洞检测方法、装置、介质和电子设备 | |
CN110351086A (zh) | 一种机器人群组内加密信息处理与传输方法和系统 | |
CN109889372A (zh) | 获取配置信息的方法、装置、设备及存储介质 | |
CN215340907U (zh) | 一种多功能笔记本扩展坞 | |
CN115297181B (zh) | 韦根信号的处理设备及门禁权限验证系统 | |
CN104980410A (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 | ||
TR01 | Transfer of patent right |
Effective date of registration: 20221228 Address after: Building 6 #, Guowei Industrial Park, No. 669, Huangtang East Street, Airport Economic Zone, Nanchang City, Jiangxi Province, 330000 Patentee after: Nanchang Innotec Technology Co.,Ltd. Address before: 330000 399, ru le Hu Street, Nanchang Airport Economic Zone, Jiangxi. Patentee before: JIANGXI JIAJIE XINYUAN SCIENCE AND TECHNOLOGY Co.,Ltd. |
|
TR01 | Transfer of patent right |